美文网首页
Mybatis入门

Mybatis入门

作者: 04040d1599e6 | 来源:发表于2020-05-10 23:02 被阅读0次

前言

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。项目中我们经常用到mybatis的动态SQL功能生成复杂的SQL语句。它相对于Hibernate来说更加的轻便小巧,在国内传统公司一般喜欢使用Hibernate,互联网公司会更青睐于Mybatis。虽然mybatis相较于Hibernate来说只是一个半自动化的持久层框架,但是相更加灵活可控; 最重要的一点是,mybatis更加的simple,更贴近SQL,学习成本低于hibernate。

DEMO

介绍Mybatis的简单使用。
/mybatisDemo
-- /src
-- -- /main
-- -- -- /java
-- -- -- -- com/xavier/mybatis
-- -- -- -- -- App.java
-- -- -- -- -- User.java
-- -- -- -- -- UserMapper.java
-- -- -- /resource
-- -- -- -- /mapper
-- -- -- -- -- UserMapper.xml
-- -- -- -- mybatis-config.xml
-- pom.xml

  1. 项目引入mybatis的依赖
<dependency>
  <groupId>org.mybatis</groupId>
  <artifactId>mybatis</artifactId>
  <version>3.5.4</version>
</dependency>
  1. 创建mybatis-config.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>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/mydb?useUnicode=true"/>
                <property name="username" value="root"/>
                <property name="password" value="xxxxx"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="mapper/UserMapper.xml"/>
    </mappers>
</configuration>
  1. 从 XML 中构建 SqlSessionFactory
public class App {
    public static void main(String[] args) throws Exception {
        String resource = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        UserMapper userMapper = sqlSessionFactory.openSession().getMapper(UserMapper.class);
        User user = userMapper.selectUser(1);
        System.out.println(user);
    }
}
  1. 实体类
@Getter
@Setter
@ToString
public class User {
    private Integer id;
    private String userName;
    private String passWord;
    private String realName;
}
  1. 映射文件以及映射类
public interface UserMapper {
    User selectUser(@Param("id") Integer id);
}

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.xavier.mybatis.UserMapper">
    <select id="selectUser" parameterType="int" resultType="com.xavier.mybatis.User">
    SELECT * FROM TB_USER WHERE ID = #{id}
    </select>
</mapper>
  1. 运行
result
  1. 说明

DEMO的主方法中,从xml构建了 SqlSessionFactory ,通过SQLSessionFactory 打开了一个新的SqlSession,获取Mapper。
最后调用Mapper的selectUser方法,传入参数,获取返回值。

相关文章

  • MyBatis

    MyBatis学习总结(一)——MyBatis快速入门 超详细MyBatis入门讲解

  • 深入浅出Mybatis-Mybatis-Generator

    目录 入门 Mybatis Generator 是什么 Mybatis Generator是Mybatis的代码生...

  • Mybatis的入门

    一.Mybatis介绍 二.Mybatis的架构 三.Mybatis入门程序开发 下载mybatis 导包核心+依...

  • Mybatis快速入门

    Mybatis 学习内容 Mybatis框架的简单入门 Mybatis框架基本的使用 Mybatis框架的深入和多...

  • MyBatis之快速入门

    title: MyBatis之快速入门tags: MyBatiscategories: MyBatis 若图片无法...

  • 1.Mybatis - 搭建

    参考 Mybatis 官方 MyBatis学习总结(一)——MyBatis快速入门 安装 说明基于Maven 步骤...

  • Intellij 第三章 测试Spring整合MyBatis

    0、如需查看Spring整合MyBatis知识请访问 MyBatis入门【十二】 Spring整合MyBatis基...

  • Mybatis源码解读

    Mybatis入门 Mybatis构成 SqlSessionFactoryBuilder(构造器):根据配置信息或...

  • Mybatis入门

    目的:入门,熟悉mybatis是什么,怎么用。 1. 初识Mybatis 1.1 Mybatis介绍 MyBati...

  • MyBatis入门 Day10 2018-11-28

    MyBatis mybatis-3.4.6 jdk1.8+ 一、mybatis入门 1.依赖jar包 pom.xm...

网友评论

      本文标题:Mybatis入门

      本文链接:https://www.haomeiwen.com/subject/vvxmghtx.html