Spring-jdbc怎么用
时间: 2023-05-27 13:03:19 浏览: 82
Spring-jdbc是Spring框架提供的一种数据库访问方式,它基于JDBC API实现,但在使用上比JDBC更加简洁和易用。下面是Spring-jdbc的使用方法:
1. 配置数据源:在Spring的配置文件中配置一个数据源,可以使用Spring-jdbc内置的数据源或者自己实现数据源。
2. 编写DAO类:使用Spring-jdbc访问数据库需要编写DAO类。DAO类需要继承Spring提供的JdbcDaoSupport类,这样就能够获得一个JdbcTemplate对象,用于执行SQL语句。
3. 编写SQL语句:在DAO类中编写SQL语句,可以使用JdbcTemplate对象提供的方法执行SQL语句。
4. 对SQL语句的结果进行处理:对于查询语句,JdbcTemplate提供了可以返回结果集的方法,可用于遍历结果集、映射结果集到Java对象、统计结果集等操作。
下面是一个简单的使用Spring-jdbc访问MySQL数据库的示例:
首先在Spring的配置文件中配置MySQL数据源:
```
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/test"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</bean>
```
然后编写DAO类,此示例中使用JdbcTemplate对象执行SQL语句并返回结果:
```
public class UserDao extends JdbcDaoSupport {
public User getUserById(int id) {
String sql = "SELECT id,name,age FROM user WHERE id=?";
return getJdbcTemplate().queryForObject(sql, new Object[]{id}, new RowMapper<User>() {
@Override
public User mapRow(ResultSet rs, int rowNum) throws SQLException {
User user = new User();
user.setId(rs.getInt("id"));
user.setName(rs.getString("name"));
user.setAge(rs.getInt("age"));
return user;
}
});
}
}
```
最后在需要使用数据库的地方调用DAO类中的方法即可完成数据库操作。
```
UserDao userDao = new UserDao();
User user = userDao.getUserById(1);
System.out.println(user.getName());
```