Mybatis-入门
生活随笔
收集整理的這篇文章主要介紹了
Mybatis-入门
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
代碼下載https://www.lanzouw.com/i28Jhw80b3e
這里使用的數(shù)據(jù)庫是MySQL。這博客只演示了查詢操作,其他操作會在其他的博客中繼續(xù)寫
先看目錄結(jié)構(gòu),再看下面的內(nèi)容,更容易理解。
1、創(chuàng)建數(shù)據(jù)庫mybatis,并在數(shù)據(jù)庫中創(chuàng)建User表
說明:創(chuàng)建表格User,包含一個自增列、姓名、年齡, 數(shù)據(jù)庫引擎使用INNODB
DROP DATABASE IF EXISTS mybatis; CREATE DATABASE mybatis; USE mybatis; CREATE TABLE User(id int(11) NOT NULL AUTO_INCREMENT,name VARCHAR(32) NOT NULL,age int(3),PRIMARY KEY (id))ENGINE=INNODB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;2、導(dǎo)入數(shù)據(jù)
USE mybatis; INSERT INTO User(name, age) VALUES ("張三", 12), ("李四", 14), ("王華", 10), ("lucy", 20), ("mary", 22);3、創(chuàng)建maven項(xiàng)目, 導(dǎo)入mysql驅(qū)動和mybatis坐標(biāo),并創(chuàng)建實(shí)體類User
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.12</version></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.5.7</version></dependency> package com.changqing.pojo;//實(shí)體類,對應(yīng)數(shù)據(jù)表User public class User {private int id;private String name;private int age;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 int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic String toString() {return "User{" +"id=" + id +", name='" + name + '\'' +", age=" + age +'}';} }4、創(chuàng)建mybatis工具類MybatisUtils,用于返回SqlSession對象
package com.changqing.utils;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.InputStream;public class MybatisUtils {private static SqlSessionFactory sqlSessionFactory;static {try{String resource = "mybatis-config.xml";InputStream inputStream = Resources.getResourceAsStream(resource);sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);}catch (Exception e){e.printStackTrace();}}public static SqlSession getSqlSession(){return sqlSessionFactory.openSession();} }5、創(chuàng)建UserDao接口和映射文件UserMapper.xml
5.1 創(chuàng)建UserDao接口:在com.changqing.dao包先創(chuàng)建UserDao接口,定義查詢的方法。
package com.changqing.dao;import com.changqing.pojo.User;import java.util.List;public interface UserDao {public List<User> getUserList(); }5.2 創(chuàng)建UserMapper.xml文件:在resources目錄下,創(chuàng)建文件夾mapper, 在mapper目錄下創(chuàng)建UserMapper.xml文件用于綁定UserDao接口。綁定UserDao后,這個文件的實(shí)際作用相當(dāng)于UserDao的實(shí)現(xiàn)類。
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!--這里的namesapce的值位UserDao,即將這個UserMapper配置文件綁定到UserDao接口上,相當(dāng)于這個xml文件實(shí)現(xiàn)UserDao接口, 其中的id對應(yīng)UserDao中的方法名--> <mapper namespace="com.changqing.dao.UserDao"><select id="getUserList" resultType="com.changqing.pojo.User">select * from User</select> </mapper>6、創(chuàng)建mybatis的主配置文件mybatis-config.xml
在resouces目錄下創(chuàng)建,這樣編譯時,編譯器會自動將配置文件復(fù)制到target目錄中。下面的配置文件包含了數(shù)據(jù)源 datasource和映射器mapper。請修改下面的用戶名和密碼為自己的mysql登錄賬戶。
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"> <!--configuration核心配置文件--> <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/mybatis?userSSL=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC"/><property name="username" value="root"/><property name="password" value="199604"/></dataSource></environment></environments><mappers><!--將UserMapper注冊到mybatis中,--><mapper resource="mapper/UserMapper.xml"/></mappers> </configuration>7、編寫測試類
package test;import com.changqing.dao.UserDao; import com.changqing.pojo.User; import com.changqing.utils.MybatisUtils; import org.apache.ibatis.session.SqlSession; import org.junit.jupiter.api.Test;import java.util.List;public class TestUser {@Testpublic void testUser(){//獲取SqlSessionSqlSession sqlSession = MybatisUtils.getSqlSession();UserDao userDao = sqlSession.getMapper(UserDao.class);List<User> userList = userDao.getUserList();for(User user: userList){System.out.println(user);}sqlSession.close();} }7、結(jié)果
總結(jié)
以上是生活随笔為你收集整理的Mybatis-入门的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 3、Spring配置类
- 下一篇: Mybatis-增删改查模糊查询分页注解