• myBatis的学习之 ( 二 ) ----- myBatis的应用


    一、基本用法

    1.添加jar包

          mybatis-3.2.8.jar

          mysql-connector-java-5.1.7-bin.jar

    添加配置文件

           datasource.properties

    1 jdbc.driverClassName=com.mysql.jdbc.Driver
    2 jdbc.url=jdbc:mysql://localhost:3306/数据库名? useUnicode=true&characterEncoding=utf8
    3 jdbc.username=root
    4 jdbc.password=root
    mb-config.xml
     1   <!--2、设置日志-->
     2   <settings>
     3       <setting name="logImpl" value="log4j"/>
     4       <!--还可使用mybatis官方提供的日志,不用添加log4j的jar包和配置文件-->
     5       <!--<setting name="logImpl" value="org.apache.ibatis.logging.stdout.StdOutImpl"/>-->
     6   </settings>
     7 
     8   <!--3.给实体类起别名-->
     9    <typeAliases>
    10         <!-- <typeAlias type="day1.entity.User" alias="user"/> 某一个实体类-->
    11         <!--推荐:包下所有类名(别名)-->
    12          <package name="day1.entity"/>
    13    </typeAliases>
    14 
    15   <!--default用来选择使用哪一套配置-->
    16   <environments default="mysql">
    17       <!--environment标签可以有多个,用来配置多个数据库支持,但其id不能重复-->
    18       <environment id="mysql">
    19           <!-- 事务管理器
    20           jdbc:使用jdbc的事务,
    21           MANAGED:表示mybatis对于事务什么都不作,交给其他框架(Spring)处理-->
    22           <transactionManager type="jdbc"></transactionManager>
    23           <!-- 连接信息
    24           1.type的值:
    25           unpooled:不使用连接池,只用来打开和关闭连接
    26           pooled:使用连接池
    27           jndi:向其他框架获取连接-->
    28           <dataSource type="unpooled">
    29               <property name="driver" value="${jdbc.driverClassName}"/>
    30               <property name="url" value="${jdbc.url}"/>
    31               <property name="username" value="${jdbc.username}"/>
    32               <property name="password" value="${jdbc.password}"/>
    33           </dataSource>
    34       </environment>
    35 
    36   </environments>
    37 
    38     <!--映射器:配置mapper文件:本质上是接口的实现类 -->
    39   <mappers>
    40     <mapper resource="day1/mapper/UserMapper.xml"/>
    41     <mapper resource="day1/mapper/UserDaoMapper.xml"/>
    42     <mapper resource="day1/mapper/ResultMap_Mapper.xml"/>
    43   </mappers>
    View Code

    在mapper配置文件里写sql语句

     1   <!--2、设置日志-->
     2   <settings>
     3       <setting name="logImpl" value="log4j"/>
     4       <!--还可使用mybatis官方提供的日志,不用添加log4j的jar包和配置文件-->
     5       <!--<setting name="logImpl" value="org.apache.ibatis.logging.stdout.StdOutImpl"/>-->
     6   </settings>
     7 
     8   <!--3.给实体类起别名-->
     9    <typeAliases>
    10         <!-- <typeAlias type="day1.entity.User" alias="user"/> 某一个实体类-->
    11         <!--推荐:包下所有类名(别名)-->
    12          <package name="day1.entity"/>
    13    </typeAliases>
    14 
    15   <!--default用来选择使用哪一套配置-->
    16   <environments default="mysql">
    17       <!--environment标签可以有多个,用来配置多个数据库支持,但其id不能重复-->
    18       <environment id="mysql">
    19           <!-- 事务管理器
    20           jdbc:使用jdbc的事务,
    21           MANAGED:表示mybatis对于事务什么都不作,交给其他框架(Spring)处理-->
    22           <transactionManager type="jdbc"></transactionManager>
    23           <!-- 连接信息
    24           1.type的值:
    25           unpooled:不使用连接池,只用来打开和关闭连接
    26           pooled:使用连接池
    27           jndi:向其他框架获取连接-->
    28           <dataSource type="unpooled">
    29               <property name="driver" value="${jdbc.driverClassName}"/>
    30               <property name="url" value="${jdbc.url}"/>
    31               <property name="username" value="${jdbc.username}"/>
    32               <property name="password" value="${jdbc.password}"/>
    33           </dataSource>
    34       </environment>
    35 
    36   </environments>
    37 
    38     <!--映射器:配置mapper文件:本质上是接口的实现类 -->
    39   <mappers>
    40     <mapper resource="day1/mapper/UserMapper.xml"/>
    41     <mapper resource="day1/mapper/UserDaoMapper.xml"/>
    42     <mapper resource="day1/mapper/ResultMap_Mapper.xml"/>
    43   </mappers>
    View Code

    Util工具类

     1 public class Util {
     2     static SqlSessionFactory factory;
     3     static {
     4         SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
     5         factory = builder.
     6                 build(Util.class.getClassLoader().getResourceAsStream("mb-config.xml"));
     7     }
     8     //获取连接对象
     9     public static SqlSession getSession() {
    10         return factory.openSession();
    11     }
    12     //关闭session
    13     public static void closeSession(SqlSession session) {
    14         if (session != null) {
    15             session.close();//关闭
    16         }
    17     }
    18 }

    测试类 test

     1 //测试类
     2 public class TestMapper {
     3     //psvm
     4     public static void main(String[] args) {
     5         //1.创建sqlSessionFactoryBuilder对象,读取配置文件
     6         SqlSessionFactoryBuilder builder =new SqlSessionFactoryBuilder();
     7         //2.连接对象工厂
     8         SqlSessionFactory factory = builder.build(TestMapper.class.
     9                 getClassLoader().getResourceAsStream("mb-config.xml"));
    10         //3.获取连接对象
    11         SqlSession session =factory.openSession();
    12         //4.执行查询操作
    13         // -->1.selectOne("方法名",实参)
    14         User user = session.selectOne("test.selectUserById",1);
    15         // -->2.selectList("方法名")
    16         List<User> list = session.selectList("test.selectAllUsers");
    17         System.out.println("查询结果:"+list.toString());
    18         session.close();
    19     }
    20 }
  • 相关阅读:
    Linux之Permission denied没有权限
    soapUI的简单使用(webservice接口功能测试)
    jmeter学习(二),如何安装jmeter?
    loadrunner检查点设置失败,日志中SaveCount无法被正常统计出来
    loadrunner破解出现“license security violation,Operation is not allowed”的错误提示
    安装LoadRunner11报缺少vc2005_sp1_with_atl_fix_redist的错误
    IOS测试,打不开要测试的APP怎么办?设置信任
    Jmeter的好搭档Badboy的安装与简单使用
    映射网络驱动器会自动断开的解决方法
    oracle中如何修改用户名和密码
  • 原文地址:https://www.cnblogs.com/hycc/p/14626158.html
Copyright © 2020-2023  润新知