博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring注解、
阅读量:6358 次
发布时间:2019-06-23

本文共 2516 字,大约阅读时间需要 8 分钟。

##  一、Spring 常用的注解         @Bean         @Import         @ImportResource         @Configuration         @ComponentScan         @Component         @Controller         @Service         @Repository      ----- @Bean            @Bean :使用此注解相当与在xml定义一个
标签(在方法上使用) 示例:
相当于这个 如果我们在需要在java中给这个@Bean添加一个名字, @Bean("sqlSessionFactory")//给它一个名字 public SqlSessionFactoryBean sqlSessionFactory() throws PropertyVetoException { SqlSessionFactoryBean sqlSessionFactory = new SqlSessionFactoryBean(); ClassPathResource resource = new ClassPathResource("mapper/PersonsMapper.xml"); sqlSessionFactory.setTypeAliasesPackage("com.wgc.persons.entity"); sqlSessionFactory.setMapperLocations(new Resource[]{resource}); sqlSessionFactory.setConfigLocation(new ClassPathResource("mybatis-config.xml")); sqlSessionFactory.setDataSource(this.dataSource()); return sqlSessionFactory; } --- - @Import @Import : 可以导入其他的类,为什么要导入呢? 在实际的开发中我们不可能写一个类,可以分出很多的类 如:xml标签中的
java的使用: @Import({xxx.class, yyy.class, sss.class}) --- - @ImportResource @ImportResource : 意思导入一个xml文件,这个的使用的xml文件与java style混合使用 如: @ImportResource("../spring-dao.xml") -- - @Configuration @Configuration : 意思是这个一配置文件 使用spring配置类上 @ComponentScan :告诉Spring在初始化是要扫描那个包 如:
这句 --- - @Component、@Controller、@Service、@Repository @Component :组件 @Controller :控制器 @Service :服务 @Repository :容器 其实四个注解是单独使用的话是没有太大的区别的, 如果,一定说区别的话就是,当他们碰到某个相关的注解时, 他们就有的一定的语义。 如: @Controller @ControllerAdvice 连个注解就产生了语义 如果在不知道不明确的情况下我们,无法选这四个注解其中的时, 那就先选@Component 因为这个注解没有语义 ## 二、在注解方式中要确定,Bean之间的关系,需要使用一下的注解 两注解都是一样的,但一个java内部,一个是spring的, 机制:按照类型匹配,在按照名字匹配,如果匹配不到会报错 @Autowired (spring注解) @Inject (java内部注解,这是标准) 机制:先按照名字匹配,在去找类型匹配,如果匹配不到报错 一般不建议使用@Resource,因为它太老了 @Resource (java内部注解) 上面三注解的意思都是一样的,都是注入值或其他 @Value 设置值可以使用SpEL表达式 例子: 如果我们只想要Clothes类中的某个类型名字 @Qualifier("cu") spring的 匹配类型,找不到就会报错 @Named("cu") java内部的 匹配类型,找不到就会报错 但是我们还有其他一样的,主要的名字我们有不想报错,就在类上加 @Primary (spirng)

 

转载于:https://www.cnblogs.com/YouAreABug/p/10122216.html

你可能感兴趣的文章
谷歌Pixel 3吸引三星用户, 但未动摇iPhone地位
查看>>
VUE中使用vuex,cookie,全局变量(少代码示例)
查看>>
grep -w 的解析_学习笔记
查看>>
TX Text Control文字处理教程(3)打印操作
查看>>
CENTOS 7 如何修改IP地址为静态!
查看>>
MyCat分片算法学习(纯转)
查看>>
IO Foundation 3 -文件解析器 FileParser
查看>>
mysqld_multi实现多主一从复制
查看>>
中介模式
查看>>
JS中将变量转为字符串
查看>>
servlet笔记
查看>>
JVM(五)垃圾回收器的前世今生
查看>>
Spring Boot 自动配置之@EnableAutoConfiguration
查看>>
web前端笔记
查看>>
finally知识讲解
查看>>
Matplotlib绘图与可视化
查看>>
openstack ocata版(脚本)控制节点安装
查看>>
【微信公众号开发】获取并保存access_token、jsapi_ticket票据(可用于微信分享、语音识别等等)...
查看>>
datatable 获取最大值
查看>>
sqlserver2012一直显示正在还原(Restoring)和从单用户转换成多用户模式(单用户连接中)...
查看>>