标题 我的第一个Mybatis程序(保姆级教程)
IDE:IDEA 2020.3.3 JDK:jdk10 Maven:3.6.3
我们新建一个数据库叫做 mybaits 然后插入数据:
CREATE TABLE `user` (
`id` int NOT NULL,
`name` varchar(30) DEFAULT NULL,
`pwd` varchar(30) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
插入数据
insert into user valuse(1,'狂神','12345'),
(2,'张三','12346'),
(3,'李四','12347');
我们现在新建一个maven工程:(输入项目名字,一路next和finish 就可以了),建造好了过后就要等待一会儿等待插件下载好。
然后我们建造项目结构:
这样就行了.
我们开始配置相关文件 先打开最下面的 pom.xml文件加入依赖
我们现在 在第六行前面加入这几行代码(帮助 Mybatis 加载配置文件,都是IDEA2020的错 我之前也不知道为什么会找不到配置文件)
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
</build>
现在导入依赖:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.23</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.2</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
</dependencies>
我们现在导入依赖 :
点一下有蓝色的地方就可以了。
然后等待一会儿。
等待下载的时候 我们开始配置相关文件。
在:
下面新建一个文件 命名为 :
我们现在开始配置 mybatis-config.xml :
<?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.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybaits?useUnicode=true&characterEncoding=utf-8&serverTimeZone=CTT&allowPublicKeyRetrieval=true&serverTimezone=UTC"/>
<property name="username" value="你的数据库名"/>
<property name="password" value="你的数据库密码"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="待会儿书写"/>
</mappers>
</configuration>
我们现在配置好了基本的环境 我们就开始在 Test_modu2 下面新建一个类叫做 User:
public class User {
private int id;
private String name;
private String pwd;
public User(int id, String name, String pwd) {
this.id = id;
this.name = name;
this.pwd = pwd;
}
public User(){}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", name='" + name + '\'' +
", pwd='" + pwd + '\'' +
'}';
}
}
我们现在在Test_modu1 下面配置文件 UseMapper.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.learn.Test_modu1.UserDao">
<select id="getUser" resultType="com.learn.Test_modu2.User">
select *from user;
</select>
</mapper>
然后我们开始编写测试类 结构和这个一样 不要接口 和xml文件(在test目录下面)
创建一个 Main.java
public class Main {
public static void main(String[] args) throws IOException {
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream("mybatis-config.xml"));
SqlSession sqlSession = factory.openSession();
List<User> objects = sqlSession.selectList("com.learn.Test_modu1.UserDao.getUser");
for(User user:objects){
System.out.println(user);
}
sqlSession.close();
}
}
然后 我们之前 mybatis-config.xml 的resource(告诉系统配置文件在那儿的)还没有写 我们 加上
com/learn/Test_modu1/UserMapper.xml
然后就好了 这个是运行结果:
和数据库里面的数据一模一样:
教程就结束了 个位大佬给个赞吧 自学不容易 谢谢!!!!
坚持每个星期都跟新文章 fighting!!!