亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

在 Java 中如何更高效地存儲(chǔ)和管理 SQL 語(yǔ)句?

鄒立鵬 / 3581人閱讀

摘要:編者按還在為管理代碼中的語(yǔ)句而煩惱嗎讓幫你擺脫困境吧本文系工程師編譯整理注意使用其實(shí)會(huì)更簡(jiǎn)單如果使用的是普通的沒(méi)有任何外部類庫(kù)的,那么就必須得自己去管理語(yǔ)句。同時(shí),這也使得維護(hù)和測(cè)試嘗試從代碼中一條語(yǔ)句到客戶端運(yùn)行更加困難。

【編者按】還在為管理 Java 代碼中的 SQL 語(yǔ)句而煩惱嗎?讓 Zemian 幫你擺脫困境吧!本文系 OneAPM 工程師編譯整理

**注意:**使用java.util.Properties#loadFromXML其實(shí)會(huì)更簡(jiǎn)單!

如果使用的是普通的、沒(méi)有任何外部類庫(kù)的 Java JDBC,那么就必須得自己去管理 SQL 語(yǔ)句。很不幸的是,Java String 并不支持多行結(jié)構(gòu),所以開發(fā)者必須使用許多引號(hào)+連接符來(lái)拼接語(yǔ)句,這會(huì)使得 SQL 語(yǔ)句非常難于閱讀和管理。同時(shí),這也使得維護(hù)和測(cè)試(嘗試從 Java 代碼中 Copy 一條 SQL 語(yǔ)句到 SQL 客戶端運(yùn)行)更加困難。如果能保證整條 SQL 語(yǔ)句完好無(wú)缺,又避免了 Java 的干擾,那該有多好??!

這里有個(gè)快速解決方案,把 SQL 查詢語(yǔ)句存儲(chǔ)在 XML 的 CDATA 里面:



    
        
            getUser
            
        
        
            getSpecialCodeByUserId
            
          

如果現(xiàn)在再去讀 SQL 語(yǔ)句,開發(fā)者可以利用內(nèi)建的 JAXB。

import javax.xml.bind.annotation.XmlRootElement;
import java.util.HashMap;
import java.util.Map;
@XmlRootElement
public class SqlMap {
    Map sqls = new HashMap<>();
    public Map getSqls() {
        return sqls;
    }
    public void setSqls(Map sqls) {
        this.sqls = sqls;
    }
    public String getSql(String name) {
        return sqls.get(name);
    }
    public static SqlMap load(String name) throws Exception {
        String xml = Utils.loadString(name);
        SqlMap sqlMap = unmarshallXML(xml );
        return sqlMap;
    }
}

**原文鏈接:**How to Store and Manage SQL Statements More Effectively With Java

本文系 OneAPM 工程師編譯整理。想閱讀更多技術(shù)文章,請(qǐng)?jiān)L問(wèn) OneAPM 官方博客。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/64429.html

相關(guān)文章

  • JPA2.1 三個(gè)提升應(yīng)用性能的新功能

    摘要:只用語(yǔ)句,也能完成很多事情,如果不夠,你還可以調(diào)用數(shù)據(jù)庫(kù)的特定功能和存儲(chǔ)過(guò)程。在中,并沒(méi)有針對(duì)存儲(chǔ)過(guò)程的實(shí)際支持,本地查詢是調(diào)用存儲(chǔ)過(guò)程的唯一方式。規(guī)范引入了幾個(gè)新的功能以應(yīng)對(duì)這些低效操作,比如實(shí)體圖,條件更新和存儲(chǔ)過(guò)程查詢。 經(jīng)常在網(wǎng)上看到開發(fā)者們抱怨 JPA 性能低下的帖子或文章,但如果仔細(xì)查看這些性能問(wèn)題,常會(huì)發(fā)現(xiàn)導(dǎo)致問(wèn)題的根本原因大致包括以下幾個(gè): 使用過(guò)多的 SQL 查詢從...

    ormsf 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<