目录
前言必读
mybatis使用Mapper代理开发会更加的方便,一般推荐这样的方式,形式和mapper常规使用也差不多
其他说明:还有注解的方式可以调用,不过注解的方式只能应用于简单的sql语句,复杂的语句就要用文中的xml调用方式了
使用配置:
以下的安装配置的超链接,如有需要可用去查看
一、全图预览
二、使用步骤
1.pom.xml里面添加依赖包
先在maven架构的pom.xml里面添加要使用的mybatis和mysql两个依赖(俗称jar包)
<dependencies>
<!--mybatis依赖包-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.11</version>
</dependency>
<!--mysql依赖包-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.30</version>
</dependency>
</dependencies>
如图所示:
2.新建统一配置文件(俗称数据库连接文件)
(1)在resources下–新建–文件(选择第2个)—mybatis-config.xml
ps:这里面是用来连接数据库的统一配置文件
(2)把这个配置信息添加到这个新建的配置文件里面
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"https://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.cj.jdbc.Driver"/><!--改:数据库的固定连接,老版本不用cj-->
<property name="url" value="jdbc:mysql://localhost:3306/javafx"/><!--改数据库的要连接的库-->
<property name="username" value="root"/><!--改:数据库的账号-->
<property name="password" value="123456"/><!--改:数据库的密码-->
</dataSource>
</environment>
</environments>
<mappers>
<!--加载映射文件-->
<mapper resource="com/project/Mapper/boyMapper.xml"/><!--改:把映射文件的源根路径复制到这里-->
</mappers>
</configuration>
如图所示:
3.新建项目
(1)要在java的项目下面建立2个包,一个是接口包Mapper,一个是封装包pojo
com.project:项目名
Mapper:接口包
pojo:实现类包
(2)
在封装包pojo里面建立一个和数据库对应的封装类–Boy。
在接口包Mapper下建立一个接口–boyMapper
ps:数据库图(这个是为了方便对应参考,知道那些类名是怎么来的)
Boy(里面是封装属性。然后快捷键生成的set和get、构造方法、toString)
boyMapper(接口起这个名字是为了和接下来的resources里面的xml映射文件名一样)
ps:并在接口里面定义一个查询全部的集合方法-
4.新建映射文件(俗称数据库对应表xml)
(1)在resources下–新建–目录包—com/project/Mapper
格式:
新建一个目录包和接口包一样的名称就好了。建立输入时候注意:小点那个要用/代替才能建立成功
ps:这样做的目的就是为了xml文件和接口包在同一个文件下
如图所示
(2)在resources下新建好的包下建立一个boyMapper.xml文件,并在里面写上对应的映射方法
格式
数据库要操作对应的表名Mapper.xml,以后数据库的操作语句都在这个映射文件里面写就好了
添加进去的映射方法
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"https://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--映射查询方法-->
<mapper namespace="com.project.Mapper.boyMapper"><!--namespace=对应接口的全部路径-->
<select id="selectAll" resultType="com.project.pojo.Boy"><!--参数一:接口对应的方法名 参数二:封装类的详细地址-->
select * from boy;<!--要执行的sql语句-->
</select>
</mapper>
如图所示
5.测试
编写一个测试类,放哪里测试都可以(我在pojo里面建立)
package com.project.pojo;
import com.project.Mapper.boyMapper;
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 java.io.IOException;
import java.io.InputStream;
import java.util.List;
public class BoyTest {
public static void main(String[] args) throws IOException {
//1.加载mybatis连接文件(核心配置文件)
String resource = "mybatis-config.xml";//这是连接数据库的统一配置xml文件
InputStream inputStream = Resources.getResourceAsStream(resource);//固定写法
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);//固定写法
//2.获取SqlSessionFactory对象--固定写法
SqlSession sqlSession = sqlSessionFactory.openSession();
//3.执行sql语句
//接口 自定义接口名 = sqlSession.getMapper(接口.class);
boyMapper boyMapper = sqlSession.getMapper(boyMapper.class);
//接口里面的方法
List<Boy> boyAll = boyMapper.selectAll();
//4.打印语句
System.out.println(boyAll);
//5.释放资源--固定写法
sqlSession.close();
}
}
运行结果:
[boy{id=1, name=’小明’, age=18}, boy{id=2, name=’小美’, age=19}]
三、文中的全部代码(去复制可用)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/112641.html