Spring内置模板 JDBCTemplate

JdbcTemplate是Spring框架提供的一个对象,是对原始jdbc API的简单封装。

spring框架为我们提供了很多操作模板类
JDBC      org.springframework.jdbc.core.JdbcTemplate 
Hibernate org.springframework.orm.hibernate3.HibernateTemplate
IBatis(Mybatis)  org.springframework.orm.IBatis.SqlMapClientTemplate
JPA                      org.springframework.orm.JpaTemplate

导包:
1.spring-jdbc-4.2.4.RELEASE.jar
2.spring-orm-4.2.4.RELEASE.jar(orm依赖jar)
3.spring-tx-4.2.4.RELEASE.jar(事务依赖jar)
还需要导入spring-core-4.2.4.RELEASE.jar(不导入会报错)

数据源是什么?

	数据源,顾名思义,数据的来源。在数据源中存储了所有建立数据库连接的信息。
作用就是你可以操作数据库,数据源里面存放了你要连接哪个库以及数据库的账号和密码。

就是通过数据库的用户名、密码等信息建立的数据库连接,来构建数据库连接池。
普通的连接数据库是建立一个连接,执行完sql之后,就会关闭,再次连接还需要重复上述步骤。
而数据源连接池会根据你的参数建立多个数据库连接并缓存,你每次连接数据库的时候就可以从连接池中获取一个连接,
去执行sql,用完会放入连接池。这样,就避免了连接数据库的开销,也减少了对数据库的压力。

代码:(jdbcTemplate简单使用)

//定义数据源
DriverManagerDataSource ds = new DriverManagerDataSource();
ds.setDriverClassName("com.mysql.jdbc.Driver");
ds.setUrl("jdbc:mysql://localhost:8082/spring_jdbcTemplate");
ds.setUsername("root");
ds.setPassword("root");
//获取jdbcTemplate
JdbcTemplate jt = new JdbcTemplate();
jt.setDataSource(ds);
//执行sql
jt.execute("insert into user(name,password) values("libai","123"));

Spring配置方式(使用JdbcTemplate)

<bean name = "jdbcTemplate" class = 'org.springfranework.jdbc.core.JdbcTemplate">
		<property name = "datasource" ref="datasource" />
</bean>

1.配置Spring内置数据源

<bean name ="datasource" class = "org.springframework.jdbc.datasource.DriverManagerDataSource" >
		<property name ="driverClassName" value = "com.mysql.jdbc.Driver"/>
		<property name ="url" value = "jdbc:mysql://localhost:8082/spring_jdbcTemplate"/>
		<property name ="username" value = "root"/>
		<property name ="password" value = "root"/>
</bean>

其他数据源的配置
2.dbcp:(需要导入的依赖jar:commons-dbcp-1.4.jar ,commons-pool-1.6.jar)
(只需要更换class)

	<bean name ="datasource" class = "org.apache.commons.dbcp.BasicDataSource" >
			<property name ="driverClassName" value = "com.mysql.jdbc.Driver"/>
			<property name ="url" value = "jdbc:mysql://localhost:8082/spring_jdbcTemplate"/>
			<property name ="username" value = "root"/>
			<property name ="password" value = "root"/>
	</bean>

3.c3p0:(需要导入的依赖jar:c3p0-0.9.2.1.jar ,mchange-commons-java-0.2.3.4.jar)

	<bean name ="datasource" class = "com.mchange.v2.c3p0.ComoPooledDataSource" >
			<property name ="driverClass" value = "com.mysql.jdbc.Driver"/>
			<property name ="jdbcUrl" value = "jdbc:mysql://localhost:8082/spring_jdbcTemplate"/>
			<property name ="user" value = "root"/>
			<property name ="password" value = "root"/>
	</bean>

JdbcTemplate 的 CRUD操作

	//保存
	jd.update("insert into user(name,password) values(?,?)","酷哥",123);
	//更新
	jd.update("update user set name = ?,password = ?  where id = ?","gou哥",666,1);
	//删除
	jd.update("delete from user where id = ?" ,1);
	//查询所有
	List<User> users = jt.query("select * from user where name = ? " new BeanPropertyRowMapper<User>(User.calss),“狗哥”);
	//查询一个
	List<User> users	= jt.query("select * from user where id = ?" new BeanPropertyRowMapper<User>(User.calss),1);
	System.out.println(user.isEmpty() ? "没有结果" : users.get(0));
	//聚合函数
	Integer c1 = jt.queryForObject("select count(*) from user where id > ?",Integer.class,1);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值