时间:2021-07-01 10:21:17 帮助过:13人阅读
* Spring框架对JDBC的简单封装 提供了一个JDBCTemplate对象简化JDBC的开发
package cn.itcast.jdbctemplate;
import cn.itcast.utils.JDBCUtils;
import org.springframework.jdbc.core.JdbcTemplate;
public class JdbcTemplateDemo1 {
public static void main(String[] args){
//导入jar包
//创建JdbcTemplate对象
JdbcTemplate template =new JdbcTemplate(JDBCUtils.getDataSource());
//调用方法
String sql="update account set balance=2000 where id=?";
int count =template.update(sql,3);
System.out.println(count);
}
}
1.修改1号数据的salary为10000
2.添加一条数据
3.删除刚才添加的记录
4.查询id为1的记录,将其封装为Map集合
5.查询所有记录,将其封装为List
6.查询所有记录,将其封装为Emp对象的List集合
7.查询总记录数
package cn.itcast.jdbctemplate;
import cn.itcast.domain.Emp;
import cn.itcast.utils.JDBCUtils;
import org.junit.jupiter.api.Test;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowMapper;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Date;
import java.util.List;
import java.util.Map;
public class JdbcTemplateDemo2 {
//Junit单元测试 可以让方法独立执行
// 1.修改1号数据的salary为10000
//创建JdbcTemplate对象
private JdbcTemplate template =new JdbcTemplate(JDBCUtils.getDataSource());
@Test
public void test1(){
//导入jar包
//调用方法
String sql="update emp set sarlary=10000 where id=?";
int count =template.update(sql,1001);
System.out.println(count);
}
// 2.添加一条数据
@Test
public void test2(){
//导入jar包
//调用方法
String sql="insert into emp(id,ename,dept_id) values(?,?,?)";
int count =template.update(sql,1015,"guoj",10);
System.out.println(count);
}
// 3.删除刚才添加的记录
@Test
public void test3(){
//导入jar包
//调用方法
String sql="delete from emp where id=?";
int count =template.update(sql,1015);
System.out.println(count);
}
// 4.查询id为1005的记录,将其封装为Map集合
//查询结果集长度只能为1
@Test
public void test4(){
//导入jar包
//调用方法
String sql="select * from emp where id=?";
Map<String,Object> map =template.queryForMap(sql,1001);
System.out.println(map);
}
// 5.查询所有记录,将其封装为List
@Test
public void test5(){
//导入jar包
//调用方法
String sql="select * from emp where id=? or id=?";
List<Map<String,Object>> list=template.queryForList(sql,1001,1002);
for (Map<String,Object> stringObjectMap:list){
System.out.println(stringObjectMap);
}
}
// 6.查询所有记录,将其封装为Emp对象的List集合
@Test
public void test6(){
//导入jar包
//调用方法
String sql="select * from emp ";
List<Emp> list=template.query(sql, new RowMapper<Emp>() {
@Override
public Emp mapRow(ResultSet resultSet, int i) throws SQLException {
int id=resultSet.getInt("id");
String ename=resultSet.getString("ename");
int job_id=resultSet.getInt("job_id");
int mgr=resultSet.getInt("mgr");
Date joindate=resultSet.getDate("joindate");
double salary=resultSet.getDouble("sarlary");
double bonus=resultSet.getDouble("bonus");
int dept_id=resultSet.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);
}
}
// 6.查询所有记录,将其封装为Emp对象的List集合
@Test
public void test6_2(){
//导入jar包
//调用方法
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.查询总记录数
@Test
public void test7(){
//导入jar包
//调用方法
String sql="SELECT COUNT(id) FROM emp";
Long total=template.queryForObject(sql,Long.class);
System.out.println(total);
}
}
Java-Spring JDBC初体验
标签:key public tca 集合 return cep sys print sql