一、创建新项目
1.
**2.****注:要选择Maven **
**3.**给项目起一个名字。这里以MyBatis_Test2为例。
在工作坐标中起一个组ID。我自己的就是com.alanx.java.mybatis。😉
点击完成后,稍作等待。出现一下界面就是项目创建完成。
**4.**创建完成后,最好在右上角的设置里面(构建、执行、部署-->构建工具-->Maven)看一下,用户设置文件和本地仓库的路径对不对,如果不对修改一下。(如下图所示)
二、在pom.xml中引入jar包
1.引入mybatis jar包
在这个连接中(MVNREPOSITORY)找到mybatis的依赖后,在pom.xml写入一个<dependencies></dependencies>标签,然后将复制的jar包粘贴到里面。如下图。
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.7</version>
</dependency>
2.引入mysql jar包
和上面一样,在连接中找到mysql的jar包复制到<dependencies></dependencies>标签里面
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.28</version>
</dependency>
注:最终写完所有的jar包后一定要点击右上角的那个圈圈加载一下(m上有一个蓝色的圈圈)
三、创建api模块
将所有的bean包都放在api模块中。好处是所有的子项目中不需要重复写bean包(老师说的😛老师说的都要记住)
1.api模块的创建
选择Maven然后勾选从aechetype创建(A)找到maven-archetype-quickstart,然后点击下一步
名称为api,然后点击下一步然后点击完成。
稍等片刻。等出现下面这个图片的样子,并且底下有[INFO] BUILD SUCCESS的字,说明就是创建成功了。😀
注:api模块和MyBatis_Test2不存在父子关系。所以创建完成后要自己删除api目录下pom.xml中的<parent></parent>标签和标签内<artifactId></artifactId>的标签,只保留<groupId>标签和<version>标签的内容。如下图所示(只保留红框内的部分)
2.在api中的pom.xml中引入jar包
①引入小辣椒jar包
和上面的引入jar包操作一样,点击连接,在网站中搜索lombok然后粘贴到<dependencies></dependencies>标签里面
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.22</version>
</dependency>
3.在api中创建bean包
写完bean包后,在父项目的pom.xml中引入api 。写完后不要忘了点右上角的圈圈
四、新建主体模块
1.模块创建
和创建api方法相同,只不过不需要删除<parent>的内容。
2.创建配置文件
然后在resources文件中创建config.xml文件,在config.xml文件中书写一下内容
(url、username、password根据自己的修改)
<?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>
<settings>
<!--输出日志到控制台中-->
<setting name="logImpl" value="STDOUT_LOGGING"/>
</settings>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<!--分别书写驱动类、网址、账号和密码 注意网址中&使用&代替-->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/student_massage?characterEncoding=utf8&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true"/>
<property name="username" value="root"/>
<property name="password" value="zx123"/>
</dataSource>
</environment>
</environments>
<mappers>
<!--引入的资源文件-->
</mappers>
</configuration>
引入资源文件在写完Mapper映射文件后写入。下面的第6步
3.创建mapper接口
在EmpMapper接口中书写对数据库的操作(这里以查询来举例子)
4.创建EmpMapper的映射文件
在EmpMapper.xml文件中写入一下内容
namespace:因为EmpMapper.xml是和EmpMapper接口关联的,所以namespace要写EmpMapper的路径
<?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.alanx.java.mybatis.mapper.EmpMapper">
<!--书写相对应的sql语句-->
</mapper>
5.书写SQL语句
6.在config.xml中引入资源文件
resource:EmpMapper.xml的路径
7.测试结果
在进行测试之前需要在m1的pom.xml文件中加入一下内容用来扫描本项目中的资源文件。添加完后不要忘记点击右上角的圈圈。
<!--强制Idea搜索xml文件在java文件夹下-->
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
在App类中进行测试
//1.加载配置文件
InputStream in = Resources.getResourceAsStream("config.xml");
//2.创建会话工厂
SqlSessionFactory ssf = new SqlSessionFactoryBuilder().build(in);
//3.创建会话
SqlSession session = ssf.openSession();
//4.执行对应操作
List<Emp> list = session.selectList("findAllEmp");
package com.alanx.java.mybatis;
import com.alanx.java.mybatis.bean.Emp;
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 App {
public static void a() throws IOException {
//1.加载配置文件
InputStream in = Resources.getResourceAsStream("config.xml");
//2.创建会话工厂
SqlSessionFactory ssf = new SqlSessionFactoryBuilder().build(in);
//3.创建会话
SqlSession session = ssf.openSession();
//4.执行对应操作
List<Emp> list = session.selectList("findAllEmp");
for (Emp e : list) {
System.out.println(e);
}
// 5. 关闭连接
session.close();
}
public static void main(String[] args) throws IOException {
a();
}
}
运行出来的结果:
版权归原作者 不爱健身的数学子弟不是好程序员 所有, 如有侵权,请联系我们删除。