spring JDBC开发
JdbcTemplate 简介
为了使 JDBC 更加易于使用, Spring 在 JDBC API 上定义了一个抽象层, 以此建立一个 JDBC 存取框架.
JdbcTemplate的配置
<bean id="dataSource"
class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="${mysql_driver}"></property>
<property name="url" value="${mysql_url}"></property>
<property name="username" value="${mysql_username}"></property>
<property name="password" value="${mysql_userpassword}"></property>
</bean>
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"></property></bean>
UserDao的增删改查
package spring.jdbc;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;
@Repository
public class UserDao {
@Autowired
private JdbcTemplate jdbcTemplate;
public User queryByid(String userId) {
String sql = "select * from user_infor where user_id = ?";
return jdbcTemplate.query(sql, new Object[] {userId}, new BeanPropertyRowMapper<User>(User.class)).get(0);
}
public void insert(String userName,String userId) {
String sql = "insert into user_infor value(?,?)";
jdbcTemplate.update(sql,userName,userId);
}
public void deleteByName(String userName) {
String sql ="delete from user_infor where user_name = ?";
jdbcTemplate.update(sql);
}
public void deleteById(String userId) {
String sql ="delete from user_infor where user_id = ?";
jdbcTemplate.update(sql);
}
public void updateByID(String userId,String userName) {
String sql = "update user_infor set user_name = ? where use_id = ? ";
jdbcTemplate.update(sql,userName,userId);
}
}
使用@Autowried自动装配
依赖的jar和com.mysql.cj.jdbc.Driver
- com.mysql.cj.jdbc.Driver 在url后要加上?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.21</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>