一、JDBC_Template模板的使用

1.1 需要的支持jar包

image.png

1.2 JDBC 实现查询功能

1.2.1 设计思想

一、搭建框架:dao、srtvice、dmo 、pojo;
二、建立关系:主要就是后台进行配置;
三、实际使用Spring提供的jdbc;

1.2.1 实际搭建
  1. 首先按照分层架构的使用正常的写出几个类与其对应的接口。注意聚合问题
  2. 设计demo中注意如下设计

    1. //更换运行器
    2. @RunWith(SpringJUnit4ClassRunner.class)
    3. //指定核心配置文件的位置
    4. @ContextConfiguration(locations = "classpath:/xml/beans04.xml")
    5. public class JDBCTemplateDemo01 {
    6. @Autowired
    7. private EmpService empService;
    8. @Test
    9. public void test01(){
    10. List<Emp> empList = empService.getEmpList();
    11. for (Emp emp : empList) {
    12. System.out.println(emp);
    13. }
    14. }
    15. }
  1. 配置文件:注意在进行数据注入时要在对应的类中插入set方法。 ```xml

  1. 4. JDBC的实际使用:首先在持久层聚合jdbcTemplate
  2. **查询使用:jdbcTemplate.query **<br />**增删改使用:jdbcTemplate.update**
  3. ```xml
  4. @Override
  5. public List<Emp> getEmpList() {
  6. //注意 new RowMapper<Emp>()后会自动生成后面的内容
  7. return jdbcTemplate.query("select * from user", new RowMapper<Emp>() {
  8. @Override
  9. public Emp mapRow(ResultSet resultSet, int i) throws SQLException {
  10. Emp emp = new Emp();
  11. int id = resultSet.getInt("id");
  12. String username = resultSet.getString("username");
  13. String password =resultSet.getString("password");
  14. emp.setId(id);
  15. emp.setUsername(username);
  16. emp.setPassword(password);
  17. return emp;
  18. }
  19. });
  20. }

1.3 JDBC 实现添加功能

首先在测试类中加入要添加的数据

  1. @Test
  2. public void test02(){
  3. Emp emp = new Emp();
  4. //注意id作为主键不能重复,否则会报错的
  5. emp.setId(7);
  6. emp.setUsername("小王");
  7. emp.setPassword("123");
  8. boolean b = empService.addEmp(emp);
  9. System.out.println(b?"添加成功":"添加失败");
  10. }

其次在持久层连接数据库进行添加注意格式与返回值

  1. @Override
  2. public boolean addEmp(Emp emp) {
  3. //注意返回值的类型
  4. //注意insert语句是不加逗号的。
  5. return jdbcTemplate.update("insert into user(id,username,password) values(?,?,?)",
  6. emp.getId(),emp.getUsername(),emp.getPassword())==1? true: false;
  7. }

1.4 JDBC 实现修改功能

  1. @Test
  2. public void test03(){
  3. Emp emp = new Emp();
  4. emp.setUsername("小王");
  5. emp.setPassword("12345");
  6. emp.setId(7);
  7. boolean b = empService.updateEmpById(emp);
  8. System.out.println(b?"修改成功":"修改失败");
  9. }
  1. @Override
  2. public boolean updateEmpById(Emp emp) {
  3. return jdbcTemplate.update("update user set id = ?,username=?,password=? where id =?",
  4. emp.getId(),emp.getUsername(),emp.getPassword(),emp.getId())==1? true: false;
  5. }