1.JdbcTemplate
1.1什么是JDBCtEMPLATE
(1)Spring框架对JDBC进行封装,使用JdbcTemplate方便实现对数据库操作
1.2准备工作
(1)引入相关jar包
druid.jar mysql-connector-java.jar spring-jdbc.jar
spring-tx.jar spring-orm.jar
(2)在spring配置文件配置数据库连接池
<!--数据库连接池-->
<bean id="dataSourece" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close">
<property name="url" value="jdbc:mysql://user_db" />
<property name="username" value="root" />
<property name="password" value="root" />
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
</bean>
(3)配置JdbcTemplate对象,注入DataSource
<!--JdbcTemplate对象-->
<bean id="JdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<!--注入DataSource-->
<property name="dataSource" ref="dataSourece"></property>
</bean>
(4)创建service类,创建dao类,在dao注入jdbcTemplate对象
-
xml:开启组件扫描
-
Service:注入dao
-
dao:注入jdbcTemplate
1.3数据库操作
1.3.1.添加
(1)对应数据库表创建实体类
(2)编写service和dao
- 在dao进行数据库添加操作
- 调用JdbcTemplate对象里面的update方法实现添加
public void add(Book book) {
String sql= "insert into t_book values(?,?,?)";
Object[] obj = {book.getUserId(),book.getUserName(),book.getUstatus()};
int update = jdbcTemplate.update(sql,obj);
System.out.println(update);
}
1.3.2.删除
同上,改sql
1.3.3.修改
同上,改sql
1.3.4.查询
String sql = "select count(*) from t_book";
Integer count = jdbcTemplate.queryForObject(sql,Integer.class);
1.3.5.查询对象
String sql = "select * from t_book where user_id=?";
Book book = jdbcTemplate.queryForObject(sql,new BeanPropertyRowMapper<Book>(Book.class),id);
return book
1.3.6.批量操作
jdcbTemplate.batchUpdate(String sql,List<Object[]> batchArgs);
总结
DataSource对象------->注入到JdbcTemplate------->Template.操作(update、queryForObject)