MyBatis

#千鋒#

1.添加mybatis的依賴,目前版本是3.4.6,除此之外還有junit和mysql的驅(qū)動(dòng)依賴分別引入進(jìn)來

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="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.zy</groupId>

? ? <artifactId>NZMybatisTest</artifactId>

? ? <version>1.0.0-SNAPSHOT</version>

? ? <dependencies>

? ? ? ? <dependency>

? ? ? ? ? ? <groupId>mysql</groupId>

? ? ? ? ? ? <artifactId>mysql-connector-java</artifactId>

? ? ? ? ? ? <version>5.1.44</version>

? ? ? ? </dependency>

? ? ? ? <dependency>

? ? ? ? ? ? <groupId>junit</groupId>

? ? ? ? ? ? <artifactId>junit</artifactId>

? ? ? ? ? ? <version>4.12</version>

? ? ? ? </dependency>

? ? ? ? <dependency>

? ? ? ? ? ? <groupId>org.mybatis</groupId>

? ? ? ? ? ? <artifactId>mybatis</artifactId>

? ? ? ? ? ? <version>3.4.6</version>

? ? ? ? </dependency>

? ? </dependencies>

</project>

2.在resources目錄下新增一個(gè)mybatis的配置文件,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">

<!--

? ? 該配置文件中包含一個(gè)configuration節(jié)點(diǎn)

? ? ? ? 里面有配置信息 分別是環(huán)境和映射

? ? ? ?  其中環(huán)境里有datasource,里面有我們熟悉的連接數(shù)據(jù)庫的四個(gè)字符串

-->

<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/*"/>

? ? ? ? ? ? ? ? <property name="username" value="root"/>

? ? ? ? ? ? ? ? <property name="password" value="***"/>

? ? ? ? ? ? </dataSource>

? ? ? ? </environment>

? ? </environments>

? ? <mappers>

? ? ? ? <mapper resource="com/zy/pojo/UserMapper.xml"/>

? ? </mappers>

</configuration>

3.在com.zy.pojo的包下創(chuàng)建User.java文件

package com.zy.pojo;

public class User {

? ? private int uid;

? ? private String username;

? ? private String password;

? ? private int age;

? ? private String addr;

? ? @Override

? ? public String toString() {

? ? ? ? return "User{" +

? ? ? ? ? ? ? ? "uid=" + uid +

? ? ? ? ? ? ? ? ", username='" + username + '\'' +

? ? ? ? ? ? ? ? ", password='" + password + '\'' +

? ? ? ? ? ? ? ? ", age=" + age +

? ? ? ? ? ? ? ? ", addr='" + addr + '\'' +

? ? ? ? ? ? ? ? '}';

? ? }

? ? public int getUid() {

? ? ? ? return uid;

? ? }

? ? public void setUid(int uid) {

? ? ? ? this.uid = uid;

? ? }

? ? public String getUsername() {

? ? ? ? return username;

? ? }

? ? public void setUsername(String username) {

? ? ? ? this.username = username;

? ? }

? ? public String getPassword() {

? ? ? ? return password;

? ? }

? ? public void setPassword(String password) {

? ? ? ? this.password = password;

? ? }

? ? public int getAge() {

? ? ? ? return age;

? ? }

? ? public void setAge(int age) {

? ? ? ? this.age = age;

? ? }

? ? public String getAddr() {

? ? ? ? return addr;

? ? }

? ? public void setAddr(String addr) {

? ? ? ? this.addr = addr;

? ? }

}

4.在com/zy/pojo的目錄下創(chuàng)建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">

<mapper namespace="com.zy.pojo.UserMapper">

? ? <select id="selectUser" resultType="com.zy.pojo.User">

? ? select * from user

? </select>

</mapper>

5.TestUser.java

package com.zy.test;

import com.zy.pojo.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 org.junit.Test;

import java.io.IOException;

import java.sql.Connection;

import java.util.List;

public class TestUser {

? ? @Test

? ? public void testGetAllUsers(){

? ? ? ? /**

? ? ? ?? *? 1.? 使用mybatis的配置文件以及SqlSessionFactoryBuilder建造者模式創(chuàng)建SqlSessionFactory對(duì)象

? ? ? ?? *? 2.? 使用SqlSessionFactory對(duì)象的openSession()方法來得到一個(gè)SqlSession對(duì)象,用該對(duì)象即可完成對(duì)象的所有的crud操作

? ? ? ?? *? 3.? 使用SqlSession對(duì)象來完成crud操作

? ? ? ?? *? 4.? 關(guān)閉資源

? ? ? ?? *

? ? ? ?? */

? ? ? ? try {

? ? ? ? ? ? SqlSessionFactory sf = new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream("mybatis.xml"));

? ? ? ? ? ? SqlSession session = sf.openSession();

? ? ? ? ? ? /**

? ? ? ? ? ?? * session的crud方法("namespace.id");整個(gè)項(xiàng)目中的namespace.id必須唯一

? ? ? ? ? ?? */

? ? ? ? ? ? List<User> users = session.selectList("com.zy.pojo.UserMapper.selectUser");

? ? ? ? ? ? for (User u : users) {

? ? ? ? ? ? ? ? System.out.println(u);

? ? ? ? ? ? }

? ? ? ? ? ? if(session != null){

? ? ? ? ? ? ? ? session.close();

? ? ? ? ? ? ? ? session = null;

? ? ? ? ? ? }

? ? ? ? } catch (IOException e) {

? ? ? ? ? ? e.printStackTrace();

? ? ? ? }

? ? }

}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容