小编给大家分享一下Spring注解如何实现applicationContext.xml效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
在永顺等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都做网站、成都网站设计 网站设计制作按需开发网站,公司网站建设,企业网站建设,品牌网站建设,全网整合营销推广,成都外贸网站制作,永顺网站建设费用合理。
随着越来越多地使用Springboot敏捷开发,更多地使用注解配置Spring,而不是Spring的applicationContext.xml文件。
Configuration注解: Spring解析为配置类,相当于spring配置文件
Bean注解:容器注册Bean组件,默认id为方法名
@Configuration public class AppConfig { @Bean public MyService myService() { return new MyServiceImpl(); } }
等同于beans.xml文件
1)applicationContext.xml文件-包扫描
@ComponentScans(value = {@ComponentScan(value = "com.self",excludeFilters = { @Filter(type = FilterType.ANNOTATION,classes = {Controller.class}) }) }) @Configuration public class RootConfig { //测试Bean @Bean public Person person() { return new Person("张励",22,"工程师"); } }
2)导入properties文件
@PropertySource(value = {"classpath:person.properties"}) @Configuration public class MainConfigOfProperty { @Bean public Person person() { return new Person(); } }
赋值
public class Person { @Value("${person.name}")//配置文件属性 private String name; }
3)数据源
@EnableTransactionManagement//开启基于注解的事务管理功能 @ComponentScan("com.self.ds") @Configuration public class TxConfig { //数据源 @Bean public DataSource dataSource() throws Exception{ ComboPooledDataSource dataSource = new ComboPooledDataSource(); dataSource.setUser("root"); dataSource.setPassword("000111"); dataSource.setDriverClass("com.MySQL.jdbc.Driver"); dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/self"); return dataSource; } @Bean public JdbcTemplate jdbcTemplate() throws Exception{ JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource()); return jdbcTemplate; } //事务管理器 @Bean public PlatformTransactionManager transactionManager() throws Exception{ return new DataSourceTransactionManager(dataSource()); } }
单元测试
public class IOCTest { AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(MainConfig.class); @Test public void test02() { Object bean1 = applicationContext.getBean("person"); Object bean2 = applicationContext.getBean("person"); System.out.println( bean1 == bean2); } @Test public void test01() { Object bean = applicationContext.getBean("person01"); System.out.println("结果: " + bean); } @Test public void test() { String[] beanDefinitionNames = applicationContext.getBeanDefinitionNames(); for(String beanDef:beanDefinitionNames) { System.out.println("输出: " + beanDef); } } }
执行结果
以上是“Spring注解如何实现applicationContext.xml效果”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款