在开发过程中,遇到一个鬼畜的问题,在DO的某个成员上添加@Deprecated注解之后,通过ProtoStuff反序列化得到的DO中,这个成员一直为null:花了不少时间才定位这个问题,特此记录一下 原文 ProtoStuff无法反序列化Deprecated注解成员问题记录 I. 全程实录 1. 环境相关 原项目中使用protostuff作为POJO序列化工具,对应的版本为 <dependency> <groupId>io.protostuff</groupId> &l…
它的作用是对不应该再使用的方法添加注解,当编程人员使用这些方法时,将会在编译时显示提示信息,它与javadoc里的@deprecated标记有相同的功能,准确的说,它还不如javadoc @deprecated,因为它不支持参数,使用@Deprecated的示例代码示例如下: /** * 测试Deprecated注解 * @author Administrator */ public class DeprecatedDemoTest { public static void main(Strin…
@Deprecated注解功能 标记不建议使用的方法,但是仍然可以用 当方法有更好的方法替换时,但是此方法还有使用时可以使用该注解…
写在前面 本文不涉及过多的Spring aop基本概念以及基本用法介绍,以实际场景使用为主. 场景 我们通常有这样一个需求:打印后台接口请求的具体参数,打印接口请求的最终响应结果,以及记录哪个用户在什么时间点,访问了哪些接口,接口响应耗时多长时间等等.这样做的目的是为了记录用户的访问行为,同时便于跟踪接口调用情况,以便于出现问题时能够快速定位问题所在. 最简单的做法是这样的: 1    @GetMapping(value = "/info")2    public BaseResult…
protostuff是由谷歌开发的一个非常优秀的序列化反序列化工具 maven导入包: <dependency> <groupId>io.protostuff</groupId> <artifactId>protostuff-runtime</artifactId> <version>1.6.0</version> </dependency> <dependency> <groupId>…
1. pom添加依赖包 <!--添加aop依赖--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId></dependency> 2.配置文件application.yml添加 spring: aop: auto: true 3 创建实体类 package com.…
@Autowired 自动匹配,按类型 @qualifiter("beanname") 当有多个bean匹配时,可指定bean名称 @Resource byname优先匹配,然后bytype @Component bean的通用形式 @Controller @service 业务层 @ Repository dao层 @Configuration把一个类作为一个IoC容器,它的某个方法头上如果注册了@Bean,就会作为这个Spring容器中的Bean.@Scope注解 作用域@Lazy…
文档说@WebServlet的配置属性都是可选的,不是必需的. 经实践,将一个Servlet配置成load-on-startup的Servlet时,若只添加loadOnStartup属性,该Servlet不生效:在web.xml中配置,只添加loadOnStartup属性会生效. 继续试验,发现加上urlPatterns属性的Servlet才会生效.目前看来用@WebServlet配置Servlet必需添加urlPatterns属性. 不知是不是环境等的原因,记录留解.…
1 :在form表单提交到controller层时 利用hbim的封装的访问数据库 form表单中属性要加上method方法 不然不成功. 2 :在运行eclipse时 有时粘贴个数据或者删除个字段老是卡一会,找到解决办法了 就是在elicpse的目录下有个elicpse.ini文件 如图: 把最后的两项给修改了 40--256   512---1024 ,若重启Eclipse 出错, 那就是这两个参数改的太大了  可以单独修改 3: 在js中 若两个日期格式相同的话,可以直接比较的.js支持这…
有些时候,我想要把每个运行过的方法接收到的参数.返回值和执行时间等信息记录(通过slf4j 和 log4j)下来.在AspectJ.jcabi-aspects和Java注解的帮助下我实现了这个想法. public class Foo { @Loggable public int power(int x, int p) { return Math.pow(x, p); } } 在log4j中可以看到以下输出: [INFO] com.example.Foo #power(2, 10): 1024 i…