Spring Ioc和DI注解
Spring配置数据源
Spring注解开发
Spring整合Junit
1.Spring配置数据源
1.1 数据源(连接池)的作用 (常见的数据源(连接池):DBCP、C3P0、BoneCP、Druid等)
• 数据源(连接池)是提高程序性能如出现的
• 事先实例化数据源,初始化部分连接资源
• 使用连接资源时从数据源中获取
• 使用完毕后将连接资源归还给数据源
1.1 数据源的开发步骤
① 导入数据源的坐标和数据库驱动坐标
② 创建C3P0连接池
数据源的手动创建
① 导入mysql数据库驱动坐标
② 创建C3P0连接池
③ 提取jdbc.properties配置文件
④ 读取jdbc.properties配置文件创建连接池
Spring配置数据源
可以将DataSource的创建权交由Spring容器去完成 (set注入完成)
- DataSource有无参构造方法,而Spring默认就是通过无参构造方法实例化对象的
DataSource要想使用需要通过set方法设置数据库连接信息,而Spring可以通过set方法进行字符串注入
4 抽取jdbc配置文件(最后的方法实现配置数据源)
applicationContext.xml加载jdbc.properties配置文件获得连接信息。
首先,需要引入context命名空间和约束路径:
命名空间:xmlns:context="http://www.springframework.org/schema/context"
约束路径:
<!-- 加载外部的properties文件-->
<context:property-placeholder location="classpath:jdbc.properties"/>
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass" value="${jdbc.driver}"></property>
<property name="jdbcUrl" value="${jdbc.url}"></property>
<property name="user" value="${jdbc.username}"></property>
<property name="password" value="${jdbc.password}"></property>
</bean>
知识要点
Spring容器加载properties文件
《======================================================================================================》
Spring注解开发
Spring原始注解
Spring原始注解主要是替代<bean>的配置
注意:
使用注解进行开发时,需要在applicationContext.xml中配置组件扫描,作用是指定哪个包及其子包下的Bean
需要进行扫描以便识别使用注解配置的类、字段和方法。
<!-- 配置组件扫描-->
<context:component-scan base-package="com.study" />
2 ,Spring新注解
使用上面的注解还不能全部替代xml配置文件,还需要使用注解替代的配置如下:
非自定义的Bean的配置:<bean>
加载properties文件的配置:<context:property-placeholder> ----------->@PropertySource("classpath:jdbc.properties") 加载外部所需要的 properties文件
组件扫描的配置:<context:component-scan> ---------->@ComponentScan("com.xxx")扫描所需要的包
引入其他文件:<import>
posted on 2022-03-13 21:12 Sunshine0104 阅读(115) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构