Spring简述三——Spring和JDBCTemplate的整合&& Spring和Mybatis的整合使用

其他Spring相关文章
Spring简述一
Spring简述二

Spring提供了JavaEE的一整套解决方案(展示层 业务层 dao层)
jdbCTemplate是dao层的解决方案,mybatis也是dao层的解决方案

Spring中JDBCTemplate的使用:

创建数据源(实现datasource的接口)
创建JDBCTemplate对象通过数据源来实例化

JDBCTemplate的使用步骤:
1、引入依赖
MySQL驱动包、Spring-jdbc

MySQL的驱动包,spring-jdbc

    
      org.springframework
      spring-jdbc
      4.2.8.RELEASE
    
    
      org.springframework
      spring-tx
      4.2.8.RELEASE
    
    
    
      mysql
      mysql-connector-java
      5.1.18
    

2、JDBCTemplate模板编码使用

   //数据源
        DriverManagerDataSource dataSource = new DriverManagerDataSource();


        dataSource.setDriverClassName("com.mysql.jdbc.Driver");
        dataSource.setUrl("jdbc:mysql://localhost:3306/test");
        dataSource.setUsername("root");
        dataSource.setPassword("123456");


        //jdbcTemplate对象
        JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);

        //插入操作 jdbcTemplate.update
        String sql = "insert into Student(SID,Sname,Sage) values(?,?,?)";
//        jdbcTemplate.update(sql,9,"GY1313", 22);


        //修改操作 jdbcTemplate.update
        String sql1="update Student set Ssex = ? where SID = ?";
//        jdbcTemplate.update(sql1, 1, 9);


        //删除操作 jdbcTemplate.update
        String sql2 = "delete from Student where SID = ?";
//        jdbcTemplate.update(sql2, 9);


        //查询操作
        //查询单个的用户 jdbcTemplate.queryForObject
        //需要实现RowMapper接口,作用是完成数据库数据和JAVA对象的映射
        String sql4 ="select * from Student where SID = ?";
//        Student1 student1 = jdbcTemplate.queryForObject(sql4, new StudentMapper(), 8);
//        System.out.println(student1);


        //查询表中所有的结果 jdbcTemplate.query


        String sql5 = "select * from Student";
        List  student1s = jdbcTemplate.query(sql5, new StudentMapper());
        System.out.println(student1s.size());
}
}
/**
     * 手动的将数据库结果映射为JAVA的对象
     */
    static class StudentMapper implements RowMapper{
        @Override
        /**
         * 参数:ResultSet rs,  数据库返回的结果集,注意:表示的是一行数据的结果集
         * int rowNum   表示行号
         *
         * 返回参数:Student1  表示返回的对象的类型
         */
        public Student1 mapRow(ResultSet rs, int rowNum) throws SQLException {
            //返回的对象
            Student1 student1 = new Student1();


            //将数据库获取的参数值交给student对象
            student1.setSID(rs.getInt("SID"));
            student1.setSname(rs.getString("Sname"));
            student1.setSsex(rs.getString("Ssex"));
            student1.setSage(rs.getString("Sage"));


            return student1;
        }
    }

Spring和mybatis的整合使用

整合思路:就是将mybatis中创建出来的对象交给Spring进行单例管理——sqlSessionfactory

整合步骤:
1、引入依赖

spring核心jar、驱动jar包、mybatis的jar、mybatis-spring包
spring-jdbc \spring-tx


  org.mybatis
  mybatis-spring
  1.3.0
  

2、创建mybatis配置文件

  
  
  
  
      
         
      
      
  

3、创建student表,创建pojo类,创建mapper.xml 创建mapper.Java
4、创建spring的全局配置文件


  
  
  
      
      
          
          
          
          
      
      
          
          
  
          
          
  
          
          
      
  
     <单个创建对象>
      
          
          
          
          
      
      
      
      
          
          
      
  

你可能感兴趣的:(JAVA)