999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

MVC模式對一卡通數(shù)據(jù)查詢的優(yōu)化設(shè)計(jì)

2015-04-29 00:00:00李林娜等
山東工業(yè)技術(shù) 2015年10期

摘 要:面對龐大而又復(fù)雜的高校一卡通數(shù)據(jù),設(shè)計(jì)一套完整高效的數(shù)據(jù)查詢系統(tǒng)對于分析這些數(shù)據(jù)具有重大意義。本文從解決數(shù)據(jù)查詢編程問題出發(fā),考慮到數(shù)據(jù)安全,提出以MVC框架模式為基礎(chǔ),利用Hibernate框架優(yōu)化數(shù)據(jù)查詢結(jié)構(gòu),對數(shù)據(jù)訪問程序設(shè)計(jì)具有很高的應(yīng)用參考價(jià)值。

關(guān)鍵詞:MVC模式;數(shù)據(jù)查詢;優(yōu)化設(shè)計(jì);Hibernate

1 MVC框架模式

MVC(Model-View-Controller)框架模式通過模型、視圖、控制器,分別對程序的輸入、處理和輸出進(jìn)行控制,三者相互獨(dú)立,不會(huì)因?yàn)槠渲幸豁?xiàng)的改變而影響其他內(nèi)容的變化。其中,模型可以為視圖提供數(shù)據(jù),同時(shí)進(jìn)行業(yè)務(wù)邏輯關(guān)系的處理;視圖用于接收命令和顯示相應(yīng)的數(shù)據(jù);控制器則專門控制用戶的輸入和輸出。如圖1所示:

2 數(shù)據(jù)查詢設(shè)計(jì)

原始的Web程序開發(fā)以服務(wù)器端開發(fā)為主,在程序設(shè)計(jì)中,以獨(dú)立編寫的SQL命令語句直接對數(shù)據(jù)庫進(jìn)行查詢,這種命令語句直接編寫在頁面代碼中,甚至數(shù)據(jù)庫的賬戶密碼都暴露給程序閱讀者,很容易被他人所用,給程序的安全性造成很大的隱患。

JAVA提供的Web開發(fā)JSP+Servlet+JavaBean可以在一定程度上解決上述問題,它是用JavaBean來封裝邏輯程序、用戶參 數(shù)及賬戶密碼,以JSP顯示程序輸出結(jié)果,大大提高了程序設(shè)計(jì)的安全性。其實(shí)現(xiàn)方式及對應(yīng)的MVC模式如圖2所示:

如上圖所示,以Servlet控制用戶請求、顯示響應(yīng)結(jié)果,在接受用戶請求時(shí),以參數(shù)作為用戶請求的載體,將參數(shù)的安全性驗(yàn)證設(shè)計(jì)到業(yè)務(wù)邏輯中,即在JavaBean中內(nèi)置變量,其方法中的變量userpassWord即用戶輸入的密碼驗(yàn)證程序如下:

String userpassWord;

public void setUserpassWord(String s)

{

userpassWord=s;

}

public String getUserpassWord()

{

return userpassWord;

}

