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

什么是JDBC:

JDBC全称Java Database Connectivity

JDBC可以通过载入不同的数据库的“驱动程序”而与不同的数据库进行连接。

JDBC的优点:

使用的驱动不同,即可连接不同的数据库。

使用同一套操作来操作不同的数据库

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

Spring对数据访问提供的支持

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

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

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

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

org.springframework

spring-jdbc

4.1.1.RELEASE

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

针对不同的持久化平台,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连接池,使用过程如下

加载依赖

com.alibaba

druid

1.1.12

配置数据源

@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模板类

@Bean

public JdbcTemplate jdbcTemplate(DataSource dataSource) {

return new JdbcTemplate(dataSource);

}

Dao层相关代码

@Autowired

private JdbcOperations jdbcOperations;

@Override

public User getUser(String username) {

List query = jdbcOperations.query(SELECT_USER_BY_ID, new UserRowMapper(), username);

return query.get(0);

}

总结

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值