2019独角兽企业重金招聘Python工程师标准>>>

1. Spring4.3中引进了{@GetMapping、@PostMapping、@PutMapping、@DeleteMapping、@PatchMapping},来帮助简化常用的HTTP方法的映射,并更好地表达被注解方法的语义。

以@GetMapping为例,Spring官方文档说:
@GetMapping是一个组合注解,是@RequestMapping(method = RequestMethod.GET)的缩写。该注解将HTTP Get 映射到 特定的处理方法上。

2. @Resource 和@Autowired 的区别对比

@Resource 和@Autowired 都是做bean 的注入时使用,其实@Resource 并不是Spring 的注解,它的包是javax.annotation.Recource,需要导入,但是Spring 支持该注解的注入。

2.1 共同点

两者都可以写在字段和setter 方法上。两者如果都写在字段上,那么就不需要再写setter 方法。

2.2 不同点

(1) @Autowired

@Autowired 为Spring 提供的注解,需要导入包org.springframework.beans.factory.annotation.Autowired;只按照byType 注入。

public class TestServiceImpl {// 下面两种@Autowired只要使用一种即可@Autowiredprivate UserDao userDao; // 用于字段上@Autowiredpublic void setUserDao(UserDao userDao) { // 用于属性的方法上this.userDao = userDao;}
}

@Autowired 注解是按照类型(byType)装配依赖对象,默认情况下它要求依赖对象必须存在,如果允许null 值,可以设置它的required属性为false.

如果我们想使用按照名称(byName) 来装配,可以结合@Qualifier 注解一起使用。如下:

public class TestServiceImpl{@Autowired@Qualifier("userDao)private UserDao userDao;}

(2)@Resource

@Resource默认按照ByName自动注入,由J2EE提供,需要导入包javax.annotation.Resource。@Resource有两个重要的属性:name和type,而Spring将@Resource注解的name属性解析为bean的名字,而type属性则解析为bean的类型。所以,如果使用name属性,则使用byName的自动注入策略,而使用type属性时则使用byType自动注入策略。如果既不制定name也不制定type属性,这时将通过反射机制使用byName自动注入策略

3. 项目中用到得注解

(1)、@CrossOrigin (2)、@RestController (3)、@Autowired  (4)、@RequestMapping  (5)、@FeignClient (6)、@Configuration

(7)、@EnableCaching (8)、@EnableFeignClients  (9)、@EnableEurekaClient  (10)、@SpringBootApplication (11)、@Override

(12) @Aspect   (13)、@Component  (14)、 @Pointcut (15)、@Before  (16)、@AfterReturning  (17)、@RequestParam  (18)、@RequestBody

(19)、@EnableDiscoverClient  (20)、@ComponentScan 、 (21)、@MapperScan (22)、@Service (23)、@Scheduled (25)、@Value

(26)、Import  (27)、@Bean  (28)、@DependsOn  (29)、@ConditionalOnMissingBean (30)、@ServerEndpoint (31)、@OnOpen

(32)、Onclose  (33)、OnMessage  (34)、OnError  (35)、@CrossOrigin

4、@component (把普通pojo实例化到spring容器中,相当于配置文件中的 
<bean id="" class=""/>)

泛指各种组件,就是说当我们的类不属于各种归类的时候(不属于@Controller、@Services等的时候),我们就可以使用@Component来标注这个类。
案例: 
<context:component-scan base-package=”com.*”> 
上面的这个例子是引入Component组件的例子,其中base-package表示为需要扫描的所有子包。 
共同点:被@controller 、@service、@repository 、@component 注解的类,都会把这些类纳入进spring容器中进行管理

转载于:https://my.oschina.net/kuchawyz/blog/1816777

Spring 下注解说明相关推荐

  1. Spring系列之Spring常用注解总结

    参看博客:https://www.cnblogs.com/xiaoxi/p/5935009.html 传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺 ...

  2. Spring使用注解配置依赖注入

    大部分情况下,使用Spring配置依赖注入时,都是使用注解来进行配置,因为注解比xml要方便和简单.不过类似于数据源对象这种配置信息容易变更的对象除外,这种对象使用xml文件来进行配置会更适合,方便于 ...

  3. Spring 使用注解方式进行事务管理

    2019独角兽企业重金招聘Python工程师标准>>> 大家在使用spring的注解式事务管理时,对事务的传播行为和隔离级别可能有点不知所措,下边就详细的介绍下以备方便查阅. 事物注 ...

  4. Spring 使用注解方式进行事物管理

    Spring 使用注解方式进行事物管理 大家在使用spring的注解式事务管理时,对事务的传播行为和隔离级别可能有点不知所措,下边就详细的介绍下以备方便查阅. 事物注解方式: @Transaction ...

  5. Spring常用注解总结

    传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺点: 1.如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大:如果按需求分开.xml文 ...

  6. java注解式开发_JAVA语言之Spring MVC注解式开发使用详解[Java代码]

    本文主要向大家介绍了JAVA语言的Spring MVC注解式开发使用详解,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. MVC注解式开发即处理器基于注解的类开发, 对于每一个定义的处 ...

  7. Spring Boot 注解大全,一键收藏了!

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达今日推荐:2020年7月程序员工资统计,平均14357元,又跌了,扎心个人原创100W+访问量博客:点击前往,查看更多 Sp ...

  8. spring autowired idea都匹配上了_你清楚这几个Spring常用注解吗?

    作者:平凡希http://cnblogs.com/xiaoxi/p/5935009.html 传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺点: 如 ...

  9. spring mvc(注解)上传文件的简单例子

    spring mvc(注解)上传文件的简单例子,这有几个需要注意的地方 1.form的enctype="multipart/form-data" 这个是上传文件必须的 2.appl ...

最新文章

  1. 任正非在“GTS云与终端云合作与融合进展”汇报会上的讲话
  2. HDU 1004 Let the Balloon Rise
  3. 怎样去除excel表中的虚线_Excel教程:F1键强大的功能,你会用吗?
  4. flink入门实战总结
  5. 【mysql学习】疑问点记录
  6. 三、单一职责原则、开放-封闭原则、依赖倒转原则
  7. 例5-17和例5-18
  8. [设计模式] - 策略模式(Java篇)
  9. Windows下MinGW编译vim7.4
  10. opencv在同一窗口打印多张图片
  11. 满满干货!mysql定时任务每天固定时间执行
  12. linux下安装erlang,以及cowboy的初步接触的一些环境安装
  13. 随手记_vscode怎样加命令行参数进行调试(python)
  14. 《丁丁历险记系列之委托》改编自《.NET委托:一个C#睡前故事》
  15. mysql proxy maxscale_MaxScale: 一个用于解决MySQL扩展性的新工具(译)
  16. 13家著名IT公司logo变迁史
  17. 周记——20151221
  18. 华为服务器系统日志,服务器操作系统日志
  19. 万维钢:但是人终将老去
  20. 成都拓嘉启远:造成拼多多异常订单的五种常见原因

热门文章

  1. 【入门篇】黑盒测试基础
  2. ajax常见写法,jquery ajax较常见的写法
  3. java字符相似_JAVA 获取两个字符串的相似度
  4. 提醒 顶部弹窗_电脑桌面怎么增加文字提醒?
  5. 神经网络中的前向和后向算法
  6. 多功能计算机如何关闭,多功能的计算机显示终端
  7. Pytest 自动化测试框架
  8. 武汉音乐学院计算机音乐,武汉音乐学院
  9. php怎么写显示商品图片,php – Woocommerce显示带有产品图片的产品
  10. python django博客源码_利用Django实现一个博客(附全部源码)