• 
    <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
    主站蜘蛛池模板: 中文精品无码中文字幕无码专区| 久久精品无码午夜福利理论片 | r级无码视频在线观看| 中文字幕av无码一二三区电影| 特级小箩利无码毛片| 国产做无码视频在线观看浪潮 | 一区二区三区无码高清| 久久久无码精品亚洲日韩蜜桃 | 人妻无码久久久久久久久久久| 国产成人无码18禁午夜福利p| 无码人妻精品一区二区三区99性 | 无码午夜成人1000部免费视频 | 国产乱人伦中文无无码视频试看| 国产免费av片在线无码免费看| 久热中文字幕无码视频| 亚洲AV无码不卡在线观看下载| 久久亚洲中文无码咪咪爱| 日韩精品无码中文字幕一区二区| 九九久久精品无码专区| 精品人妻系列无码人妻漫画 | 久久无码人妻一区二区三区午夜| 亚洲人成国产精品无码| 亚洲AV无码一区二区乱子仑| 无码丰满少妇2在线观看| 亚洲精品无码mv在线观看网站| 本道久久综合无码中文字幕| 亚洲AV无码一区二区一二区| 中文字幕无码中文字幕有码| 国产精品久久久久无码av| 亚洲av无码av制服另类专区| 亚洲AV无码乱码国产麻豆| 国产成人无码区免费内射一片色欲| 国产成人无码aa精品一区| 亚洲爆乳大丰满无码专区| 性饥渴少妇AV无码毛片| 免费无码A片一区二三区| 亚洲人av高清无码| 国产AV无码专区亚洲AV蜜芽| 无码一区18禁3D| 好硬~好爽~别进去~动态图, 69式真人无码视频免| 99久久人妻无码精品系列|