☰
IDEA(2020版)实现MyBatis入门程序
2026/9/27 9:21:53 网站建设 项目流程

可能遇到的报错:

java.io.IOException: Could not find resource mybatis-config.xml

IDEA 连接数据库报错Public Key Retrieval is not allowed

0.说明

工具:IDEA 2020.1 、Maven 3.6.3、jdk1.8

jdk1.8.0_131.zip链接:
(1)百度网盘:
通过网盘分享的文件:jdk1.8.0_131.zip
链接: https://pan.baidu.com/s/1KfrWgmzk720RHxlMcySPow?pwd=49dt 提取码: 49dt

(2) 夸克网盘
我用夸克网盘给你分享了「jdk_8.0.1310.11.zip」,点击链接或复制整段内容,打开「夸克APP」即可获取。
/82383b6hcL😕
链接:https://pan.quark.cn/s/25b5829aba22?pwd=qwK9
提取码:qwK9

Maven3.6.3下载地址链接:
(1)百度网盘
通过网盘分享的文件:apache-maven-3.6.3.zip
链接: https://pan.baidu.com/s/1hDekReMQF-CdbO6SSBpPaQ?pwd=ke73 提取码: ke73

(2)夸克网盘
我用夸克网盘给你分享了「apache-maven-3.6.3.zip」,点击链接或复制整段内容,打开「夸克APP」即可获取。
/fd6c3b6gww😕
链接:https://pan.quark.cn/s/1f109c6b6581?pwd=Rq2P
提取码:Rq2P

Win10如何配置Java JDK环境,请点击这里。

Win10如何配置Maven环境,请点击这里。

IDEA如何配置JDK,请点击这里。

IDEA如何配置Maven,请点击这里。

源代码下载:?

1.MyBatis环境搭建

打开IDEA,点击“File—>New—>Project”

我们 选择“Maven”项目,然后点击“Next”

改一下项目名称,然后点击“Finish”


创建完项目默认如下:

我们引入相关依赖,打开POM文件,引入下面的依赖

<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.itheima</groupId><artifactId>mybatistest</artifactId><version>1.0-SNAPSHOT</version><dependencies><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.5.2</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.11</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>compile</scope></dependency></dependencies><build><resources><resource><directory>src/main/resources</directory><includes><include>**/*.properties</include><include>**/*.xml</include></includes><filtering>true</filtering></resource></resources></build></project>

然后点击下面这两个小图标,下载maven依赖。

然后创建数据库链接信息配置文件 (db.properties)

右击 resources,选择“New—>File”

输入db.properties,里面内容参考如下:

mysql.driver=com.mysql.cj.jdbc.Drivermysql.url=jdbc:mysql://localhost:3306/mybatis?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=falsemysql.username=rootmysql.password=123456

编写配置文件mybatis-config.xml

右击 “resources—>New—>File”,命名为mybatis-config.xml

初始的配置文件参考如下:

<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPE configuration PUBLIC"-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration><!-- 环境配置 --><!-- 加载类路径下的属性文件 --><propertiesresource="db.properties"/><environmentsdefault="development"><environmentid="development"><transactionManagertype="JDBC"/><!-- 数据库连接相关配置 ,db.properties文件中的内容--><dataSourcetype="POOLED"><propertyname="driver"value="${mysql.driver}"/><propertyname="url"value="${mysql.url}"/><propertyname="username"value="${mysql.username}"/><propertyname="password"value="${mysql.password}"/></dataSource></environment></environments></configuration>


到此,mybaits环境搭建完毕。

2.数据库与实体类创建

(1)数据库创建

使用navicat或者其他的数据库工具,创建一个数据库,名字为mybatis,然后使用下面的sql在数据库里执行。

use mybatis;create table users(uid int primary key auto_increment,unamevarchar(20)not null, uage int not null);insert into users(uid,uname,uage)values(null,'张三',20),(null,'李四',18);

创建完了,查看一下数据库,数据是否正常插入


(2)创建实体类

右击“java”文件夹,选择“New—>Package”

然后名称输入 com.itheima.pojo


创建完后,界面如下所示,然后右击“pojo”文件夹,选择“New->Java Class”

