• 【练习】mybatis


     

    1、

    1 jdbc.driver_class=com.mysql.jdbc.Driver
    2 jdbc.url=jdbc:mysql://127.0.0.1:3306/smbms?zeroDateTimeBehavior=convertToNull
    3 jdbc.username=root
    4 jdbc.password=123456
    resources/database.properties/

    2、

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
    <configuration>
        <!--加载-->
        <properties resource="database.properties">
    
            <property name="driver" value="com.mysql.jdbc.Driver" />
            <property name="url" value="jdbc:mysql://localhost:3306/smbms?zeroDateTimeBehavior=convertToNull" />
            <property name="username" value="root" />
            <property name="password" value="123456" />
    
        </properties>
        <!--设置日志行为-->
    <!--    <settings>-->
    <!--        <setting name="logImpl" value="LOG4J"/>-->
    <!--    </settings>-->
        <typeAliases>
    <!--        //不推荐使用,当我们有很多的实体类的时候,这里配置的也很冗余-->
    <!--        <typeAlias type="cn.kgc.pojo.User"></typeAlias>-->
            <package name="cn.kgc.pojo"></package>
        </typeAliases>
    
        <!--更改运行环境-->
        <environments default="test">
           <!-- 配置运行环境-->
            <environment id="development">
                <transactionManager type="JDBC" />
                <!-- 配置数据库连接信息 -->
                <dataSource type="POOLED">
                    <property name="driver" value="${driver}"/>
                    <property name="url" value="${url}"/>
                    <property name="username" value="${username}"/>
                    <property name="password" value="${password}"/>
                </dataSource>
            </environment>
            <environment id="test">
                <transactionManager type="JDBC" />
                <!-- 配置数据库连接信息 -->
                <dataSource type="POOLED">
                    <property name="driver" value="${driver}"/>
                    <property name="url" value="${url}"/>
                    <property name="username" value="${username}"/>
                    <property name="password" value="${password}"/>
                </dataSource>
            </environment>
        </environments>
        <mappers>
            <mapper resource="cn/kgc/dao/UserMapper.xml"/>
        </mappers>
    
    </configuration>
    resources/mybatis-config.xml

    3、pojo实体类

    4、dao

     1 <?xml version="1.0" encoding="UTF-8" ?>
     2 <!DOCTYPE mapper
     3         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     4         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
     5 
     6 <mapper namespace="cn.kgc.dao.UserMapper">
     7 
     8     <!-- 查询用户表记录数 -->
     9     <select id="count" resultType="int">
    10         select count(1) as count from smbms_user
    11     </select>
    12 
    13     <!-- 查询用户列表 1  -->
    14     <select id="userlist" resultType="User">
    15         select * from smbms_user
    16     </select>
    17     <!-- 查询用户列表 2  -->
    18     <select id="getUserListByNullParam" resultType="cn.kgc.pojo.User">
    19         select * from smbms_user
    20     </select>
    21 
    22     <!--    查询供应商记录数-->
    23     <select id="result" resultType="int">
    24         select count(1) as count from smbms_provider
    25     </select>
    26     <!-- 查询供应商列表 1接口  -->
    27     <select id="getProviderList" resultType="cn.kgc.pojo.Provider">
    28         select * from smbms_provider
    29     </select>
    30     <!-- 查询供应商列表 2工具  -->
    31     <select id="providerlist" resultType="cn.kgc.pojo.Provider">
    32         select * from smbms_provider
    33     </select>
    34 
    35 </mapper>
    cn/kgc/dao/UserMapper.xml

    .

    1 public interface UserMapper {
    2     public List<User> getUserListByNullParam();
    3     public List<Provider> getProviderList();
    4 }
    cn.kgc.dao.UserMapper

    5.util

     1 public class MybatisUtils {
     2     private static SqlSessionFactory sqlSessionFactory;
     3     static {
     4         String path="mybatis-config.xml";
     5         try {
     6             InputStream is= Resources.getResourceAsStream(path);
     7             sqlSessionFactory=new SqlSessionFactoryBuilder().build(is);
     8         } catch (IOException e) {
     9             e.printStackTrace();
    10         }
    11 
    12     }
    13 
    14     public static SqlSession getSqlSession() {
    15         return sqlSessionFactory.openSession();
    16     }
    17 }
    cn.kgc.util.MybatisUtils

    6.test

      1 package cn.kgc.test;
      2 
      3 import cn.kgc.dao.UserMapper;
      4 import cn.kgc.pojo.Provider;
      5 import cn.kgc.pojo.User;
      6 import cn.kgc.util.MybatisUtils;
      7 import org.apache.ibatis.io.Resources;
      8 import org.apache.ibatis.session.SqlSession;
      9 import org.apache.ibatis.session.SqlSessionFactory;
     10 import org.apache.ibatis.session.SqlSessionFactoryBuilder;
     11 import org.junit.Test;
     12 import org.apache.log4j.Logger;
     13 
     14 import java.io.IOException;
     15 import java.io.InputStream;
     16 import java.util.List;
     17 
     18 /**
     19  * Created with IntelliJ IDEA.
     20  * User: L
     21  * Date: 2019/10/21
     22  * Time: 9:52
     23  * Description: No Description
     24  */
     25 public class TestUserMapper {
     26 
     27     /**
     28      * 查询用户条数
     29      */
     30     @Test
     31     public void test01(){
     32         //加载核心配置文件
     33         String path="mybatis-config.xml";
     34         InputStream is=null;
     35         try {
     36             is= Resources.getResourceAsStream(path);
     37             //mybatis中的核心类
     38             SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(is);
     39           SqlSession sqlSession=sqlSessionFactory.openSession();
     40             int count = sqlSession.selectOne("cn.kgc.dao.UserMapper.count");
     41             System.out.println("一共"+count+"条用户记录。");
     42         } catch (IOException e) {
     43             e.printStackTrace();
     44         }
     45 
     46     }
     47 
     48     /**
     49      * 测试输出用户列表
     50      * 工具类
     51      */
     52     @Test
     53     public void test02(){
     54         SqlSession sqlSession= MybatisUtils.getSqlSession();
     55         List<User> userList=sqlSession.selectList("cn.kgc.dao.UserMapper.userlist");
     56         for (User user:userList){
     57             System.out.println("**用户名**"+user.getUserName()+"--"+user.getPhone()+"--"+user.getAddress());
     58         }
     59     }
     60 
     61     /**
     62      * 输出用户列表
     63      * 接口方式
     64      */
     65     @Test
     66     public void test03(){
     67         SqlSession sqlSession = MybatisUtils.getSqlSession();
     68         List<User> userList = sqlSession.getMapper(UserMapper.class).getUserListByNullParam();
     69         for (User user : userList) {
     70             System.out.println("**用户名**"+user.getUserName()+"--"+user.getPhone()+"--"+user.getAddress());
     71         }
     72 
     73     }
     74 
     75     /**
     76      * 查询供应商数
     77      */
     78     @Test
     79     public void test04(){
     80         String path="mybatis-config.xml";
     81         InputStream is=null;
     82         try {
     83             is= Resources.getResourceAsStream(path);
     84             SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(is);
     85             SqlSession sqlSession=sqlSessionFactory.openSession();
     86             int result = sqlSession.selectOne("cn.kgc.dao.UserMapper.result");
     87             System.out.println("一共"+result+"条供应商记录。");
     88         } catch (IOException e) {
     89             e.printStackTrace();
     90         }
     91     }
     92 
     93     /**
     94      * 输出供应商详情
     95      * 接口
     96      */
     97     @Test
     98     public void test05(){
     99         SqlSession sqlSession = MybatisUtils.getSqlSession();
    100         List<Provider> providerList = sqlSession.getMapper(UserMapper.class).getProviderList();
    101         for (Provider provider : providerList) {
    102             System.out.println("**供应商**"+provider.getProName()+"--"+provider.getProContact()+"--"+provider.getProPhone()+"--"+provider.getProDesc());
    103         }
    104     }
    105 
    106     /**
    107      * 输出供应商详情
    108      * 工具
    109      */
    110     @Test
    111     public void test06(){
    112         SqlSession sqlSession= MybatisUtils.getSqlSession();
    113         List<Provider> providerList=sqlSession.selectList("cn.kgc.dao.UserMapper.providerlist");
    114         for (Provider provider:providerList){
    115             System.out.println("**供应商**"+provider.getProName()+"--"+provider.getProContact()+"--"+provider.getProPhone()+"--"+provider.getProDesc());
    116         }
    117     }
    118 
    119 
    120 }
    cn.kgc.test.TestUserMapper

     

  • 相关阅读:
    Atitit 编程语言原理与概论attilax总结
    Atitit.attilax软件研发与项目管理之道
    Atitit.研发团队与公司绩效管理的原理概论的attilax总结
    Atitit.软件兼容性原理与实践 v3 q326.docx
    Atitit.html css  浏览器原理理论概论导论attilax总结
    atitit.http原理与概论attilax总结
    Atitit.并发编程原理与概论 attilax总结
    Atitit selenium3 新特性
    asp.net里获取当前时间,并字符串格式化转换(转)
    软件设计师
  • 原文地址:https://www.cnblogs.com/yanglanlan/p/11714888.html
Copyright © 2020-2023  润新知