spring之java配置(springboot推荐的配置方式)
java配置概述
java配置各个注解的作用
/*** 该类是一个配置类,它的作用和bean.xml是一样的* spring中的新注解* Configuration* 作用:指定当前类是一个配置类* 细节:当配置类作为AnnotationConfigApplicationContext对象创建的参数时,该注解可以不写。* ComponentScan* 作用:用于通过注解指定spring在创建容器时要扫描的包* 属性:* value:它和basePackages的作用是一样的,都是用于指定创建容器时要扫描的包。* 我们使用此注解就等同于在xml中配置了:* <context:component-scan base-package="com.itheima"></context:component-scan>* Bean* 作用:用于把当前方法的返回值作为bean对象存入spring的ioc容器中* 属性:* name:用于指定bean的id。当不写时,默认值是当前方法的名称* 细节:* 当我们使用注解配置方法时,如果方法有参数,spring框架会去容器中查找有没有可用的bean对象。* 查找的方式和Autowired注解的作用是一样的* Import* 作用:用于导入其他的配置类* 属性:* value:用于指定其他配置类的字节码。* 当我们使用Import的注解之后,有Import注解的类就父配置类,而导入的都是子配置类* PropertySource* 作用:用于指定properties文件的位置* 属性:* value:指定文件的名称和路径。* 关键字:classpath,表示类路径下*/
实例
使用java配置配置druid数据库连接池
引入依赖:
<dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.1.2</version></dependency>
1、创建Config(
2、SpringConfig
@import引入多个class : @Import({JdbcConfig.class , DruidConfig.class})
@Configuration
@ComponentScan("com.lzhhuo")//自动扫描组件
@Import(JdbcConfig.class)
@PropertySource("classpath:JdbcConfig.properties")
public class SpringConfig {
}
3、JdbcConfig
public class JdbcConfig {@Value("${jdbc.driver}")private String driver;@Value("${jdbc.url}")private String url;@Value("${jdbc.username}")private String username;@Value("${jdbc.password}")private String password;@Bean(name="runner")@Scope("prototype")//使用多例,spring使用单例是为了节省启动时间和垃圾清理时间,保证线程安全的时候用多例//如果bean中有成员变量,单例的话就会出现并发问题,这时可以采取多例避免数据错误。//@Qualifier依赖注入public DataSourceTransactionManager masterTransactionManager(@Qualifier("ds") DataSource ds) {return new DataSourceTransactionManager(ds);}/*** 创建数据源对象* @return*/@Bean(name="ds")public DataSource createDataSource(){try {DruidDataSource ds = new DruidDataSource();ds.setDriverClassName(driver);ds.setUrl(url);ds.setUsername(username);ds.setPassword(password);return ds;}catch (Exception e){throw new RuntimeException(e);}}}
4、JdbcConfig.properties
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/login_register?serverTimezone=GMT%2B8
jdbc.username=root
jdbc.password=123456
spring之java配置(springboot推荐的配置方式)相关推荐
- 文明游戏5的计算机配置,文明6配置要求高吗 文明6最低电脑配置与推荐电脑配置...
<文明6>是一款即将发布的战略游戏作品,预计将于10月上市,目前该游戏官方公布了<文明6>最低电脑配置与推荐电脑配置,如果想要画面流畅玩这款游戏的话,那么您的电脑硬件必须要满足 ...
- spring boot学习(2) SpringBoot 项目属性配置
第一节:项目内置属性 application.properties配置整个项目的,相当于以前的web.xml: 注意到上一节的访问HelloWorld时,项目路径也没有加:直接是http://loca ...
- SpringBoot笔记:SpringBoot启动参数配置
文章目录 目的 测试代码 配置文件配置 获取自定义参数 项目打包发布 修改启动配置 方式一:系统变量 方式二:命令行参数 springboot启动参数解释 目的 1.熟悉springboot多环境配置 ...
- springboot快速详细配置搭建
前言 本文章只局限于springBoot的快速配置搭建,原理部分请阅读本人的另一篇原理剖析的文章,同时本文章会有一部分配置未写入: 1 本文章只介绍本人认为代码量最少的配置 2 有部分配置比较多,以文 ...
- SpringBoot 2.0 编程方式配置,不使用默认配置方式
SpringBoot的一般配置是直接使用application.properties或者application.yml,因为SpringBoot会读取.perperties和yml文件来覆盖默认配置: ...
- SpringBoot内部配置:“application.properties配置”和”使用XML配置”,读取属性文件中的内容,日志配置,Profile配置(学习:SpringBoot实战)
1 SpringBoot内部配置 1.1.修改端口和应用上下文 server.port=9090 server.context-path=/helloboot Spring Boot也可以使用yml进 ...
- SpringBoot约定大于配置的特性解读 SpringBoot快速入门
SpringBoot约定大于配置 Spring官方网站本身使用Spring框架开发,随着功能以及业务逻辑的日益复杂,应用伴随着大量的XML配置文件以及复杂的Bean依赖关系.随着Spring 3.0的 ...
- 水冷计算机配置单,8500元i7-7700K配GTX1070超频水冷主机电脑配置清单推荐
今天小编就再把这套组合拿出来,对其中部分硬件进行加持,加入支持超频的Z270主板,提升其超频能力和稳定性,恳请各位超频爱好者批评指正,话不多说,先上配置图: 8500元i7-7700K配GTX1070 ...
- 【Java】 SpringBoot - 零基础搭建并使用
目录 一.快速入门 1.SpringBoot2.x依赖环境和版本新特性说明 2.快速创建SpringBoot2.x应用之手工创建web应用 3.快速创建SpringBoot2.x应用之工具类自动创建w ...
最新文章
- Tomcat内存溢出解决方法
- linux那个11命令是什么意思,11个有用的Linux命令
- 学习小米附加和大润发飞牛模式
- *44.程序的链接方式
- arm-linux内核编译过程小结
- 【控制】《复杂运动体系统的分布式协同控制与优化》-方浩老师-第7章-带有操作度及能量优化的分布式协同搬运控制
- i2c-toos 交互数据_什么是CD-i(交互式光盘)?
- 博为峰Java技术题 ——JavaSE Java 方法Ⅰ
- 【Opencv】之图片上叠加文字
- 关于网络编程中MTU、TCP、UDP优化配置的一些总结
- python3 rrdtool 使用
- 蓝屏:微软撤回 Windows 8.1 八月更新等4个补丁
- 折腾Java设计模式之访问者模式
- matlab plot颜色
- 九九乘法表之循环嵌套的奇妙
- qt.qpa.plugin: Could not find the Qt platform plugin “xcb“ in ““ 详细解决办法
- 离散求边缘密度_求一把能退烧的机械键盘?——机械键盘购买“指北”
- Asp 解析 XML并分页显示
- 由 12306.cn 谈谈高并发+高负载网站性能技术
- 微信公众号注册操作流程