镜子的Spring之旅之攻略数据库
镜子的Spring之旅之攻略数据库
镜子哥哥 发表于1年前
镜子的Spring之旅之攻略数据库
  • 发表于 1年前
  • 阅读 7
  • 收藏 0
  • 点赞 0
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

摘要: 《SPRING实战》第五章体会,后半章整合Hiberbate以及JPA内容没细看,还未学习Hibernate,之后补上,之前使用过的是mybaits

Part 1 零散的概念

DAO: 数据访问对象(data access object),提供数据访问和写入到数据库的一种方式,并通过接口发布功能,应用程序的其他部分就可以通过接口访问了。Spring提供DAO支持类,而将业务自己的DAO类作为它的子类。编写应用程序自己的DAO实现时,可继承DAO支持类,调用模板获取方法直接访问底层数据模板,也支持访问其与数据库通信的类

Spring提供很多数据访问异常(完善了JDBC简单的SQLException异常体制),且都继承自DataAccessException,非检查性异常,没有必要捕获。

数据访问模板化:Spring将数据访问过程中固定的和不可变的部分明确划分为两个不同的类,模板(template)和回调(callback)。针对不同的持久化平台,提供了多个模板。

Part2 配置数据源

使用JNDI数据源

<jee:jndi-lookup id = ”datasource”
jndi-name = ”/../..”
resource-name = ”true” />

jndi-name 指定JNDI中资源的名称, resourse-name应用程序应用在JAVA应用程序数据库中,值需为true,这样给定的jndi-name前会自动添加java:comp/env/前缀。

数据库连接池

Spring并没有提供其实现,可使用Jakarta Commons Database Connection Pooling(DBCP),最常用BasicDataSource,类似于Spring自带的DriverManagerDataScource:

<bean id = ”dataSource” class = ”org.apache.commons.dbcp.BasicDataSource”>
  <property name = ”driverClassName” value = ”org.jsqldb.jdbcDriver”>
  <property name = ”url” value = ”jdbc:hsqldb:hsql://localhost/../..”>
  <property name = ”username” value = ””>
  <property name = ”password” value = ””>
  ..
</bean> 

基于JDBC驱动的数据源 Spring中的最简单配置方式,两种,DriverManagerDataSource(每个连接请求都返回新建连接) 和 SingleConnectionDataSource(每个连接请求都返回同一个连接),没有可配置的池相关属性。 均位于org.springframework.jdbc.datasource包中。

<bean id = ”dataSource” 
class = ” org.springframework.jdbc.datasource.DriverManagerDataSource”>
  <property name = ”driverClassName” value = ”org.jsqldb.jdbcDriver”>
  <property name = ”url” value = ”jdbc:hsqldb:hsql://localhost/../..”>
  <property name = ”username” value = ””>
  <property name = ”password” value = ””>
</bean>

Part3 在Spring中使用JDBC

使用JDBC模板 Spring提供的3个模板JdbcTemplate,NamedParameterJdbcTemplate(已被合并到后者),SimpleJdbcTemplate。 配置SimpleJdbcTemplate:

<bean id = ”jdbcTemplate” 
  class =”org.springframework.jdbc.core.simple. SimpleJdbcTemplate”>
  <constructor-arg ref = ”datasource”>
</bean>

装配Dao

<bean id = “xDao” class = “…”>
 <property name = ”jdbcTemplate” ref = “jdbcTemplate”
</bean>

使用命名参数

使用JDBC DAO支持类

集成Hibernate或JPA

共有 人打赏支持
粉丝 1
博文 19
码字总数 14425
×
镜子哥哥
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: