JDBCTemplate-执行DML语句
需求:
定义成员变量
//1、获取JDBCTemplate对象 private JdbcTemplate template = new JdbcTemplate(JDBCUtils.getDataSource());
1.修改1号数据的salary为10000;
/** * 1.修改1号数据的salary为10000; */ @Test public void test1(){ //2、定义sql String sql = "update emp set salary = 10000 where id = 1001"; //3、执行sql int count = template.update(sql); System.out.println(count); }
2.添加一条记录
/** * 2.添加一条记录 */ @Test public void test2(){ String sql = "insert into emp (id,ename,dept_id) values (?,?,?);"; int count = template.update(sql,1015,"郭靖",10); System.out.println(count); }
3.删除刚才添加的记录
/** * 3.删除刚才添加的记录 */ @Test public void test3(){ String sql = "delete from emp where id = ?"; int count = template.update(sql, 1015); System.out.println(count); }
4.查询id为1的记录,将其封装为Map集合
/** * 4.查询id为1的记录,将其封装为Map集合 * 注意:这个方法查询的结果集长度只能是1 */ @Test public void test4(){ String sql = "select * from emp where id = ?"; Map<String, Object> map = template.queryForMap(sql, 1001); System.out.println(map); }
5.查询所有记录,将其封装为List
/** * 5.查询所有记录,将其封装为List */ @Test public void test5(){ String sql = "select * from emp"; List<Map<String, Object>> list = template.queryForList(sql); for (Map<String, Object> map : list) { System.out.println(map); } }
6.查询所有记录,将其封装为Emp对象的List集合
/** * 6.查询所有记录,将其封装为Emp对象的List集合 */ @Test public void test6(){ String sql = "select * from emp"; List<Emp> list = template.query(sql, new RowMapper<Emp>() { @Override public Emp mapRow(ResultSet rs, int rowNum) throws SQLException { int id = rs.getInt("id"); String ename = rs.getString("ename"); int job_id = rs.getInt("job_id"); int mgr = rs.getInt("mgr"); Date joindate = rs.getDate("joindate"); double salary = rs.getDouble("salary"); double bonus = rs.getDouble("bonus"); int dept_id = rs.getInt("dept_id"); Emp emp = new Emp(id, ename, job_id, mgr, joindate, salary, bonus, dept_id); return emp; } }); for (Emp emp : list) { System.out.println(emp); } }
@Test public void test6_2(){ String sql = "select * from emp"; List<Emp> list = template.query(sql, new BeanPropertyRowMapper<Emp>(Emp.class)); for (Emp emp : list) { System.out.println(emp); } }
7.查询总的记录数
/** * 7.查询总的记录数 */ @Test public void test7(){ String sql = "select count(*) from emp"; Long total = template.queryForObject(sql, Long.class); System.out.println(total); }
标签:语句,String,rs,DML,emp,template,sql,DQL,id From: https://www.cnblogs.com/qihaokuan/p/16818013.html