Spring框架中提供了一个JdbcTemplate工具类,它对JDBC API进行了很好的封装,这个类其实跟我们自己对JDBC进行封装一样,但是代码更加健壮,功能更加强大,且没有太大的性能区别。要想使用这个工具类,需要从spring开发包中导入spring.jar和commons-logging.ar包以及在代码中获取数据源。自己写了个简单的JdbcTemplate入门Demo
获取数据源代码+简单的CURE示例- package com.springmvc.dao;
- import java.util.List;
- import javax.sql.DataSource;
- import org.springframework.jdbc.core.BeanPropertyRowMapper;
- import org.springframework.jdbc.core.JdbcTemplate;
- import org.springframework.stereotype.Repository;
- import com.springmvc.pojo.Test;
- @Repository
- public class TestDao {
-
- //封装数据源和JdbcTemplate
- private DataSource dataSource;
- private JdbcTemplate jdbcTemplate;
-
- public DataSource getDataSource() {
- return dataSource;
- }
- public void setDataSource(DataSource dataSource) {
- this.dataSource = dataSource;
- this.jdbcTemplate=new JdbcTemplate(dataSource);
- }
- public JdbcTemplate getJdbcTemplate() {
- return jdbcTemplate;
- }
- public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
- this.jdbcTemplate = jdbcTemplate;
- }
-
- //增
- public void addTest(Test t){
- String sql="insert into test(userName,passWord,addTime) values (?,?,?)";
- Object[] params=new Object[]{
- t.getUserName(),
- t.getPassWord(),
- t.getAddTime()
- };
- jdbcTemplate.update(sql,params);
- }
-
- //删
- public void deleteTest(int id){
- String sql="delete from test where id=?";
- jdbcTemplate.update(sql,id);
- }
-
- //改
- public void updateTest(Test t){
- String sql="update test set userName=?,passWord=? where id=?";
- Object[] params=new Object[]{
- t.getUserName(),
- t.getPassWord(),
- t.getId()
- };
- jdbcTemplate.update(sql,params);
- }
-
- //查
- public Test queryTest(int id){
- String sql="select * from test where id="+id;
- Test test=jdbcTemplate.queryForObject(sql,Test.class);
- return test;
- }
-
- //多条查询
- public List queryAll(){
- String sql="select id,userName,passWord,date_format(addTime,'%Y年%m月%d日 %H点%i分%s秒') as addTime from test";
- List<Test> list=jdbcTemplate.query(sql, BeanPropertyRowMapper.newInstance(Test.class));
- return list;
- }
-
- }
复制代码 |