欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mybatis中注入執(zhí)行sql查詢、更新、新增及建表語句案例代碼

 更新時間:2023年02月13日 10:09:24   作者:專注寫bug  
這篇文章主要介紹了Mybatis中注入執(zhí)行sql查詢、更新、新增以及建表語句,主要說明一個另類的操作,注入sql,并使用mybatis執(zhí)行,結(jié)合案例代碼詳解講解,需要的朋友可以參考下

前言

在平時的項目開發(fā)中,mybatis應(yīng)用非常廣泛,但一般都是直接CRUD類型sql的執(zhí)行。

本片博客主要說明一個另類的操作,注入sql,并使用mybatis執(zhí)行。

案例

dao和mapper編寫

三層架構(gòu)中,dao層主要用于對數(shù)據(jù)庫的操作。當(dāng)項目配置好數(shù)據(jù)庫的連接配置后,在dao層中可以編寫如下的接口

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

@Mapper
@Repository
public interface CommonSqlMapper {
	/**
     * 根據(jù)注入的sql,新增數(shù)據(jù)
     * @param sql
     */
    void insertData(@Param(value = "sql") String sql);
	
	/**
     * 根據(jù)注入的sql,更新數(shù)據(jù)
     * @param sql
     * @return
     */
    Integer updateData(@Param(value = "sql") String sql);
	
	/**
     * 依據(jù)條件,查詢滿足條件的所有數(shù)據(jù)集信息
     * @param selectSql
     * @return
     */
    List<MakeUpDataPo> queryData(@Param(value = "selectSql")  String selectSql);
}

XXXmapper.xml編寫

編寫一個與CommonSqlMapper.java與之對應(yīng)映射的CommonSqlMapper.xml文件,其中可以對對應(yīng)的方法,編寫如下的sql:

<?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.xxx.xxx.CommonSqlMapper">
	<!-- 修改 -->
    <update id="updateData" >
        ${sql}
    </update>

    <!-- 新增 -->
    <insert id="insertData">
        ${sql}
    </insert>
	<!-- 查詢所有 -->
    <select id="queryData" resultType="com.xxx.xxx.po.MakeUpDataPo">
        ${selectSql}
    </select>
	
</mapper>

編寫業(yè)務(wù)層代碼,進行注入調(diào)用

@Service
public class TestService{
	@Autowired
	private CommonSqlMapper commonSqlMapper;
	
	public void test(){
		String sql = "select * from xj_test where name = 'xj'";
		commonSqlMapper.queryData(sql);
	}
}

額外擴展–創(chuàng)建表語句

如果想要使用mybatis執(zhí)行建表sql,此時可以這么寫:

	/**
     * 新增數(shù)據(jù)表
     * @param tableName 表名稱
     * @param rowSql 表字段拼接sql
     */
void createTable(@Param(value = "tableName") String tableName,@Param(value = "rowSql") String rowSql);

對應(yīng)的xxxx.xml中,編寫如下語句:

<!-- 創(chuàng)建表 -->
<insert id="createTable" statementType="STATEMENT">
    create table ${tableName} (
        id VARCHAR2(32) NOT NULL,
        ${rowSql},
        PRIMARY KEY (id)
    )
</insert>

【注意】

這里并不能直接進行 ${cresteTableSql} 的執(zhí)行,必須寫成上面的這種方式,否則將不能成功!

到此這篇關(guān)于Mybatis中注入執(zhí)行sql查詢、更新、新增以及建表語句的文章就介紹到這了,更多相關(guān)Mybatis中注入執(zhí)行sql內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java發(fā)送短信的實現(xiàn)步驟

    java發(fā)送短信的實現(xiàn)步驟

    下面小編就為大家?guī)硪黄猨ava發(fā)送短信的實現(xiàn)步驟。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • Java Gradle項目中的資源正確獲取方式

    Java Gradle項目中的資源正確獲取方式

    這篇文章主要介紹了Java Gradle項目中的資源正確獲取方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • Mybatis日期格式自動轉(zhuǎn)換需要用到的兩個注解說明

    Mybatis日期格式自動轉(zhuǎn)換需要用到的兩個注解說明

    這篇文章主要介紹了Mybatis日期格式自動轉(zhuǎn)換需要用到的兩個注解說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • java固定大小隊列的幾種實現(xiàn)方式詳解

    java固定大小隊列的幾種實現(xiàn)方式詳解

    隊列的特點是節(jié)點的排隊次序和出隊次序按入隊時間先后確定,即先入隊者先出隊,后入隊者后出隊,這篇文章主要給大家介紹了關(guān)于java固定大小隊列的幾種實現(xiàn)方式,需要的朋友可以參考下
    2021-07-07
  • Java程序執(zhí)行過程及內(nèi)存機制詳解

    Java程序執(zhí)行過程及內(nèi)存機制詳解

    本講將介紹Java代碼是如何一步步運行起來的,還會介紹Java程序所占用的內(nèi)存是被如何管理的:堆、棧和方法區(qū)都各自負責(zé)存儲哪些內(nèi)容,感興趣的朋友跟隨小編一起看看吧
    2020-12-12
  • intelij?idea?2023創(chuàng)建java?web項目的完整步驟

    intelij?idea?2023創(chuàng)建java?web項目的完整步驟

    這篇文章主要給大家介紹了關(guān)于intelij?idea?2023創(chuàng)建java?web項目的完整步驟,該教學(xué)主要針對各位剛剛接觸javaweb開發(fā)的小伙伴,各位學(xué)習(xí)java的朋友也難免會經(jīng)歷這個階段,需要的朋友可以參考下
    2023-10-10
  • springboot統(tǒng)一異常處理(返回json)并格式化異常

    springboot統(tǒng)一異常處理(返回json)并格式化異常

    這篇文章主要介紹了springboot統(tǒng)一異常處理(返回json)并格式化異常,對spring boot的默認異常處理方式進行修改,要統(tǒng)一返回數(shù)據(jù)格式,優(yōu)雅的數(shù)據(jù)交互,優(yōu)雅的開發(fā)應(yīng)用,需要的朋友可以參考下
    2023-07-07
  • Java WindowBuilder 安裝及基本使用的教程

    Java WindowBuilder 安裝及基本使用的教程

    這篇文章主要介紹了Java WindowBuilder 安裝及基本使用的教程,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • 在IDEA中配置Maven鏡像的最新方法

    在IDEA中配置Maven鏡像的最新方法

    這篇文章主要給大家介紹了關(guān)于在IDEA中配置Maven鏡像的最新方法,Maven是一個流行的Java項目構(gòu)建工具,它依賴于互聯(lián)網(wǎng)上的Mave中央倉庫來下載和管理項目依賴庫,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-11-11
  • Java8 使用流抽取List<T>集合中T的某個屬性操作

    Java8 使用流抽取List<T>集合中T的某個屬性操作

    這篇文章主要介紹了Java8 使用流抽取List<T>集合中T的某個屬性操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02

最新評論