sql.executeQuery(\"select * from user WHERE userpassword='\"+userpassWord+\"'\");

用戶名及其他參數(shù)類同,這種通過Servlet只調(diào)取JSP中的參數(shù),在封裝的JavaBean中進(jìn)行參數(shù)處理,然后對數(shù)據(jù)庫進(jìn)行查詢進(jìn)而核對參數(shù)正確性的驗(yàn)證方法,在很大程度上保障了程序和數(shù)據(jù)庫的安全性。

3 數(shù)據(jù)優(yōu)化設(shè)計(jì)

在對龐大的高校一卡通數(shù)據(jù)進(jìn)行查詢功能設(shè)計(jì)中會(huì)面臨諸多難題:其中最為常見的就是為了數(shù)據(jù)序列的一致性,需要分析數(shù)據(jù)對象持久性;要處理好以上問題,就要借助MVC框架模式來進(jìn)行程序優(yōu)化設(shè)計(jì),同時(shí)借助Hibernate的作用,Hibernate包含6個(gè)核心接口:Session、SessionFactory、Transaction、Criteria、Query和Configuration,這6個(gè)核心接口應(yīng)用甚廣,可以把數(shù)據(jù)對象進(jìn)行模型化存儲(chǔ),將數(shù)據(jù)信息儲(chǔ)存到本地磁盤后,根據(jù)實(shí)體類進(jìn)行數(shù)據(jù)關(guān)系映射,對持久化對象進(jìn)行存取,從而能夠保證在處理數(shù)據(jù)對象時(shí)保證數(shù)據(jù)序列的一致性。

例如應(yīng)用程序通過Hibernate保存java.sql.Clob實(shí)例時(shí),必須包含兩個(gè)步驟:(1)保存一個(gè)空的Clob實(shí)例在數(shù)據(jù)庫事務(wù)中,(2)鎖定此記錄,更新保存的Clob實(shí)例,把長文本數(shù)據(jù)寫入Clob實(shí)例中,其代碼如下:

Session session = sessionFactory.openSession();

Transaction tx = session.beginTransaction();

Customer customer = new Customer();

customer.setDescription(Hibernate.createClob(\"\")); //先保存一個(gè)空 的clob

session.save(customer);

session.flush();

//鎖定此記錄

session.refresh(customer,LockMode.UPGRADE);

oracle.sql.CLOB clob = (oracle.sql.CLOB) customer.getDescription();

java.io.Writer pw = clob.getCharacterOutStream();

pw.write(longText);//longText為長文本字符串

pw.close();

tx.commit();

session.close();

在處理數(shù)據(jù)類型的問題上,Hibernate通過內(nèi)置的映射類型和客戶化映射類型來實(shí)現(xiàn),內(nèi)置映射類型可以將一些常見的JAVA類型映射到相應(yīng)的SQL類型,用戶還可以實(shí)現(xiàn)UserType和CompositeUserType接口,從而靈活地定制客戶所需映射類型。

通過以上實(shí)例可以看出,Hibernate主要是作為數(shù)據(jù)持久性框架來使用,其對應(yīng)MVC模式中的模型,它的主要作用是處理事務(wù)流程,把數(shù)據(jù)庫中的關(guān)系表通過ORM映射為對象,將常用的數(shù)據(jù)查詢程序?qū)?yīng)到一個(gè)控制器,從而達(dá)到封裝和優(yōu)化的目的。

參考文獻(xiàn):

[1]丁振凡,吳根斌.Spring 3.x MVC模型的數(shù)據(jù)校驗(yàn)國際化處理[J].計(jì)算機(jī)時(shí)代,2012(08).

[2]王哲.基于MVC的系統(tǒng)架構(gòu)設(shè)計(jì)探究[J].數(shù)字技術(shù)與應(yīng)用,2012(01).

主站蜘蛛池模板: 国产精品极品美女自在线看免费一区二区| 亚洲系列中文字幕一区二区| 国产精品免费电影| 欧美激情第一欧美在线| 黄色国产在线| 九色91在线视频| 免费一级毛片完整版在线看| 五月婷婷精品| 天天视频在线91频| 尤物精品国产福利网站| 日本一区二区三区精品国产| 国产精鲁鲁网在线视频| 丰满的少妇人妻无码区| 国产一区成人| 久久精品波多野结衣| 亚洲第一黄色网| 51国产偷自视频区视频手机观看| 日韩精品无码免费专网站| 国产在线欧美| 国产在线一区二区视频| 国产精品七七在线播放| 国产一区二区人大臿蕉香蕉| 91精品专区国产盗摄| 国产AV毛片| 波多野结衣久久精品| 日韩毛片免费视频| 久久精品嫩草研究院| 成人av专区精品无码国产| a级毛片免费播放| 亚洲色成人www在线观看| 婷婷久久综合九色综合88| 国产一区二区三区在线无码| 丁香五月亚洲综合在线| 国产成人综合在线观看| 天天综合天天综合| 午夜无码一区二区三区在线app| 伊人无码视屏| 国产特级毛片| 国产精品va免费视频| 日韩毛片免费| 青青青国产视频手机| 青青草原国产av福利网站| 精品国产免费观看| a色毛片免费视频| 播五月综合| 国产三区二区| 亚洲国产欧美自拍| 国产成人亚洲精品无码电影| 久久综合婷婷| 在线人成精品免费视频| 成人免费网站在线观看| 国产福利小视频高清在线观看| 免费高清a毛片| 成人在线不卡视频| 福利在线不卡一区| 丰满人妻一区二区三区视频| 免费国产黄线在线观看| 在线观看免费国产| 亚洲天堂日本| 亚洲天堂日韩在线| 喷潮白浆直流在线播放| 一级毛片免费观看不卡视频| 人妻中文久热无码丝袜| 亚洲区欧美区| 2021亚洲精品不卡a| 91最新精品视频发布页| 亚洲男人天堂2018| 男女精品视频| 日韩a在线观看免费观看| 欧美国产成人在线| 亚洲第一网站男人都懂| 国产精品任我爽爆在线播放6080 | 嫩草影院在线观看精品视频| 久久青草热| 福利国产在线| 国产成人一级| 日韩123欧美字幕| 丁香六月激情婷婷| 成人免费一区二区三区| 中日韩一区二区三区中文免费视频 | 国产亚洲视频免费播放| 无码综合天天久久综合网|