如何进阶高级Java工程师?常见Spring注解有哪些?作为老牌编程语言,Java拥有广阔的应用市场和人才需求,从业人员薪资更是处于业内较高水平。不过当前企业对Java人才要求不断增高,Spring作为Java开发三大框架之一可谓是必备知识,今天千锋就给大家分享一下一些常见的Spring注解。


如何进阶高级Java工程师 常见Spring注解有哪些_第1张图片



1、@Controller。标识一个该类是Spring MVC controller处理器,用来创建处理http请求的对象。

2、@RestController。Spring4之后加入的注解,原来在@Controller中返回json需要@ResponseBody来配合,如果直接用@RestController替代@Controller就不需要再配置@ResponseBody,默认返回json格式。

3、@Service。用于标注业务层组件,说白了就是加入你有一个用注解的方式把这个类注入到spring配置中。

4、@Autowired。用来装配bean,都可以写在字段上,或者方法上。默认情况下必须要求依赖对象必须存在,如果要允许null值,可以设置它的required属性为false,例如:@Autowired(required=false)。

5、@RequestMapping。类定义处: 提供初步的请求映射信息,相对于WEB应用的根目录;方法处: 提供进一步的细分映射信息,相对于类定义处的URL。

6、@RequestParam。用于将请求参数区数据映射到功能处理方法的参数上。

7、@ModelAttribute。使用地方有两种:1)标记在方法上。会在每一个@RequestMapping标注的方法前执行,如果有返回值,则自动将该返回值加入到ModelMap中;2)标记在方法的参数上。会将客户端传递过来的参数按名称注入到指定对象中,并且会将这个对象自动加入ModelMap中,便于View层使用。

8、@Cacheable。用来标记缓存查询,可用用于方法或者类中,当标记在一个方法上时表示该方法是支持缓存的,当标记在一个类上时则表示该类所有的方法都是支持缓存的。

9、@CacheEvict。用来标记要清空缓存的方法,当这个方法被调用后,即会清空缓存。@CacheEvict(value=”UserCache”)

10、@Resource。作用相当于@Autowired,默认按byName自动注入。@Resource有两个属性是比较重要的,分是name和type,Spring将@Resource注解的name属性解析为bean的名字,而type属性则解析为bean的类型。

11、@PostConstruct。用来标记是在项目启动的时候执行这个方法。用来修饰一个非静态的void()方法。也就是spring容器启动时就执行,多用于一些全局配置、数据字典之类的加载。

以上就是常用的Spring注解,新手小白想要学好Spring进阶高级Java工程师,首先要理解IoC和AOP,这是基础;然后要学习SpringMVC,而快速掌握知识的前提是你具备好的Java基础。