mybatis新手快速入門(mén)以及一些錯(cuò)誤匯總

一、使用maven加載依賴(lài)
加載了連接數(shù)據(jù)庫(kù)的依賴(lài)、mybatis的依賴(lài)以及l(fā)ombok的依賴(lài)
<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.47</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.4</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.12</version> </dependency>
二、建庫(kù)、建表

三、配置MyBatis的配置文件(conf.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.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/數(shù)據(jù)庫(kù)名字?/useUnicode=true&characterEncoding=utf8&useSSL=false" />
<property name="username" value="root" />
<property name="password" value="數(shù)據(jù)庫(kù)密碼" />
</dataSource>
</environment>
</environments>
</configuration>
四、定義表所對(duì)應(yīng)的實(shí)體類(lèi)
@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {
private Integer uid;
private String uname;
private String password;
}
五、定義操作表的sql的映射文件xxxMapper.xml
見(jiàn)名知意,操作的user表,所以映射文件也命名為了userMapper.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">
<!--tuser是我自己定的名字-->
<mapper namespace="tuser">
<!--id自己設(shè)置,等會(huì)調(diào)用方法名使用,resultType查詢(xún)結(jié)果類(lèi)型-->
<select id="getUserById" resultType="com.hongda.space.entity.User">
<!--sql語(yǔ)句,#{}是參數(shù)格式,注意字段要與實(shí)體類(lèi)屬性一致-->
select * from t_user where uid=#{uid}
</select>
<!--parameterType參數(shù)類(lèi)型-->
<insert id="insertUser" parameterType="com.hongda.space.entity.User">
insert into t_user(uname,password) values(#{uname},#{password});
</insert>
</mapper>
六、在Mybatis配置文件中添加映射文件
將編寫(xiě)好的userMapper.xml添加到mybatis.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.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/數(shù)據(jù)庫(kù)名字?/useUnicode=true&characterEncoding=utf8&useSSL=false" />
<property name="username" value="root" />
<property name="password" value="數(shù)據(jù)庫(kù)密碼" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="mapper/userMapper.xml"/>
</mappers>
</configuration>
七、編寫(xiě)增刪改查代碼測(cè)試
import com.hongda.space.entity.User;
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.Reader;
/**
* @ClassName Test01
* @Description TODO
* @Author whd
* @Date 2021/3/19 14:45
*/
public class Test01 {
public static void main(String[] args) throws IOException {
//1.讀取配置文件
Reader reader = Resources.getResourceAsReader("conf.xml");
//2.獲取sqlSessionFactory
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(reader);
//3.獲取sqlsession對(duì)象 執(zhí)行sql
SqlSession session = sessionFactory.openSession();
//4.執(zhí)行sql
User user = session.selectOne("tuser.getUserById", 1);
System.out.println(user);
int i = session.insert("tuser.insertUser",new User(null, "小劉", "4545"));
System.out.println(i+"------------");
session.commit();
}
}
結(jié)果:

一些錯(cuò)誤
編寫(xiě)中可能碰到的錯(cuò)誤
1.Mapped Statements collection does not contain…

2.The server time zone value'XXXXXXXXX' is…
在Mybatis配置文件中的jdbc連接地址后面拼接serverTimezone=Asia/Shanghai

總結(jié)
到此這篇關(guān)于mybatis新手快速入門(mén)以及一些錯(cuò)誤的文章就介紹到這了,更多相關(guān)mybatis快速入門(mén)及錯(cuò)誤內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java?Spring?boot實(shí)現(xiàn)生成二維碼
大家好,本篇文章主要講的是Java?Spring?boot實(shí)現(xiàn)生成二維碼,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話(huà)記得收藏一下2022-02-02
Java中可以實(shí)現(xiàn)負(fù)載均衡的算法詳解
這篇文章主要介紹了Java中可以實(shí)現(xiàn)負(fù)載均衡的算法詳解,在Java中,有多種算法可以實(shí)現(xiàn)負(fù)載均衡,下面是兩個(gè)常見(jiàn)的算法示例,隨機(jī)算法和輪詢(xún)算法,需要的朋友可以參考下2023-08-08
Java基礎(chǔ)知識(shí)精通數(shù)組的使用
數(shù)組對(duì)于每一門(mén)編程語(yǔ)言來(lái)說(shuō)都是重要的數(shù)據(jù)結(jié)構(gòu)之一,當(dāng)然不同語(yǔ)言對(duì)數(shù)組的實(shí)現(xiàn)及處理也不盡相同。Java?語(yǔ)言中提供的數(shù)組是用來(lái)存儲(chǔ)固定大小的同類(lèi)型元素2022-04-04
SpringBoot校園綜合管理系統(tǒng)實(shí)現(xiàn)流程分步講解
這篇文章主要介紹了SpringBoot+Vue實(shí)現(xiàn)校園綜合管理系統(tǒng)流程分步講解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2022-09-09
Spring boot 整合CXF開(kāi)發(fā)web service示例
這篇文章主要介紹了Spring boot 整合CXF開(kāi)發(fā)web service示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-05-05
淺談spring和spring MVC的區(qū)別與關(guān)系
下面小編就為大家?guī)?lái)一篇淺談spring和spring MVC的區(qū)別與關(guān)系。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-04-04
Java中LocalDate的詳細(xì)方法舉例總結(jié)
這篇文章主要給大家介紹了關(guān)于Java中LocalDate詳細(xì)方法舉例的相關(guān)資料,LocalDate主要是用來(lái)處理日期的類(lèi),文中通過(guò)代碼示例介紹的非常詳細(xì),需要的朋友可以參考下2023-09-09

