Mybatis学习日记(笔记)

1 篇文章 0 订阅
1 篇文章 0 订阅

一、初步认识

1.mybatis-config.xml 配置文件

为整合Spring 只是单纯的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">
		<environment id="development">
			<transactionManager type="JDBC" />
			<dataSource type="POOLED">
				<property name="driver" value="${driver}" />
				<property name="url" value="${url}" />
				<property name="username" value="${username}" />
				<property name="password" value="${password}" />
			</dataSource>
		</environment>
	</environments>
	<mappers>
		当前为加载所有的mapper文件
		<mapper resource="EmployeeMapper.xml" />
	</mappers>
</configuration>

2.mybatis mapper.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.xx.mybatis.empMapper">
	<select id="selectEmp" resultType="com.xx.mybatis.bean">
		select * from Blog where id = #{id}
	</select>
</mapper>

3.测试(如何调用Mybatis)

public void test() throws Exception {
		//流的方式读取配置文件
		InputStream is =Resources.getResourceAsStream("mybatis-config.xml");
		//获取mybatis的SqlSessionFactory
		SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
		//获取 SqlSession
		SqlSession session = sqlSessionFactory.openSession();
		//获取
		Object selectOne = session.selectOne("com.xx.mybatis.empMapper.selectEmp", 1);
		session.close();
		
	}

其中SqlSessionFacory 与 SqlSession 解释如下 摘抄(解释

二、mybatis面向接口编程

1.创建接口

public interface EmployeeDAO {
	
	public Object selectEmpById(Integer id);

}

2.修改一下上面的mapper

(注意 namespace属性与 标签的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.xx.dao.EmployeeDAO">
	<select id="selectEmpById" resultType="com.xx.mybatis.bean">
		select * from Blog where id = #{id}
	</select>
</mapper>

3.看一下上面的测试类

	public void test() throws Exception {
		//流的方式读取配置文件
		InputStream is =Resources.getResourceAsStream("mybatis-config.xml");
		//获取mybatis的SqlSessionFactory
		SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
		//获取 SqlSession
		SqlSession session = sqlSessionFactory.openSession();
//		//获取
//		Object selectOne = session.selectOne("com.xx.mybatis.empMapper.selectEmp", 1);
		EmployeeDAO mapper = session.getMapper(EmployeeDAO.class);
		
		Object obj = mapper.selectEmpById(1);
		
		session.close();
		
	}

三、mybatis-config.xml全局配置文件讲解

1. properties标签

引入数据库配置文件

<?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>

	引入点!!!!
	<properties resource="XXXXjdbc.properties"></properties>

	<environments default="development">
		<environment id="development">
			<transactionManager type="JDBC" />
			<dataSource type="POOLED">
				<property name="driver" value="${driver}" />
				<property name="url" value="${url}" />
				<property name="username" value="${username}" />
				<property name="password" value="${password}" />
			</dataSource>
		</environment>
	</environments>
	<mappers>
		当前为加载所有的mapper文件
		<mapper resource="EmployeeMapper.xml" />
	</mappers>
</configuration>

2.setting 配置文件

举几个例子 其余的属性请见
https://blog.csdn.net/shicuicui1234/article/details/78811939

<?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>

	引入点!!!!
	<setting>
		//举例 驼峰命名规则的配置
		<setting name="mapUnderscoreToCamelCaseEnables" value="true"></setting>
	</setting>
	<properties resource="XXXXjdbc.properties"></properties>

	<environments default="development">
		<environment id="development">
			<transactionManager type="JDBC" />
			<dataSource type="POOLED">
				<property name="driver" value="${driver}" />
				<property name="url" value="${url}" />
				<property name="username" value="${username}" />
				<property name="password" value="${password}" />
			</dataSource>
		</environment>
	</environments>
	<mappers>
		当前为加载所有的mapper文件
		<mapper resource="EmployeeMapper.xml" />
	</mappers>
</configuration>

3.别名处理器 其别名用的

<?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>

引入点
<typeAliases>
<typeAlias type="com.xx.mybatis.bean" alias = "be" />
或者批量起别名(自动起名)
<package name="com.xx.mybatis"/> 
 mybatis 包下的名字所有的名字都为当前类的名字即
 mapper 中的resultType = "com.xx.mybatis.bean" 为 resultType="bean" 
</typeAliases>


	<setting>
		<setting name="mapUnderscoreToCamelCaseEnables" value="true">			   </setting>
	</setting>
	<properties resource="XXXXjdbc.properties"></properties>

	<environments default="development">
		<environment id="development">
			<transactionManager type="JDBC" />
			<dataSource type="POOLED">
				<property name="driver" value="${driver}" />
				<property name="url" value="${url}" />
				<property name="username" value="${username}" />
				<property name="password" value="${password}" />
			</dataSource>
		</environment>
	</environments>
	<mappers>
		当前为加载所有的mapper文件
		<mapper resource="EmployeeMapper.xml" />
	</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="com.xx.dao.EmployeeDAO">
	<select id="selectEmpById" resultType="be"> 看好当前这行与上面那行
		select * from Blog where id = #{id}
	</select>
</mapper>

或者使用注解: @Alias(“emp”) 即mapper.xml文件中的 resultType = “emp”

4. enviroments(环境 mybatis 可以配置多种环境)

<environments default="development"> 
		<environment id="development">
			<transactionManager type="JDBC" />
			<dataSource type="POOLED">
				<property name="driver" value="${driver}" />
				<property name="url" value="${url}" />
				<property name="username" value="${username}" />
				<property name="password" value="${password}" />
			</dataSource>
		</environment>
		<environment id="test">
			<transactionManager type=""></transactionManager > 事物管理器
			<dataSource type=""></dataSource>
		</environment>
		
</environments>
	
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值