美文网首页
MyBatis工具类创建(MyBatisUtil.java)以及

MyBatis工具类创建(MyBatisUtil.java)以及

作者: 凡哥爱丽姐 | 来源:发表于2020-05-22 20:27 被阅读0次

    1、实现MyBatisUtil.java工具类

        1.1、MyBatisUtil.java工具类

    package com.fan.util;
    
    import org.apache.ibatis.io.Resources;
    import org.apache.ibatis.session.SqlSession;
    import org.apache.ibatis.session.SqlSessionFactory;
    import org.apache.ibatis.session.SqlSessionFactoryBuilder;
    
    import java.io.IOException;
    import java.io.Reader;
    
    public class MyBatisUtil {
        private  static SqlSessionFactory factory=null;
        static {
            try {
                Reader resourceAsReader = Resources.getResourceAsReader("mybatis-config.xml");
                factory= new SqlSessionFactoryBuilder().build(resourceAsReader);
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    
        //获取sqlSession
        public static SqlSession getSqlSession(){
            return factory.openSession();
        }
    
        //关闭sqlSession
        public static void closeSqlSession(SqlSession sqlSession){
            if(sqlSession!=null){
                sqlSession.close();
            }
        }
    }
    

        1.2、对MyBatisUtil.java工具类进行简单的测试

    import com.fan.dao.UserDao;
    import com.fan.entity.User;
    import com.fan.util.MyBatisUtil;
    import org.apache.ibatis.session.SqlSession;
    
    public class TestMyBatisUtil {
        public static void main(String[] args) {
            //调用工具类中getSqlSession方法
            SqlSession sqlSession = MyBatisUtil.getSqlSession();
            UserDao userDaoMapper = sqlSession.getMapper(UserDao.class);
            //插入一条数据
            int i = userDaoMapper.addUser(new User(3, "王五", "男"));
            sqlSession.commit();
            System.out.println("插入成功"+i+"条");
            //调用工具类中closeSqlSession方法
            MyBatisUtil.closeSqlSession(sqlSession);
        }
    }
    

    2、typeAliases元素

        typeAliases元素的作用是配置类型的别名,通过与MyBatis的SQL映射文件相关联,减少输入多余的完整列名,以简化操作。

        2.1、实例

        这是之前我们在mapper文件中配置的查询语句
        <!--根据id查询用户信息-->
        <select id="findById" resultType="com.fan.entity.User">
            select * from users where id=#{id1}
        </select>
    

        我们在mybatis-config.xml文件中添加typeAliases元素
        <!--给com.fan.entity下的实体类使用别名-->
        <typeAliases>
            <package name="com.fan.entity"/>
        </typeAliases>
    
        那么mapper文件中的配置如下
        <!--根据id查询用户信息-->
        <select id="findById" resultType="User">
            select * from users where id=#{id1}
        </select>
    

    相关文章

      网友评论

          本文标题:MyBatis工具类创建(MyBatisUtil.java)以及

          本文链接:https://www.haomeiwen.com/subject/nehlohtx.html