第9周LeetCode記錄
阿新 • • 發佈:2020-11-21
1.匯入jar包
2.建立JdbcTemplate物件,依賴於資料來源DataSource
JdbcTemplate jt = new JdbcTemplate(new ComboPooledDataSource()); //依賴於資料來源DataSource
3.呼叫JdbcTemplate方法來完成CRUD操作
update();
String sql = "update t_user set password = ? where id=?";
jt.update(sql,"111","1");
@Test public voidtest01(){ String sql = "insert into t_user values(null,?,?)"; int i = jt.update(sql, "校長", "123"); System.out.println(i); }
queryForMap();會把查詢出來的單個記錄封裝為map集合
@Test public void test03(){ String sql = "select * from t_user where id=?"; Map<String, Object> map = jt.queryForMap(sql, 1); System.out.println(map); }
queryForList();查詢所有記錄封裝到list集合中
@Test public void test02(){ String sql = "select * from t_user"; List<Map<String, Object>> maps = jt.queryForList(sql); for (Map<String, Object> map : maps) { System.out.println(map); } }
query(); 查詢出來的單個物件封裝為一個javabean
@Test public void test04(){ String sql ="SELECT * FROM t_user"; List<User> userList = jt.query(sql, new RowMapper<User>() { @Override public User mapRow(ResultSet rst, int i) throws SQLException { User u = new User(); int id = rst.getInt(1); String username = rst.getString(2); String password = rst.getString(3); u.setId(id); u.setUsername(username); u.setPassword(password); return u; } }); for (User user : userList) { System.out.println(user); } }
//使用RowMapper的實現類BeanPropertyRowMapper
//注意該方法中必須保證bean中各個屬性的資料名於資料庫中欄位名一致。資料型別也需要注意
@Test public void test05(){ String sql ="SELECT * FROM t_user"; List<User> userList = jt.query(sql,new BeanPropertyRowMapper<User>(User.class)); for (User user : userList) { System.out.println(user); } }
queryForObject(); 用於聚合函式的執行
@Test public void test06(){ String sql = "select count(id) from t_user"; Long aLong = jt.queryForObject(sql, Long.class); System.out.println(aLong); }
4. 不用close(),因為模板會自動處理