spring和mybatis整合:使用xml方式
生活随笔
收集整理的這篇文章主要介紹了
spring和mybatis整合:使用xml方式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- spring和mybatis整合:使用xml方式
- 1. 創建數據庫
- 2. 創建工程,pom.xml文件如下:
- 3. 依賴下載地址如下:
- 4. 配置mybatis的全局配置,在resources目錄中加入mybatis-configuration.xml文件
- 5. 定義表所對應的實體類,一般在bean目錄下,或者pojo目錄下
- 6. 定義操作 t_user 表的sql映射文件UserMapper.xml
- 7. 在mybatis-configuration.xml配置文件中注冊UserMapper.xml文件
- 8. 文件結構
spring和mybatis整合:使用xml方式
1. 創建數據庫
DROP DATABASE IF EXISTS `crm`; CREATE DATABASE `crm`; use `crm`; DROP TABLE IF EXISTS `t_user`; CREATE TABLE `t_user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `user_tel` varchar(11) COLLATE utf8mb4_unicode_ci NOT NULL, `username` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, `password` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL, `registration_time` datetime DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB CHARSET=utf8;INSERT INTO `t_user` VALUES ('1', '13880000001', '金庸', '0b4e7a0e5fe84ad35fb5f95b9ceeac79', '2018-12-15 06:54:16'),('2', '13880000002', '張三豐', '875f26fdb1cecf20ceb4ca028263dec6', '2018-12-15 06:54:16'), ('3', '13880000003', '張無忌', 'c1f68ec06b490b3ecb4066b1b13a9ee9', '2018-12-15 06:54:16'), ('4', '13880000004', '黃蓉', '980ac217c6b51e7dc41040bec1edfec8', '2018-12-15 06:54:16'), ('5', '13880000005', '郭靖', 'cd87cd5ef753a06ee79fc75dc7cfe66c', '2018-12-15 06:54:16'),('6', '13880000006', '周伯通', 'eed8cdc400dfd4ec85dff70a170066b7', '2018-12-15 06:54:16'),('7', '13880000006', '楊過', '594f803b380a41396ed63dca39503542', '2018-12-17 17:05:40');2. 創建工程,pom.xml文件如下:
<?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.yingside</groupId><artifactId>mybatisdemo</artifactId><version>1.0-SNAPSHOT</version><dependencies><!--mysql數據庫驅動包--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.47</version></dependency><!--引入mybatis包--><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.4.6</version></dependency><!--引入junit測試包--><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency></dependencies></project>3. 依賴下載地址如下:
https://mvnrepository.com/
4. 配置mybatis的全局配置,在resources目錄中加入mybatis-configuration.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://127.0.0.1:3306/crm"/><property name="username" value="root"/><property name="password" value="123456"/></dataSource></environment></environments></configuration>5. 定義表所對應的實體類,一般在bean目錄下,或者pojo目錄下
package com.yingside.bean;public class User { private int id; private String userTel; private String username; private String password; private String registrationTime; public int getId() { return id;} public void setId(int id) { this.id = id;} public String getUserTel() { return userTel;} public void setUserTel(String userTel) { this.userTel = userTel;} 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 String getRegistrationTime() { return registrationTime;} public void setRegistrationTime(String registrationTime) { this.registrationTime = registrationTime;} @Overridepublic String toString() { return "User{" +"id=" + id +", userTel='" + userTel + '\'' +", username='" + username + '\'' +", password='" + password + '\'' + ", registrationTime='" + registrationTime + '\'' + '}';} }6. 定義操作 t_user 表的sql映射文件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"> <!-- 這個XML文件其實就相當于我們三層架構中的DAO層的實現類xxxDaoImpl,如果拿它跟具有相同功能的 JDBC 代碼進行對比,你會立即發現省掉了將近 95% 的代碼。也就是說,有了這個配置文件,至少之前原始JDBC中經常出現的Connection,PreparedStatement,ResultSet這些接口不需要你再創建了當然要編寫這個文件,需要對<mapper>標簽中出現的屬性和標簽都要熟悉,不過沒有必要去一一熟悉,用到什么我們再去查詢就行了 --> <!-- 為這個mapper指定一個唯一的namespace,namespace的值習慣上設置成包名+sql映射文件名,這樣就能夠保證namespace的值是唯一的 例如namespace="om.yingside.mapper.UserMapper"就是com.yingside.mapper(包名)+UserMapper(UserMapper.xml文件去除后綴)--> <mapper namespace="com.yingside.mapper.UserMapper"><!--根據 id 查詢 user 表中的數據id:唯一標識符,此文件中的id值不能重復,簡單來說,就是DAO層中的方法名resultType:返回值類型,一條數據庫記錄也就對應實體類的一個對象,注意現在要跟上全名(包名+類名)parameterType:參數類型,也就是查詢條件的類型#{}表示一個占位符即?,在使用時不需要關心參數值的類型,mybatis會自動進行java類型和jdbc類型的轉換。--><select id="getUser" parameterType="int"resultType="com.yingside.bean.User">select * from t_user where id=#{id} </select> </mapper>7. 在mybatis-configuration.xml配置文件中注冊UserMapper.xml文件
mybatis-configuration.xml文件的<configuration></configuration>標簽中加入<mappers></mappers>標簽
<!-- 注冊UserMapper.xml文件,UserMapper.xml位于com.yingside.mapper這個包下,所以resource寫成com/yingside/mapper/UserMapper.xml--><mappers><mapper resource="com/yingside/mapper/UserMapper.xml" /></mappers>8. 文件結構
總結
以上是生活随笔為你收集整理的spring和mybatis整合:使用xml方式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: springboot 和 mybatis
- 下一篇: 语音特征提取: MFCC的理解