类名

名称输入 User,类型选择Class,然后按回车


代码参考下面的

package com.itheima.pojo;public class User{private int uid;//用户id private Stringuname;//用户姓名 private int uage;//用户年龄 public intgetUid(){returnuid;}public void setUid(int uid){this.uid=uid;}public StringgetUname(){returnuname;}public void setUname(Stringuname){this.uname=uname;}public intgetUage(){returnuage;}public void setUage(int uage){this.uage=uage;}}

界面参考如下:

3.mapper映射文件

(1)创建mapper映射文件

右击”resources“文件夹,选择 ”New—>Directory“,创建文件夹,名称就叫mapper

刚才创建的mapper文件夹,右击它,然后选择”New—>File“,文件名称就写 ”UserMapper.xml“


代码参考如下:

<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPE mapper PUBLIC"-//mybatis.org//DTD mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!-- mapper为映射的根节点--><!-- mapper为映射的根节点,namespace指定Dao接口的完整类名 mybatis会依据这个接口动态创建一个实现类去实现这个接口, 而这个实现类是一个Mapper对象--><mappernamespace="com.itheima.pojo.User"><!--id="接口中的方法名"parameterType="传入的参数类型"resultType="返回实体类对象,使用包.类名"--><selectid="findById"parameterType="int"resultType="com.itheima.pojo.User">select* fromuserswhere uid=#{id}</select></mapper>

效果如下:


(注意,后续代码中,我们已经把xml中所有的中文注释都删除了,变成下面这样)

<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPE mapper PUBLIC"-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mappernamespace="com.itheima.pojo.User"><selectid="findById"parameterType="int"resultType="com.itheima.pojo.User">select* fromuserswhere uid=#{id}</select></mapper>

这样我们就完成了映射文件,一般情况下, 一个实体类对应一个映射文件,命名规则一般是 实体类+Mapper+.xml

上面的代码写了一个 查询语句。id=”findById”,后面要在test语句中使用。

后面这个UserMapper.xml文件可以增加相应的 update、insert、delete操作。

注意,id要做到唯一。

(2)修改mybatis-config.xml,引入UserMapper.xml文件

<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPE configuration PUBLIC"-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration><!-- 环境配置 --><!-- 加载类路径下的属性文件 --><propertiesresource="db.properties"/><environmentsdefault="development"><environmentid="development"><transactionManagertype="JDBC"/><!-- 数据库连接相关配置 ,db.properties文件中的内容--><dataSourcetype="POOLED"><propertyname="driver"value="${mysql.driver}"/><propertyname="url"value="${mysql.url}"/><propertyname="username"value="${mysql.username}"/><propertyname="password"value="${mysql.password}"/></dataSource></environment></environments><!-- mapping文件路径配置 --><mappers><mapperresource="mapper/UserMapper.xml"/></mappers></configuration>

4.创建测试类

我们右击测试类下面的java文件夹,选择 ”New—>Package“,然后名称选择”Test“

文件夹的名字为Test

然后右击Test文件夹,选择New—JavaClass
类名为 UserTest

代码参考如下:

package Test;importcom.itheima.pojo.User;importorg.apache.ibatis.io.Resources;importorg.apache.ibatis.session.SqlSession;importorg.apache.ibatis.session.SqlSessionFactory;importorg.apache.ibatis.session.SqlSessionFactoryBuilder;importorg.junit.Test;importjava.io.IOException;importjava.io.Reader;public class UserTest{@Test public voiduserFindByIdTest(){//读取文件名 String resources="mybatis-config.xml";//创建流 Reader reader=null;try{//读取mybatis-config.xml文件内容到reader对象中 reader=Resources.getResourceAsReader(resources);}catch(IOException e){e.printStackTrace();}//初始化mybatis数据库,创建SqlSessionFactory类的实例 SqlSessionFactory sqlMapper=new SqlSessionFactoryBuilder().build(reader);//创建SqlSession实例 SqlSession session=sqlMapper.openSession();//传入参数查询,返回结果 User user=session.selectOne("findById",1);//输出结果 System.out.println(user.getUname());//关闭session session.close();}}

执行测试结果:

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询