最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

前言

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

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

案例

dao和mapper編寫

三層架構(gòu)中,dao層主要用于對(duì)數(shù)據(jù)庫(kù)的操作。當(dāng)項(xiàng)目配置好數(shù)據(jù)庫(kù)的連接配置后,在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編寫

編寫一個(gè)與CommonSqlMapper.java與之對(duì)應(yīng)映射的CommonSqlMapper.xml文件,其中可以對(duì)對(duì)應(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ù)層代碼,進(jìn)行注入調(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);
	}
}

額外擴(kuò)展–創(chuàng)建表語(yǔ)句

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

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

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

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

【注意】

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

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

相關(guān)文章

最新評(píng)論

茂名市| 岳普湖县| 望都县| 临洮县| 宿州市| 天全县| 宁津县| 隆林| 泗水县| 吉隆县| 鄂尔多斯市| 塔城市| 海兴县| 中牟县| 鄂州市| 大邑县| 永德县| 泾源县| 衡水市| 和平区| 五华县| 许昌市| 封丘县| 文登市| 台湾省| 台州市| 凌源市| 吉木乃县| 凯里市| 辽宁省| 呼和浩特市| 开鲁县| 安塞县| 沙洋县| 炉霍县| 郓城县| 晋中市| 义马市| 嘉黎县| 连云港市| 宣恩县|