MyBatis基於xml檔案的 CURD案例
提示:文章寫完後,目錄可以自動生成,如何生成可參考右邊的幫助文件
MyBatis基於xml檔案的 CURD案例
一、整體的專案結構
1.展開(整體是一個很簡單的專案結構,多餘的東西跟此案例無關的我打上了馬賽克)
1.src下的conf.xml檔案
2.com.beans 實體類包
3.com.mapping 對映檔案包
4.com.mybatis.utils 工具包
5.com.test 測試包
以及專案下lib資料夾(放jar包用的)
二、詳細程式碼
1.src下的conf.xml檔案
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>
<settings>
<!-- 開啟log4j的標籤-->
<setting name="logImpl" value="STDOUT_LOGGING" />
</settings>
<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/wy" />
<property name="username" value="root" />
<property name="password" value="root" />
</dataSource>
</environment>
</environments>
<mappers>
<!-- 註冊userMapper.xml檔案,
userMapper.xml位於me.gacl.mapping這個包下,所以resource寫成me/gacl/mapping/userMapper.xml-->
<mapper resource="com/mapping/studentMapper.xml"/>
</mappers>
</configuration>
2.com.beans 實體類包
Student實體類
package com.beans;
import java.io.Serializable;
import java.util.List;
public class Student implements Serializable{
private Integer id;
private String name;
private Integer age;
private String gender;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
@Override
public String toString() {
return "Student [id=" + id + ", name=" + name + ", age=" + age + ", gender=" + gender
+ "]";
}
}
3.com.mapping 對映檔案包
studentMapper.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">
<!-- namespace自定義的姓名空間,一般以路徑加上檔名命名 -->
<mapper namespace="com.mapping.studentMapper">
<!-- id是自定義的名字,相當於方法名 parameterType方法傳參的型別 -->
<insert id="insertStudent" parameterType="com.beans.Student">
INSERT INTO student (NAME,age,gender) value(#{name},#{age},#{gender})
</insert>
<delete id="deleteStudent" parameterType="int">
DELETE FROM student where id=#{id}
</delete>
<update id="updateStudent" parameterType="com.beans.Student">
UPDATE student set name=#{name},age=#{age},gender=#{gender} WHERE id=#{id}
</update>
<!-- 根據id查詢使用者 resultType返回值的型別-->
<select id="selectStudent" parameterType="int" resultType="com.beans.Student">
select * from student where id=#{id}
</select>
<!-- 查詢所有使用者 -->
<select id="getAllStudent" resultType="com.beans.Student">
select * from student
</select>
</mapper>
4.com.mybatis.utils 工具包
MybatisUtils.java
package com.mybatis.utils;
import java.io.InputStream;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
public class MybatisUtils {
public static SqlSession getSqlSession(Boolean b) {
//mybatis的配置檔案
String resource ="conf.xml";
//使用類載入器載入mybatis的配置檔案(它也載入關聯的對映檔案)
InputStream is = MybatisUtils.class.getClassLoader().getResourceAsStream(resource);
//構建sqlSession的工廠
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(is);
SqlSession session = null;
if(b) {
session = sessionFactory.openSession(true);
}
return session;
}
public static SqlSession getSqlSession() {
//mybatis的配置檔案
String resource ="conf.xml";
//使用類載入器載入mybatis的配置檔案(它也載入關聯的對映檔案)
InputStream is = MybatisUtils.class.getClassLoader().getResourceAsStream(resource);
//構建sqlSession的工廠
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(is);
SqlSession session = sessionFactory.openSession();
return session;
}
}
5.com.test 測試包
test.java
package com.test;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import com.beans.Student;
import com.beans.Teacher;
import com.mybatis.utils.MybatisUtils;
public class test {
public static void main(String[] args) {
SqlSession s=MybatisUtils.getSqlSession(true);
// s.insert
// s.delete
// s.update
// s.selectOne
// s.selectList
//五個基本方法測試就行了
}
}
相關文章
- 【mybatis xml】資料層框架應用--Mybatis 基於XML對映檔案實現資料的CRUDMyBatisXML框架
- 基於 DOM 的 XML 檔案解析類XML
- mybatis xml 檔案中like模糊查詢MyBatisXML
- mybatis的全域性配置檔案SqlMapConfig.xml解析MyBatisSQLXML
- Mybatis 學習筆記(一)——配置檔案SqlMapConfig.xml和對映檔案Mapper.xmlMyBatis筆記SQLXMLAPP
- mybatis中mapper.xml檔案引數問題MyBatisAPPXML
- Mybatis 基礎xml對映MyBatisXML
- Mybatis基礎:Mybatis對映配置檔案,Mybatis核心配置檔案,Mybatis傳統方式開發MyBatis
- xml檔案XML
- 基於XML的DIXML
- c#(解析xml檔案基礎方法)C#XML
- SpringBoot邊學邊用(二)SpringBoot 整合 Mybatis(xml檔案形式)Spring BootMyBatisXML
- xml是什麼格式的檔案 xml檔案怎麼開啟XML
- Mybatis學習筆記 2:Mybatis 基本的CURD操作MyBatis筆記
- mybatis原始碼配置檔案解析之五:解析mappers標籤(解析XML對映檔案)MyBatis原始碼APPXML
- qt 寫入xml檔案例項QTXML
- Python xml.etree.ElementTree讀寫xml檔案例項PythonXML
- 最全MyBatis中XML對映檔案(Mapper)標籤分析及示例MyBatisXMLAPP
- 還在寫CURD?試試這款基於mybatis-plus的springboot程式碼生成器MyBatisSpring Boot
- AndroidMainfest.xml檔案AndroidAIXML
- python XML 檔案解析PythonXML
- jdom解析xml檔案XML
- C# XML基礎入門(XML檔案內容增刪改查清)C#XML
- Spring基於XML方式的使用SpringXML
- Mybatis入門——基礎操作(基於springboot專案)MyBatisSpring Boot
- java 語音用xml檔案實現圖形介面 xml檔案JavaXML
- 【SSM框架整合】專案xml檔案、properties等檔案的配置SSM框架XML
- Maven的settings.xml檔案配置MavenXML
- 關於 Mybatis mapping.xml中的 StatementType 知識點MyBatisAPPXML
- 搭建MyBatis開發環境及基本的CURDMyBatis開發環境
- 使用 Java 解析XML檔案JavaXML
- Go xml檔案處理GoXML
- 使用tk.mybatis快速開發curdMyBatis
- 精盡MyBatis原始碼分析 - MyBatis初始化(二)之載入 Mapper 介面與 XML 對映檔案MyBatis原始碼APPXML
- 檔案上傳之三基於flash的檔案上傳
- 檔案包含-基於Pikachu的學習
- Maven的pom.xml檔案詳解MavenXML
- java去除xml檔案中的標籤JavaXML