1.pom.xml文件添加依赖
<!-- mybatis jar 包依赖 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.1</version> </dependency>
<!-- 数据库驱动 --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.39</version> </dependency> <!-- log4j日志打印 --> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.16</version> </dependency> |
2.pom.xml设置资源文件夹路径
<build> <resources> <resource> <directory>src/main/resources</directory> </resource> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.xml</include> <include>**/*.tld</include> </includes> <filtering>false</filtering> </resource> </resources> </build> |
3.在 src/main/resources 资源包下添加 log4j 日志输出properties 文件, 便于查看日志输出信息
# Global logging configuration log4j.rootLogger=DEBUG, stdout # Console output... log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n |
4.resources 目录下主配置文件添加
新建 mybatis.xml 文件, 并加入配置信息如下(数据库名mybatis,表 user)
<?xml version="1.0" encoding="UTF-8" ?> <!-- mybatis 框架头文件声明,类似spring环境,均需要加入头文件 --> <!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://127.0.0.1:3306/xinyue" /> <property name="username" value="root" /> <property name="password" value="123456" /> </dataSource> </environment> </environments>
<!-- mapper 配置文件指定 文件数量可配置多个--> <mappers> <mapper resource="com/shsxt/mapper/UserMapper.xml" /> </mappers>
</configuration> |
5.映射文件添加
新建 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"> <!-- 1.命名空间配置 全局唯一 包名+文件名 2.配置Mapped Statement 3. statement配置 id 值声明statement编号 同一命名空间(同一文件)下不可重复 parameterType 输入参数即占位符的数据类型 类型可以是 基本数据类型,字符串,java bean ,map,list等 resultType 输出结果 类型可以是基本数据类型,字符串,java bean,map等 statement 描述 即待执行的sql #{id} 占位符 变量名为id/value 均可 ${value} 变量名必须为value 字符串拼接形式 无法避免sql 注入 --> <mapper namespace="com.shsxt.mapper.UserMapper"> <select id="queryUserById" parameterType="int" resultType="com.shsxt.po.User"> /* id,uname是所查表的属性,as后的重命名 要与实体类一致*/ select id ,uname as userName,upwd as userPwd from user where id=#{id} </select> <!-- <update id=""></update> <insert id=""></insert> <delete id=""></delete>--> </mapper> |
6.测试
package com.shsxt;
import com.shsxt.po.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 org.junit.Test;
import java.io.IOException; import java.io.InputStream;
/** * Created by xlf on 2018/9/10. */ public class TestMyBatis {
@Test public void test01() throws IOException { /** a)、读取mybatis的配置文件 b)、加载配置文件创建SqlSessionFactory c)、根据SqlSessionFactory创建SqlSession d)、通过sqlSession操作数据库 e)、处理结果 f)、关闭session */
// 读取配置文件 InputStream is = Resources.getResourceAsStream("mybatis.xml");
//创建会话工厂 SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is); //is后面可以加上指定环境(其他数据源)
// 创建session SqlSession sqlSession = sqlSessionFactory.openSession();
// 操作数据库 User user = sqlSession.selectOne("com.shsxt.mapper.UserMapper.queryUserById",6); System.out.println(user);
// 关闭session sqlSession.close(); } } |
|