如何搭建环境---初识mybatis

如何搭建环境---初识mybatis_第1张图片如何搭建环境---初识mybatis_第2张图片如何搭建环境---初识mybatis_第3张图片

一:mybatis概念
1:简介
       MyBatis本是apache的一个开源项目iBatis,2010年改名为 MyBatis,
       MyBatis 是一个基于Java的持久层框架。(操作数据库)
2:优点
       1:半自动化的ORM实现(实体类和SQL语句之间建立映射关系)
       2:SQL代码从程序代码中彻底分离,可重用
       3:与JDBC相比,减少了50%以上的代码量
       4:小巧灵活、简单易学,是最简单的持久化框架
       5:提供XML标签,支持编写动态SQL
       6:提供映射标签,支持对象与数据库的ORM字段映射
3:MyBatis缺点
     1:SQL语句编写工作量大,对开发人员有一定sql技术要求
     2:数据库移植性差(不同数据库,sql语句语法有所不同)

*******************************************mybatis环境搭建开始******************************************

1:导入mybatis的jar包
    mybatis-3.2.2.jar
    mysql-connector-java-5.1.25-bin.jar

2:创建mybatis的核心配置文件(mybatis-config.xml)
  
 
  
   
   
       驱动
      数据库的url
       用户名
      密码
   

  

 

       
 
  
 

 

3: 实体类

4:数据访问的接口(dao)

   public List findUsers();

5:接口与sql语句的映射  UserMapper.xml

   命名空间必须是响应接口的全路径
  
 
         id必须和接口中的方法名一致
         resultType返回值类型(返回集合的话,指定集合元素的类型)
 

  

*******************************************************************写好的粘贴可用*************************************************************************

6:mybatis的工具类

    获得SqlSession
        ①:读取配置文件,创建session工厂
        ②:在session工厂里,获得session会话
    关闭session
        判断session实例是否创建,不为null,就关闭session

    /**
      * mybatis的工具类
      * 获得session
      */
     public class MybatisUtil {
 
  public static SqlSessionFactory sf;  //session工厂
 
  //获得session工厂
         static { 
          try { 
          Reader  is= Resources.getResourceAsReader("mybatis-config.xml"); 
          sf= new SqlSessionFactoryBuilder().build(is);
         } catch (Exception e) { 
             e.printStackTrace(); 
         } 
  } 
   
  //获得session
         public static SqlSession getSession(){
           return sf.openSession();
         }
   
         //关闭session
         public static void  closeSession(SqlSession session){
      if(session !=null){
       session.close();
      }
      } 
     }

7: 数据操作
       //获得session
       session=MybatisUtil.getSession();
       //获得接口实例
       List listUser=session.getMapper(UserMapper.class).findUsers();
       //关闭session 

*******************************************mybatis环境搭建结束******************************************
*******************************************增删改开始***************************************************

        /**
  * 查询所有数据
  * @return
  */
 public List findAll();
******************
       

**************************************************

 /**
  * 根据编号查询对象
  * @param 用户表的主键
  * @return  一个对象user
  */
 public  User findById(Integer userId);
******************
       

**************************************************

 /**
  * 增加用户信息
  * @param 一个对象数据
  * @return  数据库的影响行数
  */
 public Integer add(User user);
******************
       
       INSERT INTO users VALUES(NULL,#{userName},#{password},#{realName})
 

**************************************************

 /**
  * 根据编号删除对象
  * @param  用户表的主键
  * @return 数据库的影响行数
  */
 public Integer delete(Integer id);
******************
       
       delete from users where id=#{id}
 

************************************************** 

 /**
  * 修改用户信息
  * @param 一个对象数据
  * @return  数据库的影响行数
  */
 public Integer update(User user);
******************
       
       
             update users set userName=#{userName} ,password=#{password},realName=#{realName}
             where id=#{id}
       

************************************************** 

 /**
  * 连表查询用户信息
         * 在从表的实体类中添加级联查询主表中的属性
         * SELECT u.*,rolename  在用户表中添加角色表的属性-角色名称
  */
  public List findUserAndRole();
******************
        
**************************************************
   
    模糊查询

    //根据角色名称,模糊查询角色列表
    public List  findRoleByRoleName(String rolename);
  
   
   
*******************************************增删改查结束***************************************************

 

转载于:https://www.cnblogs.com/zhuhuibiao/p/9256731.html

你可能感兴趣的:(如何搭建环境---初识mybatis)