真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Springmvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫

本篇文章給大家分享的是有關Spring mvc使用mybatis如何實現(xiàn)連接并操作MySQL數(shù)據(jù)庫,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

站在用戶的角度思考問題,與客戶深入溝通,找到莎車網(wǎng)站設計與莎車網(wǎng)站推廣的解決方案,憑借多年的經驗,讓設計與互聯(lián)網(wǎng)技術結合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:成都網(wǎng)站設計、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名與空間、雅安服務器托管、企業(yè)郵箱。業(yè)務覆蓋莎車地區(qū)。

一、web.xml配置

我們都知道java ee的項目啟動的第一件事就是讀取web.xml,spring mvc 的web.xml我在上一篇文章中也做了詳細講解,不懂的可以回頭看看,講解的這個項目源碼我也會放到github上,也可以去那里看看,這里就不做介紹了。

web.xml 配置


 contextConfigLocation
 classpath:/context.xml



 org.springframework.web.context.ContextLoaderListener



 dispatcherServlet
 org.springframework.web.servlet.DispatcherServlet
 1

 contextConfigLocation
 classpath:external-servlet.xml



 dispatcherServlet
 /



 encodingFilter
 org.springframework.web.filter.CharacterEncodingFilter

 encoding
 UTF-8


 forceEncoding
 true



 encodingFilter
 /*

二、spring(context.xml) 上下文配置

這個配置文件可以說是服務器容器第二個要讀取的了,這里配置了spring啟動時掃描的基礎包路徑、外部配置的屬性文件的導入、需要連接的數(shù)據(jù)庫的配置、mybatis 和 spring 的整合、開頭我們說到的 mybatis 日期插件和分頁插件也是在這里配置、還有就是mybatis掃描的實體包及其 mapper 文件位置了。

context.xml 配置







 
 
 
 



 
 
 
 
  
  
  
  
 
 



 
 



 
 
  
 
 

三、spring 控制器配置

這里配置的是控制器所在的位置,及其支持的請求類型和編碼。

external-servlet.xml 配置




 
 
  
  
   text/html;charset=UTF-8
  
  
  
 
 

配置信息就是以上三個了,接下來我們來看看具體的代碼,

四、代碼講解

1、java代碼講解,以下不做排序,只是按編輯器顯示順序排列講解。(以下內容均在java.com.qbian包下)

 common |
 annotation |
 @interface Now : 插入|更新數(shù)據(jù)的日期注解。
 @interface UUID :插入數(shù)據(jù)的uuid注解。
 controller |
 ExternalController.class :核心控制器,攔截所有請求,異常處理,跨域設置等功能。
 dao |
 interface StudentDao :使用例子,crud 共通方法。
 dto |
 PageInfoDto.class :分頁使用的基礎dto對象。
 ResponseDto.class :響應數(shù)據(jù)的基本模型。
 entity |
 Student.class :使用例子,自定義注解的使用。
 enums |
 enum MessageEnum :統(tǒng)一的返回狀態(tài)碼及描述信息。
 exception |
 ExternalServiceException.class :自定義異常,業(yè)務相關都拋出該異常對象。
 factory |
 BeanFactoryUtil.class :根據(jù)bean name獲取spring管理的bean實例。
 hadle |
 ExceptionHandle.class :spring自帶的統(tǒng)一異常捕獲處理。
 plugin |
 DatePlugin.class :自定義mybatis日期插件。
 PagePlugin.class :自定義mybatis分頁插件。
 PropertiesConfigurer.class :將外部配置的屬性文件讀取到 spring 容器中統(tǒng)一管理。
 service |
 interface IbaseServie :基礎的service接口。
 BaseService.class :基礎的service抽象類。
 TokenService.class :鑒權token服務類。
 util |
 CheckUtil.class :請求信息校驗相關工具類。
 DateUtil.class :日期相關工具類。
 ResponseUtil.class :響應信息工具類。
 SecondsFormatSerializer.class :java.util.Date類型轉時間戳工具類。
 TimestampSecondsFormatSerializer.class :java.sql.Timestamp類型轉時間戳工具類。
 StringUtil.class :字符串相關工具類。
other |
 dao |
 interface StudentExtDao :使用例子,業(yè)務相關crud操作。
 dto |
 QueryStudentSexPageDto.class :根據(jù)學生性別分頁查詢返回對象dto。
 StudentPageDto.class :根據(jù)學生性別分頁查詢封裝的對象。
 service |
 AddStudentService.class :插入學生數(shù)據(jù)接口。
 DeleteStudentService.class :刪除學生數(shù)據(jù)接口。
 FindStudentService.class :查詢學生數(shù)據(jù)接口。
 UpdateStudentService.class :更新學生數(shù)據(jù)接口。
 QueryStudentBySexService.class :根據(jù)學生性別分頁查詢接口。

2、mybatis的 mapper.xml講解(以下內容均在resources/com/qbian文件夾下)

common |
 dao |
 StudentDao.xml :對應common.dao.StudentDao接口。
other |
 dao |
 StudentExtDao.xml :對應other.dao.StudentExtDao接口。

五、功能演示

1、token校驗

這里的token我寫死在代碼里了,123456表示校驗成功。我們先用插入數(shù)據(jù)接口測試一下,傳個錯誤的token,如下圖:

Spring mvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫

授權token校驗

2、請求參數(shù)校驗

我們來看看插入數(shù)據(jù)接口還需要校驗哪些值。

// 校驗請求參數(shù)
CheckUtil.checkEmpty(params, "token", "sex", "age");
// 校驗 token
tokenService.checkUserLogin(params.getString("token"));
Student student = JSONObject.parseObject(params.toJSONString(), Student.class);
studentDao.insert(student);
return ResponseUtil.success();

然后我們少傳age字段試一下:

Spring mvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫

請求字段校驗

3、插入數(shù)據(jù)

在插入數(shù)據(jù)之前我們先看看數(shù)據(jù)庫里都有哪些數(shù)據(jù):

Spring mvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫

初始化數(shù)據(jù)庫中的值

從上圖可以看出,數(shù)據(jù)庫中沒有任何數(shù)據(jù)。我們來執(zhí)行下插入接口。

Spring mvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫

測試插入接口

我們再來看下數(shù)據(jù)庫:

Spring mvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫

調用插入接口后

數(shù)據(jù)庫已經有數(shù)據(jù)了。

4、查詢數(shù)據(jù)

根據(jù)上一條數(shù)據(jù)的ID查詢

Spring mvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫

調用查詢接口

剛插入的數(shù)據(jù)我們也查詢出來了。

5、更新數(shù)據(jù)

更新一下查詢出來的數(shù)據(jù):

Spring mvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫

調用更新接口

然后我們再查詢一次該條數(shù)據(jù)

Spring mvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫

更新后再次查詢

可以看到性別和年齡都更新了,并且更新日期也是最新的了。

6、分頁查詢

先來看一下代碼:

// 校驗請求參數(shù)
CheckUtil.checkEmpty(params, "token", "sex", "pageNo", "pageSize");
// 校驗 token
 tokenService.checkUserLogin(params.getString("token"));
// 根據(jù)性別分頁查詢 Student,查詢總數(shù)會自動封裝到pageDto對象上
QueryStudentSexPageDto pageDto = JSONObject.parseObject(params.toJSONString(), QueryStudentSexPageDto.class);
List students = studentExtDao.queryBySexWithPage(pageDto);
StudentPageDto studentPageDto = new StudentPageDto();
// 查詢總數(shù)會自動封裝到pageDto對象上
studentPageDto.setTotalSize(pageDto.getTotalSize());
studentPageDto.setStudents(students);
 return ResponseUtil.success(studentPageDto);

分頁查詢之前我們想要導入多一點測試數(shù)據(jù)。

Spring mvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫

分頁前測試數(shù)據(jù)

可以看到數(shù)據(jù)庫目前有十條測試數(shù)據(jù),男生有六條,年齡分別為19~24。好了,我們開始調用分頁查詢接口:

Spring mvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫

調用分頁查詢接口返回結果

格式化一下返回數(shù)據(jù):

Spring mvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫

分頁查詢返回結果整理

這和我們直接查詢數(shù)據(jù)庫看到的一樣。

7、刪除數(shù)據(jù)

最后就是刪除數(shù)據(jù)接口了,我們將第一條測試數(shù)據(jù)刪除掉。

Spring mvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫

調用刪除接口返回結果

然后我們在查詢一下是否真的刪除了。

Spring mvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫

刪除后查詢

數(shù)據(jù)已經被刪除了。

以上就是Spring mvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


分享題目:Springmvc使用mybatis如何實現(xiàn)連接并操作mysql數(shù)據(jù)庫
文章源于:http://weahome.cn/article/ghpjss.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部