• 首页

  • 文章归档

  • 友链

  • 关于页面
D u e l s , I S h e e p !
D u e l s , I S h e e p !

ISheep

Code for fun, Make world better

07月
02
框架学习

quick Spring Framework

发表于 2020-07-02 • 字数统计 2429 • 被 149 人看爆

Mybatis笔记

mark

1.环境搭建

  • 导包

    		<dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.47</version>
            </dependency>
    
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.12</version>
            </dependency>
            <dependency>
                <groupId>org.mybatis</groupId>
                <artifactId>mybatis</artifactId>
                <version>3.5.2</version>
            </dependency>
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>1.18.12</version>
            </dependency>
    
  • 创建mabatis-config配置文件(两种方式)

    1. <?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>
          <environments default="development">
              <environment id="development">
                  <transactionManager type="JDBC"/>
                  <dataSource type="POOLED">
                      <property name="driver" value="com.mysql.jdbc.Driver"/>
                      <property name="url" value="jdbc:mysql://localhost:3306/mybatis?useSSL=false&amp;useUnicode=true&amp;characterEncoding=UTF-8"/>
                      <property name="username" value="root"/>
                      <property name="password" value="123456"/>
                  </dataSource>
              </environment>
          </environments>
      
          <mappers>
              <mapper resource="UserMapper.xml"/>
          </mappers>
      </configuration>
      
      • 先创建db.properties

        driver=com.mysql.jdbc.Driver
        url=jdbc:mysql://localhost:3306/mybatis?useSSL=false&useUnicode=true&characterEncoding=UTF-8
        username=root
        password=123456
        
      • 再创建mybatis-config

        <?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="db.properties"/>
            <!--日志-->
            <settings>
                <setting name="logImpl" value="STDOUT_LOGGING"/>
            </settings>
        
            <!--类型别名resultType-->
            <typeAliases>
                <!--直接扫描包-->
                <package name="com.codelin.pojo"/>
        <!--        <typeAlias type="com.codelin.pojo.User" alias="user"/>-->
            </typeAliases>
            <environments default="development">
                <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>
            </environments>
            <mappers>
                <mapper resource="StudentMapper.xml"/>
                <mapper resource="TeacherMapper.xml"/>
            </mappers>
        
        </configuration>
        
  • 创建工具类

    public class MybatisUtils {
    
        private static SqlSessionFactory sqlSessionFactory;
        static {
            try {
                //使用Mybatis获取sqlSessionFactory 对象
                String resource = "mybatis-config.xml";
                InputStream inputStream = Resources.getResourceAsStream(resource);
                sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        public static SqlSession getSqlSession(){
            return sqlSessionFactory.openSession(true);//开启自动提交事务
        }
    
  • 创建实体类

  • 创建对应的Mapper接口

  • 创建对应的Mapper.xml文件

  • 测试

2. 额外

  • @Alias注解起别名

    resultType

    resultMap

3. 多表查询

  • 多对一
  • 一对多

4.动态SQL查询

  • if标签

注意事项

mybatis排序时使用order by 动态参数要注意使用${}而不用@{}

分享到:
Linux基础
五月是你的太阳
  • 文章目录
  • 站点概览
ISheep

🐏 ISheep

放羊么?

Github Twitter Email Telegram RSS
看爆 Top5
  • 2020年终总结 562次看爆
  • 【转载】 2010年的房地产调控,我们收获了什么?写在房价暴涨前 460次看爆
  • 正则表达式入门 451次看爆
  • 搬家 437次看爆
  • 二〇二一 · 迷茫 、恐慌 410次看爆

站点已萌萌哒运行 00 天 00 小时 00 分 00 秒(●'◡'●)ノ♥

Copyright © 2022 ISheep 浙ICP备19046944号

由 Halo 强力驱动 · Theme by Sagiri · 站点地图