2019年 01月 14日 - InterruptedException的处理

    InterruptedException的处理

    使用Thread.currentThread().interrupt();

    2018年 12月 30日 - maven构建跳过测试

    需求

    1. 测试类中存在未维护的测试类,无法通过测试
    2. 手动执行命令不想单独添加-Dmaven.test.skip=true或者skipTests

    2018年 12月 29日 - 使用maven插件enforcer进行重复依赖检查

    需求

    在引用多个项目或者开源工具类,一般都比较容易存在重复的jar依赖,但是不同版本之间可能存在不兼容的情况.人工排查起来稍微费力

    2018年 12月 25日 - java泛型的实例化与JSON转换

    需求

    做抽象封装时候定义了一个参数泛型如下:

    	public abstract class AbstractDemo<T extends Param> {
    
    	public void method(String param) {
    	
    	}
    

    其中paramjson字符串,想要反序列化为T的对象

    实现

    	public abstract class AbstractDemo<T extends Param> {
    
    	public void method(String param) {
    		ParameterizedType ptype = (ParameterizedType) this.getClass().getGenericSuperclass();
    		Type clazz = ptype.getActualTypeArguments()[0];
    		T selfParam = JSON.parseObject(param, clazz);
    	}
    

    JAVA泛型实例化代码

    	ParameterizedType ptype = (ParameterizedType) this.getClass().getGenericSuperclass();
    	Class clazz = (Class<T>) ptype.getActualTypeArguments()[0];
    	T o = (T) clazz.newInstance();//o 即为泛型实例化对象
    

    参考

    1. JAVA泛型实例化代码