• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    基于XML配置的動(dòng)態(tài)化SQL查詢方法技術(shù)

    技術(shù)編號(hào):15690957 閱讀:75 留言:0更新日期:2017-06-24 03:46
    本發(fā)明專利技術(shù)涉及一種電商數(shù)據(jù)庫(kù)維護(hù)優(yōu)化領(lǐng)域,提供一種基于XML配置的動(dòng)態(tài)化SQL查詢方法。根據(jù)業(yè)務(wù)邏輯將SQL語(yǔ)句分解并存放在XML文件中,并為分解的SQL語(yǔ)句設(shè)置參數(shù)值匹配的條件;為查詢請(qǐng)求配置參數(shù)列表;執(zhí)行查詢時(shí)根據(jù)查詢鍵值調(diào)出參數(shù)值匹配條件能與參數(shù)列表相匹配的SQL語(yǔ)句,將調(diào)出的SQL語(yǔ)句組合成SQL組裝對(duì)象,該SQL組裝對(duì)象負(fù)責(zé)執(zhí)行查詢請(qǐng)求。用配置化代替硬編碼;動(dòng)態(tài)語(yǔ)義計(jì)算代替邏輯代碼編寫;產(chǎn)品交付后仍可對(duì)代碼行為進(jìn)行即時(shí)更新,提高服務(wù)響應(yīng)時(shí)間和質(zhì)量。

    Dynamic SQL query method based on XML configuration

    The invention relates to an electronic commerce database maintenance optimization field, and provides a dynamic SQL inquiry method based on XML configuration. According to the business logic of the SQL statement is decomposed and stored in the XML file, and set the parameters for the SQL statement decomposition values of the matching conditions; request configuration parameter list query; query is executed according to the query key parameter values out of the SQL statement matching conditions can be matched with the parameter list, the SQL statement combined out into SQL assembly the object, the SQL object is responsible for the implementation of query request assembly. Using configuration instead of hard coding; dynamic semantic computing instead of logical code writing; product delivery can still update the code behavior, and improve service response time and quality.

    【技術(shù)實(shí)現(xiàn)步驟摘要】
    基于XML配置的動(dòng)態(tài)化SQL查詢方法
    本專利技術(shù)涉及一種電商數(shù)據(jù)庫(kù)維護(hù)優(yōu)化領(lǐng)域,尤其涉及一種基于XML配置的動(dòng)態(tài)化SQL查詢方法。
    技術(shù)介紹
    目前,在電子商務(wù)領(lǐng)域,由于數(shù)字商品需要的的描述特征多、所涉行業(yè)廣,且經(jīng)常需要根據(jù)業(yè)務(wù)營(yíng)銷需求來(lái)變更SQL語(yǔ)句,提高了開(kāi)發(fā)相關(guān)數(shù)據(jù)庫(kù)的難度,加之開(kāi)發(fā)人員的經(jīng)驗(yàn)不盡相同,配合協(xié)調(diào)也比較困難,導(dǎo)致在更換SQL語(yǔ)句的過(guò)程中工作量和工作難度日巨,費(fèi)時(shí)費(fèi)力,很不經(jīng)濟(jì)。這主要是由于SQL語(yǔ)句固有的以下幾方面特點(diǎn)所決定的;1.在傳統(tǒng)的開(kāi)發(fā)模式中SQL語(yǔ)句被硬編碼在程序代碼中,導(dǎo)致一旦交付使用后,若發(fā)現(xiàn)設(shè)計(jì)故障和隨著數(shù)據(jù)堆積造成的性能下降的問(wèn)題時(shí),只能通過(guò)重新編碼再測(cè)試并發(fā)布新版本來(lái)的手段來(lái)解決;2.在傳統(tǒng)硬編碼的情形中,還大量地出現(xiàn)參數(shù)不同,語(yǔ)句不同的情況,導(dǎo)致大量的代碼邏輯跳轉(zhuǎn)被寫死在程序源碼中,一旦需要增加新的邏輯條件,則需要重新追加代碼,導(dǎo)致占用內(nèi)存資源過(guò)多,計(jì)算效能下降;3.SQL語(yǔ)句在代碼內(nèi)的分散性,還嚴(yán)重?cái)_亂了代碼的可讀性;在性能跟蹤時(shí),也難以定位最終執(zhí)行的邏輯次序。
    技術(shù)實(shí)現(xiàn)思路
    有鑒于此,本專利技術(shù)提供一種基于XML配置的動(dòng)態(tài)化SQL組裝方法,達(dá)到靈活地組裝SQL的目的,解決硬編碼SQL帶來(lái)的前述問(wèn)題和缺陷。為了達(dá)成本專利技術(shù)的上述目的,本專利技術(shù)的技術(shù)方案如下?;赬ML配置的動(dòng)態(tài)化SQL查詢方法,根據(jù)業(yè)務(wù)邏輯將SQL語(yǔ)句分解并存放在XML文件中,并為分解的SQL語(yǔ)句設(shè)置參數(shù)值匹配的條件;為查詢請(qǐng)求配置參數(shù)列表;執(zhí)行查詢時(shí)根據(jù)查詢鍵值調(diào)出參數(shù)值匹配條件能與參數(shù)列表相匹配的SQL語(yǔ)句,將調(diào)出的SQL語(yǔ)句組合成SQL組裝對(duì)象,該SQL組裝對(duì)象負(fù)責(zé)執(zhí)行查詢請(qǐng)求。優(yōu)選地,組合SQL組裝對(duì)象時(shí),通過(guò)哈希值檢索參與組合的SQL。在某些實(shí)施例中,所述XML文件在初始化時(shí)加載到緩存;執(zhí)行查詢時(shí)根據(jù)查詢鍵值判斷欲組裝之SQL組裝對(duì)象是否已在內(nèi)存中,若是,則直接使用內(nèi)存中的該SQL組裝對(duì)象。優(yōu)選地,在某些實(shí)施例中,所述匹配條件是給定參數(shù)名,并限該匹配定條件為該參數(shù)名存在且值不為空時(shí)成立。優(yōu)選地,在某些實(shí)施例中,所述匹配條件是邏輯運(yùn)算。優(yōu)選地,在某些實(shí)施例中,所述邏輯運(yùn)算是值大于或等于N時(shí)成立。優(yōu)選地,在某些實(shí)施例中,所述邏輯運(yùn)算是值小于或等于M時(shí)成立。采用本專利技術(shù)的技術(shù)方案后,大幅度簡(jiǎn)化了SQL語(yǔ)句在編程中的硬代碼實(shí)現(xiàn)(JAVA代碼、存儲(chǔ)過(guò)程等),同時(shí)提供了文件系統(tǒng)層面的XML化,在軟件系統(tǒng)發(fā)布后,仍然提供了快速定位錯(cuò)誤;快速修改、快速部署。此外,本專利技術(shù)優(yōu)選實(shí)施的緩存機(jī)制能夠在內(nèi)存與性能間找到了良好的平衡。本專利技術(shù)人已經(jīng)在此
    技術(shù)實(shí)現(xiàn)思路
    章節(jié)總地描述了本專利技術(shù)的特征和優(yōu)點(diǎn);然而,本專利技術(shù)難以通過(guò)窮舉的方式一一對(duì)所有基于本專利技術(shù)精神的技術(shù)方案進(jìn)行羅列。所以,以下將通過(guò)對(duì)本專利技術(shù)實(shí)施的舉例,使本專利技術(shù)之精神對(duì)于本領(lǐng)域普通技術(shù)人員而言已經(jīng)能夠清楚地掌握,所以,在本專利技術(shù)中未明確給出的另外的特征、優(yōu)點(diǎn)和實(shí)施方案對(duì)于查看了本專利技術(shù)的本領(lǐng)域普通技術(shù)人員來(lái)說(shuō)都是清楚的,因此,應(yīng)該理解,吸取了本專利技術(shù)之后對(duì)本專利技術(shù)所作出的修飾和改進(jìn)都在本專利的保護(hù)范圍之內(nèi),對(duì)于在本專利技術(shù)的基礎(chǔ)上作出的變劣性技術(shù)方案也屬于本專利的保護(hù)范圍內(nèi)。附圖說(shuō)明圖1是本專利技術(shù)實(shí)施例原理圖。具體實(shí)施方式為使本專利技術(shù)的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,以下將列舉實(shí)施例對(duì)本專利技術(shù)的具體實(shí)施方式做詳細(xì)說(shuō)明。在以下的描述中闡述了以便于充分理解本專利技術(shù)的具體實(shí)施例,但是,本專利技術(shù)能夠以不同于以下描述的方式實(shí)施,本領(lǐng)域技術(shù)人員可以在不違背本專利技術(shù)內(nèi)涵的情況下做類似推廣。因此,本專利技術(shù)不受以下公開(kāi)的具體實(shí)施例的限制。如圖1所示,本實(shí)施例基于XML配置的動(dòng)態(tài)化SQL查詢方法,XML配置項(xiàng)框正式根據(jù)本專利技術(shù)精神的要求根據(jù)業(yè)務(wù)邏輯將SQL語(yǔ)句分解并存放在XML文件中的一種實(shí)施。在該實(shí)施中,為分解的SQL語(yǔ)句設(shè)置了參數(shù)值匹配的條件;該匹配條件可以通過(guò)test條件判斷或test條件語(yǔ)句得以實(shí)施。特別地,在本實(shí)施例中,還可以通過(guò)assign變量賦值改變?cè)撈ヅ錀l件。如圖1所示,本實(shí)施例基于XML配置的動(dòng)態(tài)化SQL查詢方法,請(qǐng)求對(duì)象框正式根據(jù)本專利技術(shù)精神的要求為查詢請(qǐng)求配置參數(shù)列表。圖1的箭頭示意根據(jù)本專利技術(shù)精神的要求根據(jù)查詢鍵值調(diào)出參數(shù)值匹配條件能與參數(shù)列表相匹配的SQL語(yǔ)句,將調(diào)出的SQL語(yǔ)句組合成SQL組裝對(duì)象,該SQL組裝對(duì)象負(fù)責(zé)執(zhí)行查詢請(qǐng)求。其中,可執(zhí)行語(yǔ)句框示意了根據(jù)本專利技術(shù)精神實(shí)施的一種SQL對(duì)象。在本實(shí)施例中,當(dāng)執(zhí)行請(qǐng)求發(fā)起時(shí),系統(tǒng)根據(jù)查詢鍵值,判斷是否已存在內(nèi)存組裝對(duì)象,不存在時(shí)立即從緩存XML讀取配置值解析為組裝對(duì)象。根據(jù)執(zhí)行請(qǐng)求的參數(shù),組裝對(duì)象通過(guò)哈希檢索快速組合出最終SQL語(yǔ)句。對(duì)于不存在的參數(shù)則自動(dòng)拋棄。在這一過(guò)程當(dāng)中,內(nèi)存對(duì)象將動(dòng)態(tài)邏輯逐一與請(qǐng)求的參數(shù)列表運(yùn)算,邏輯返回真值,則啟用該動(dòng)態(tài)語(yǔ)句;將語(yǔ)句靜態(tài)部分與動(dòng)態(tài)運(yùn)算為真值的動(dòng)態(tài)語(yǔ)句按順序追加,生成最終SQL語(yǔ)句;將最終SQL語(yǔ)句中匹配的所有參數(shù)名,與參數(shù)列表交集,獲得當(dāng)前執(zhí)行參數(shù)表;將返回的SQL語(yǔ)句與參數(shù)提交數(shù)據(jù)庫(kù)處理,完成查詢。此外,系統(tǒng)還設(shè)計(jì)了參數(shù)值轉(zhuǎn)換方式,將匹配邏輯可轉(zhuǎn)換為簡(jiǎn)單的標(biāo)示邏輯,在XML層面實(shí)現(xiàn)if,switch,for等語(yǔ)句相似功能。本實(shí)施的優(yōu)點(diǎn)是顯而易見(jiàn)的,本實(shí)施例用配置化代替硬編碼;動(dòng)態(tài)語(yǔ)義計(jì)算代替邏輯代碼編寫;產(chǎn)品交付后仍可對(duì)代碼行為進(jìn)行即時(shí)更新,提高服務(wù)響應(yīng)時(shí)間和質(zhì)量。本文檔來(lái)自技高網(wǎng)
    ...
    基于XML配置的動(dòng)態(tài)化SQL查詢方法

    【技術(shù)保護(hù)點(diǎn)】
    基于XML配置的動(dòng)態(tài)化SQL查詢方法,其特征在于,根據(jù)業(yè)務(wù)邏輯將SQL語(yǔ)句分解并存放在XML文件中,并為分解的SQL語(yǔ)句設(shè)置參數(shù)值匹配的條件;為查詢請(qǐng)求配置參數(shù)列表;執(zhí)行查詢時(shí)根據(jù)查詢鍵值調(diào)出參數(shù)值匹配條件能與參數(shù)列表相匹配的SQL語(yǔ)句,將調(diào)出的SQL語(yǔ)句組合成SQL組裝對(duì)象,該SQL組裝對(duì)象負(fù)責(zé)執(zhí)行查詢請(qǐng)求。

    【技術(shù)特征摘要】
    1.基于XML配置的動(dòng)態(tài)化SQL查詢方法,其特征在于,根據(jù)業(yè)務(wù)邏輯將SQL語(yǔ)句分解并存放在XML文件中,并為分解的SQL語(yǔ)句設(shè)置參數(shù)值匹配的條件;為查詢請(qǐng)求配置參數(shù)列表;執(zhí)行查詢時(shí)根據(jù)查詢鍵值調(diào)出參數(shù)值匹配條件能與參數(shù)列表相匹配的SQL語(yǔ)句,將調(diào)出的SQL語(yǔ)句組合成SQL組裝對(duì)象,該SQL組裝對(duì)象負(fù)責(zé)執(zhí)行查詢請(qǐng)求。2.根據(jù)權(quán)利要求1所述的一種基于XML配置的動(dòng)態(tài)化SQL查詢方法,其特征在于,所述XML文件在初始化時(shí)加載到緩存;執(zhí)行查詢時(shí)根據(jù)查詢鍵值判斷欲組裝之SQL組裝對(duì)象是否已在內(nèi)存中,若是,則直接使...

    【專利技術(shù)屬性】
    技術(shù)研發(fā)人員:楊伎華,
    申請(qǐng)(專利權(quán))人:廈門南訊軟件科技有限公司
    類型:發(fā)明
    國(guó)別省市:福建,35

    網(wǎng)友詢問(wèn)留言 已有0條評(píng)論
    • 還沒(méi)有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。

    1
    主站蜘蛛池模板: 国内精品久久久久久无码不卡| 国产色综合久久无码有码| 亚洲精品无码久久不卡| 国产精品无码v在线观看| 人妻少妇伦在线无码| 人妻无码第一区二区三区| 日韩视频无码日韩视频又2021| 久久久亚洲精品无码| 国产av激情无码久久| 老子午夜精品无码| 黄桃AV无码免费一区二区三区| 少妇伦子伦精品无码STYLES| 亚洲毛片av日韩av无码| 亚洲熟妇无码一区二区三区导航| 中文国产成人精品久久亚洲精品AⅤ无码精品 | 亚洲午夜无码AV毛片久久| 亚洲AV日韩AV永久无码下载| 中文字幕久无码免费久久| 亚洲aⅴ天堂av天堂无码麻豆| 无码人妻精品一区二区三| 国产羞羞的视频在线观看 国产一级无码视频在线 | 亚洲欧洲美洲无码精品VA| 国产精品无码翘臀在线观看| 少妇无码AV无码专区在线观看| 精品一区二区无码AV| 无码不卡中文字幕av| 亚洲国产精品无码中文lv| 欧洲人妻丰满av无码久久不卡| 亚洲AV永久无码精品成人| 夜夜添无码一区二区三区| 波多野结AV衣东京热无码专区| 爽到高潮无码视频在线观看| 日韩av无码国产精品| 亚洲youwu永久无码精品 | 国产日韩精品无码区免费专区国产 | 久久午夜夜伦鲁鲁片无码免费| 中文成人无码精品久久久不卡| 久久99久久无码毛片一区二区 | 亚洲中文字幕无码一区| 亚洲精品无码久久久久sm| 亚洲国产精品无码久久一线|