mybatis快速入门

来源:互联网 发布:软件缓存是什么意思 编辑:程序博客网 时间:2024/05/18 11:47

开发环境:JDK:1.7;IDE:IDEA 2017.1.1;Maven:3.3.9;MyBatis:3.4.4;数据库:mysql

数据库初始化

创建数据库、表格、初始化数据

使用maven声明依赖

<dependency>    <groupId>org.mybatis</groupId>    <artifactId>mybatis</artifactId>    <version>3.4.4</version></dependency><dependency>    <groupId>mysql</groupId>    <artifactId>mysql-connector-java</artifactId>    <version>5.1.26</version></dependency>

mybatis环境配置

<?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">        <!--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/dbdemo"/>                <property name="username" value="root"/>                <property name="password" value="******"/>            </dataSource>        </environment>    </environments>    <mappers>        <!--声明映射文件-->        <mapper resource="usermapper.xml"></mapper>    </mappers></configuration>

数据库映射文件

<?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="sys_userMapper">    <!--根据Id查询user表-->    <select id="getUserById" parameterType="int" resultType="UserEntity">        SELECT  * FROM sys_user where id=#{Id}    </select></mapper>

mapper节点属性
namespace:同select节点的Id一起确认调用者需要调用的是哪条sql

select节点属性
id:同mapper节点的namespace一起确认调用者需要调用的是哪条sql
parameterType:传入参数类型
resultType:映射的实体类,对应java类

代码示例

import org.apache.ibatis.session.SqlSession;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;import java.io.InputStream;public class Test {    public static void main(String[] args) {        InputStream stream = Test.class.getClassLoader().getResourceAsStream("mybatis-config.xml");        SqlSessionFactory factory = new  SqlSessionFactoryBuilder().build(stream);        SqlSession sqlSession = factory.openSession();        String statement = "sys_userMapper.getUserById";        UserEntity user = sqlSession.selectOne(statement,1);        System.out.print(user);    }}

运行结果
这里写图片描述

2 0