MyBatis

目录

1.MyBatis 入门程序开发步骤

2..引入日志框架logback

3.MyBatis⼯具类SqlSessionUtil的封装

4.Mybatis传参数问题(方式)


1.MyBatis 入门程序开发步骤

  • SqlSession:代表Java程序和数据库之间的会话。(HttpSession是Java程序和浏览器之间的会话)

  • SqlSessionFactory:是“生产”SqlSession的“工厂”。

  • 工厂模式:如果创建某一个对象,使用的过程基本固定,那么我们就可以把创建这个对象的相关代码封装到一个“工厂类”中,以后都使用这个工厂类来“生产”我们需要的对象。

注意1:默认采⽤的事务管理器是:JDBC。JDBC事务默认是不提交的,需要⼿动提交。

public void addStu() {
        //1:第一步:mybatis提供了一个专门用来从java程序连接mysql数据库的对象
       
        SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
       
        //2:创建qlSessionFactory
        InputStream is = StudentTest.class.getClassLoader().getResourceAsStream("mybatis-config.xml");


 //InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream("mybatis-config.xml");
//InputStream is = Resources.getResourceAsStream("mybatis-config.xml");

        SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(is);

        // 3. 创建SqlSession对象
     SqlSession sqlSession = sqlSessionFactory.openSession(); //喏自动提交括号写true

        //4: 执行sql语句  受影响的行数
         sqlSession.insert(""); 

        sqlSession.commit();
        sqlSession.close();
    }

2..引入日志框架logback

引⼊⽇志框架的⽬的是为了看清楚mybatis执⾏的具体sql。 启⽤标准⽇志组件,只需要在1.mybatis-config.xml⽂件中添加以下配置:【可参考mybatis⼿册】

mybatis-config.xml


 

2.引⼊logback相关依赖


 ch.qos.logback
 logback-classic
 1.2.11
 test

3.引⼊logback相关配置⽂件(⽂件名叫做logback.xml或logback-test.xml,放到类路径 当中)

logback.xml



 
 
 
 
 
 
 %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logge
r{50} - %msg%n
 
 
 
 
 
 
 ${LOG_HOME}/TestWeb.log.%d{yyyy-MM-dd}.log
 
 30
 
 
 
 %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logge
r{50} - %msg%n
 
 
 
 100MB
 
 
 
 
 
 
 

 
 
 
 

3.MyBatis⼯具类SqlSessionUtil的封装

public class SqlSessionUtil {
 private static SqlSessionFactory sqlSessionFactory;
 /**
 * 类加载时初始化sqlSessionFactory对象
 */
 static {
 try {
 SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSes
sionFactoryBuilder();
 sqlSessionFactory = sqlSessionFactoryBuilder.build(Resources.g
etResourceAsStream("mybatis-config.xml"));
 } catch (Exception e) {
 e.printStackTrace();
 }
 }
 /**
 * 每调⽤⼀次openSession()可获取⼀个新的会话,该会话⽀持⾃动提交。
 *
 * @return 新的会话对象
 */
 public static SqlSession openSession() {
 return sqlSessionFactory.openSession(true);
 }
}

4.Mybatis传参数问题(方式)

1.arg0传参数

2.param传参数

3.@Param别名参数

4.$字符串拼接  #占位

 

  User queryUserByNameAndPwd(@Param("tom") String uname,@Param("jerry") String pwd);
  User queryUserByNameAndPwd(String uname,String pwd);

mybatis 传递参数的7种方法_mybatis传入对象参数_独钓寒江雪~的博客-CSDN博客

你可能感兴趣的:(Mybatis,mybatis)