美文网首页
mybatis入门

mybatis入门

作者: yinhaijun | 来源:发表于2018-08-23 14:40 被阅读13次

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射,本文通过一个demo把MyBatis进行简单构建
参考文档
demo地址

构建过程

项目结构如图所示,仅有简单的几个文件


image.png

pom.xml,依赖mybatis的包和mysql驱动

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

    <modelVersion>4.0.0</modelVersion>

    <groupId>com.company</groupId>
    <artifactId>item</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <!--mybatis依赖包-->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.1</version>
        </dependency>
        <!--mysql依赖包-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.39</version>
        </dependency>
    </dependencies>
</project>

config.xml,配置数据库连接信息和mapper映射路径

<?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/db_item" />
             <property name="username" value="root" />
             <property name="password" value="123456" />
         </dataSource>
     </environment>
    </environments>
    <mappers>
        <!-- 注册userInfoMapper.xml文件 -->
        <mapper resource="mapper/UserMapper.xml"/>
    </mappers>
</configuration>

UserMapper.xml,定义好命名空间后,简单地写一个查询,其它更加复杂的写法参考文档

<?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.company.mapper.UserMapper">
     <select id="findById" parameterType="java.lang.String"
         resultType="com.company.entities.User">
         select * from user where id=#{id}
     </select>
 </mapper>

text.java,加载文件,构建会话,执行语句

package com.company.test;

import com.company.entities.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

import java.io.IOException;
import java.io.Reader;

public class Test {

    public static void main(String[] args) throws IOException {
        //mybatis的配置文件
        String resource = "conf.xml";
        //使用MyBatis提供的Resources类加载mybatis的配置文件(它也加载关联的映射文件)
        Reader reader = Resources.getResourceAsReader(resource);
        //构建sqlSession的工厂
        SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
        //创建能执行映射文件中sql的sqlSession
        SqlSession session = sessionFactory.openSession();
        /**
         * 映射sql的标识字符串,
         * com.company.mapper.userMapper是userMapper.xml文件中mapper标签的namespace属性的值,
         * getUser是select标签的id属性值,通过select标签的id属性值就可以找到要执行的SQL
         */
        String statement = "com.company.mapper.UserMapper.findById";//映射sql的标识字符串
        //执行查询返回一个唯一user对象的sql
        User user = session.selectOne(statement, "1");
        System.out.println(user);
    }
}

运行结果

image.png

相关文章

  • 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/baopiftx.html