MyBatis (一) MyBatis 的简单引入

笔记原文连接

MyBatis 的简单引入

step1:简单准备

创建数据库
首先,我们先创建一个数据库,表名为 tbl_employee,
该表的字段以及类型如下

jar包
所需要的 jar 如下
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-61qnSnWQ-1571880729841)(en-resource://database/8764:1)]

step2:依据所创建的表创建一个 POJO 对象

首先创建一个 POJO 类型的类,该类的字段将会和实际的表的对象相对应。

package cn.edu.stu.demo1.bean;

public class Employee {
	
	private int id;
	private String last_name;
	private String gender;
	private String email;
	
	public Employee(int id, String name, String gender, String email) {
		super();
		this.id = id;
		this.last_name = name;
		this.gender = gender;
		this.email = email;
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getGender() {
		return gender;
	}

	public void setGender(String gender) {
		this.gender = gender;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	@Override
	public String toString() {
		return "Employee [id=" + id + ", name=" + last_name + ", gender=" + gender + ", email=" + email + "]";
	}

	public String getLast_name() {
		return last_name;
	}

	public void setLast_name(String last_name) {
		this.last_name = last_name;
	}

	
}

step3: 配置 MyBatis 配置文件

为了方便寻找配置文件,我们将所有的配置文件都放入一个 conf 文件夹中
在配置文件中,我们需要设置驱动器,url 路径,用户名密码,

<?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/mybatis_demo1" />
				<property name="username" value="root" />
				<property name="password" value="123456" />
			</dataSource>
		</environment>
	</environments>
	<mappers>
		<mapper resource="EmployeeMapper.xml" />
	</mappers>
</configuration>

上述代码中,有一个 mappers 的对象,是用来反映 SQL 语句和相应的 POJO 对象的映射的关系。

step4: 配置映射文件

映射文件,我们首先需要指定命名空间,命名空间可以区分不同的映射文件。中间的 select 便是映射的语句。id 属性可以区分不同的 SQL 语句。resultType 是指定相应的返回类型,此时返回类型的字段名称,必须与查询的字段名称(或者别名)相吻合。

<?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="org.mybatis.example.BlogMapper">
	<select id="selectEmp" resultType="cn.edu.stu.demo1.bean.Employee">
		select * from tbl_employee where id = #{id}
	</select>
</mapper>

step5:log4j 日志配置

日志文件的配置复制源码即可,暂不需要过多了解

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration
	xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
	<appender name="CONSOLE"
		class="org.apache.log4j.ConsoleAppender">
		<layout class="org.apache.log4j.PatternLayout">
			<param name="ConversionPattern"
				value="[%d{dd/MM/yy hh:mm:ss:sss z}] %5p %c{2}: %m%n" />
		</layout>
	</appender>
	<appender name="FILE"
		class="org.apache.log4j.RollingFileAppender">
		<param name="file" value="${user.home}/foss-framework.log" />
		<param name="append" value="true" />
		<param name="maxFileSize" value="10MB" />
		<param name="maxBackupIndex" value="100" />
		<layout class="org.apache.log4j.PatternLayout">
			<param name="ConversionPattern"
				value="%d [%t] %-5p %C{6} (%F:%L) - %m%n" />
		</layout>
	</appender>


	<!-- 下面是打印mybatis语句的配置 -->
	<logger name="com.ibatis" additivity="true">
		<level value="DEBUG" />
	</logger>
	<logger name="java.sql.Connection" additivity="true">
		<level value="DEBUG" />
	</logger>
	<logger name="java.sql.Statement" additivity="true">
		<level value="DEBUG" />
	</logger>
	<logger name="java.sql.PreparedStatement" additivity="true">
		<level value="DEBUG" />
	</logger>
	<logger name="java.sql.ResultSet" additivity="true">
		<level value="DEBUG" />
	</logger>

	<root>
		<level value="INFO" />
		<appender-ref ref="CONSOLE" />
		<appender-ref ref="FILE" />
	</root>
</log4j:configuration>

step6:简单调用

在 MyBatis 中,使用 SqlSession 对象查询语句结果。而 SqlSession 对象需要通过 SQLSessionFactory 对象创建。SqlSessionFactory 需要根据 MyBatis 的配置文件创建,默认情况下都回去 conf 文件夹下寻找 MyBatis 的配置文件。
SqlSession 创建成功后,会根据 mybatis_config.xml 文件中的 自动加载 SQL 语句映射文件。要使用时,就需要用命名空间加上 SQL 语句的 id (EmployeeMapper.xml)便可以调用并执行相应的 SQL 语句。

	@Test
	public void test1() throws IOException {
    
		String resource = "mybatis_config.xml";
		InputStream inputStream = Resources.getResourceAsStream(resource);
		SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
		
		SqlSession sqlSession = sqlSessionFactory.openSession();
		try {
			Employee employee = sqlSession.selectOne("org.mybatis.example.BlogMapper.selectEmp",1);
			System.out.println(employee);
		}finally {
			sqlSession.close();
		}
		
	}

运行结果:

Employee [id=1, name=Dany, gender=man, email=Dany@cn.stu]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

求和的小熊猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值