好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

关于Spring项目对JDBC的支持与基本使用详解

什么是jdbc:

jdbc全称java database connectivity jdbc可以通过载入不同的数据库的[驱动程序]而与不同的数据库进行连接。

jdbc的优点:

使用的驱动不同,即可连接不同的数据库。 使用同一套操作来操作不同的数据库 如果每一个数据库java都制订一套连接方式,那么当不同的数据库更新的时候,java也需要更新自己的代码,而使用jdbc,使用同一套代码来操作,使用不同的驱动程序(驱动程序由数据库厂商提供)来连接,这使得可以连接不同的数据库。

spring对数据访问提供的支持

提供于平台无关的的持久化异常体系 提供模板简化数据持久化开发

提供于平台无关的的持久化异常体系

spring对jdbc的sqlexception进行封装,你不需要做什么;只需要将springjdbc的jar包导入即可,这样你就可以在spring所支持的数据访问模板中享受到这些异常^~~^

?

1

2

3

4

5

<dependency>

  <groupid>org.springframework</groupid>

  <artifactid>spring-jdbc</artifactid>

  <version> 4.1 . 1 .release</version>

</dependency>

提供模板简化数据持久化开发

针对不同的持久化平台,spring提供了多个可选则使用的模板,常用的模板类如下

 

模板类 用途
jdbc.core.jdbctemplate jdbc的链接
orm.jdo.jdotemplate java数据对象实现
orm.jpa.jpatemplate java持久化api的实体管理器
orm.ibatis.sqlmapclienttemplate ibatis sqlmap客户端
orm.hibernate3.hibernatetemplate hibernate3.x以上的session

 

装配数据源

无论你使用哪一种模板类,你都需要配置一个数据源的引用,spring提供了在spring上下文中配置数据源bean的多种方式

通过jdbc驱动程序定义的数据源 通过jndi查找数据源 连接池的数据源

具体详细的数据源装配,我会另开一篇进行解析介绍,在本篇案例中使用的是阿里巴巴的druid连接池,使用过程如下

加载依赖

?

1

2

3

4

5

6

<!-- https: //mvnrepository测试数据/artifact/com.alibaba/druid -->

<dependency>

  <groupid>com.alibaba</groupid>

  <artifactid>druid</artifactid>

  <version> 1.1 . 12 </version>

</dependency>

配置数据源

?

1

2

3

4

5

6

7

8

9

10

@bean

public druiddatasource datasource() {

  druiddatasource ds = new druiddatasource();

  ds.setdriverclassname(environment.getproperty( "jdbc.driver" ));

  ds.seturl(environment.getproperty( "jdbc.url" ));

  ds.setusername(environment.getproperty( "jdbc.username" ));

  ds.setpassword(environment.getproperty( "jdbc.password" ));

  ds.setinitialsize( 5 );

  return ds;

}

配置jdbc模板类

?

1

2

3

4

@bean

public jdbctemplate jdbctemplate(datasource datasource) {

  return new jdbctemplate(datasource);

}

dao层相关代码

?

1

2

3

4

5

6

7

8

@autowired

private jdbcoperations jdbcoperations;

 

@override

public user getuser(string username) {

  list<user> query = jdbcoperations.query(select_user_by_id, new userrowmapper(), username);

  return query.get( 0 );

}

本章完整代码地址: 完整项目下载地址点击此处

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。

原文链接:https://HdhCmsTestcnblogs测试数据/jimisun/p/9908082.html

查看更多关于关于Spring项目对JDBC的支持与基本使用详解的详细内容...

  阅读:8次