mybatis学习笔记(一)
mybatis学习笔记
- mybatis简介
- Mybatis 开源免费框架.原名叫iBatis,2010在googlecode,2013年迁移到 github
- 作用: 数据访问层框架,底层对JDBC进行封装。
- mybatis的优点:使用mybatis时不需要编写实现类,只需要写需要执行得sql命令。
- 环境搭建
- 导入jar包,
-
- 在src下新建全局配置文件
- 没有名称和地址要求,例如mybatis.xml,引入DTD或者schema
1234567891011121314151617181920
<?
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="default">
<
environment
id="default">
<
transactionManager
type="JDBC"></
transactionManager
>
<
dataSource
type="POOLED">
<
property
name="driver" value="com.mysql.jdbc.Driver"/>
<
property
name="url" value="jdbc:mysql://localhost:3306/ssm"/>
<
property
name="username" value="root"/>
<
property
name="password" value="123456"/>
</
dataSource
>
</
environment
>
</
environments
>
<
mappers
>
<
mapper
resource="com/bjm/mapper/PeopleMapper.xml"/>
</
mappers
>
</
configuration
>
- 没有名称和地址要求,例如mybatis.xml,引入DTD或者schema
- 然后新建以mapper结尾的包,在包下新建:实体类名(pojo)+Mapper.xml
-
- 文件作用:编写需要执行的SQL命令。
- 把 xml 文件理解成实现类
123456789
<?
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.bjm.mapper">
<
select
id="selAll" resultType="com.bjm.pojo.People">
select * from people
</
select
>
</
mapper
>
- 最后编写测试类
12345678910111213141516171819202122232425
import
java.io.IOException;
import
java.io.InputStream;
import
java.util.List;
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
com.bjm.pojo.People;
public
class
Test {
public
static
void
main(String[] args)
throws
IOException{
InputStream resourceAsStream = Resources.getResourceAsStream(
"mybatis.xml"
);
SqlSessionFactory factory =
new
SqlSessionFactoryBuilder().build(resourceAsStream);
//生产SqlSession
SqlSession session = factory.openSession();
List<People> selectList = session.selectList(
"com.bjm.mapper.selAll"
);
for
(People people : selectList) {
System.out.println(people.toString());
}
session.close();
}
}
-
- 在src下新建全局配置文件
- 环境搭建详解
- 全局配置文件中标签<environments default="default">default取值是根据子标签<environment id="default">id的取值,通过取值选择mybatis加载哪一种数据库来连接,上面的例子是选择MySQL数据库。
-
1
<
transactionManager
type=/>属性可取值
- JDBC,事务管理使用 JDBC 原生事务管理方式;
- MANAGED 把事务管理转交给其他容器(例如spring)。原生 JDBC 事务setAutoMapping(false);
- <dataSource type="">属性可取值
- POOLED 使用数据库连接池;
- UNPOOLED 不实用数据库连接池,和直接使用 JDBC 一样;
- JNDI:java 命名目录接口技术.
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步