Java_MyBatis

Posted 小企鹅推雪球!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java_MyBatis相关的知识,希望对你有一定的参考价值。

Java_MyBatis简介

  1. MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架
  2. MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置以及结果集的检索,大大减少了代码的复杂性
  3. MyBatis 使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java 对象)映射成数据库中的记录=’
  4. MyBatis应用程序主要都是使用SqlSessionFactory实例的
  5. SqlSessionFactory实例可以通过SqlSessionFactoryBuilder获得
  6. SqlSessionFactoryBuilder可以从一个xml配置文件或者一个预定义的配置类的实例获得。
  7. MyBatis 最强大的特性之一就是它的动态语句功能
  8. MyBatis确实能通过在任何映射SQL语句中

Java_Mybatis接口注解

  1. 创建一个接口:IUser,并在其中声明对应的操作方法
  2. 在 src 源码目录下创建一个包:com.mybatis.dao,并建立接口类 IUser 及一个方法, 在方法上面,我们使用了一个SQL注释,内容如下:
public interface IUser {
     @Select("select * from user where id= #{id}")
     public User getUserByID(int id);
}
  1. 方法名 getUserByID 必须与 User.xml 里面配置的 select 的 id 对应()同名,虽使用注解映射不需要User.xml

Mybits创建对应映射接口SQL语句

  1. 配置 MyBatis 所需的数据连接文件,这里创建一个文件:
src/config/Configure.xml ,其内容如下:
<?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>
    <typeAliases>
        <typeAlias alias="User" type="com.mybatis.models.User" />
    </typeAliases>

    <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://127.0.0.1:3306/testdb" />
                <property name="username" value="sa" />
                <property name="password" value="123456" />
            </dataSource>
        </environment>
    </environments>

    <mappers>
        <mapper resource="com/mybatis/models/User.xml" />-->
    </mappers>
</configuration>

在包:com.mybatis.models 下创建一个User.java 类文件

package com.mybatis.models;

public class User {
    private int id;
    private String name;
    private String dept;
    private String phone;
    private String website;

    public String getWebsite() {
        return website;
    }
    public void setWebsite(String website) {
        this.website = website;
    }
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getDept() {
        return dept;
    }
    public void setDept(String dept) {
        this.dept = dept;
    }
    public String getPhone() {
        return phone;
    }
    public void setPhone(String phone) {
        this.phone = phone;
    }

}

与 User.java 对应的 XML 配置文件:User.xml 可以少省略,不用创建

测试接口映射

  1. 在 src 这个目录下创建一个类:Main.java,用来测试整个配置和程序运行结果
public class Main {
    private static SqlSessionFactory sqlSessionFactory;
    private static Reader reader;
    static {
        try {
            reader = Resources.getResourceAsReader("config/Configure.xml");
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
            sqlSessionFactory.getConfiguration().addMapper(IUser.class);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static SqlSessionFactory getSession() {
        return sqlSessionFactory;
    }

    public static void main(String[] args) {
        SqlSession session = sqlSessionFactory.openSession();
        try {
            IUser iuser = session.getMapper(IUser.class);
            User user = iuser.getUserByID(1);
            System.out.println("姓名:"+user.getName());
            System.out.println("班级:"+user.getDept());
        } finally {
            session.close();
        }
    }
}

以上是关于Java_MyBatis的主要内容,如果未能解决你的问题,请参考以下文章

Java_myBatis_延迟加载

Java_myBatis_全局配置文件

Java_myBatis_一对多映射

微信小程序代码片段

VSCode自定义代码片段——CSS选择器

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js