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

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

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

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

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

1 MVC框架模式

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

2 數(shù)據(jù)查詢(xún)?cè)O(shè)計(jì)

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

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

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

String userpassWord;

public void setUserpassWord(String s)

{

userpassWord=s;

}

public String getUserpassWord()

{

return userpassWord;

}

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

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

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

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

例如應(yīng)用程序通過(guò)Hibernate保存java.sql.Clob實(shí)例時(shí),必須包含兩個(gè)步驟:(1)保存一個(gè)空的Clob實(shí)例在數(shù)據(jù)庫(kù)事務(wù)中,(2)鎖定此記錄,更新保存的Clob實(shí)例,把長(zhǎng)文本數(shù)據(jù)寫(xiě)入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為長(zhǎng)文本字符串

pw.close();

tx.commit();

session.close();

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

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

參考文獻(xiàn):

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

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

主站蜘蛛池模板: 亚洲国产精品一区二区第一页免| 国产日产欧美精品| 成人年鲁鲁在线观看视频| 欧美日韩在线第一页| 欧美乱妇高清无乱码免费| 亚洲av无码久久无遮挡| 91精品啪在线观看国产91| 最新国产麻豆aⅴ精品无| 亚洲一区波多野结衣二区三区| 99九九成人免费视频精品| 国产性生大片免费观看性欧美| 久久人人97超碰人人澡爱香蕉| 精品国产免费第一区二区三区日韩| 国产精品99久久久久久董美香| 韩日午夜在线资源一区二区| 国模沟沟一区二区三区| 亚洲成a人片在线观看88| 国产精品美乳| 99er精品视频| 欧美午夜在线观看| 一本色道久久88| 国产精品视频久| 午夜久久影院| 91口爆吞精国产对白第三集| 无码丝袜人妻| 亚洲日韩每日更新| 日本久久免费| 亚洲精品动漫在线观看| 亚洲欧美自拍一区| 欧美一区中文字幕| 国产色婷婷| 2021国产精品自产拍在线观看 | 国产青榴视频在线观看网站| 99精品福利视频| 亚洲欧洲日韩综合| 日韩A级毛片一区二区三区| 毛片免费观看视频| 亚洲第七页| 欧美中文字幕在线播放| 亚洲人成影院午夜网站| 18禁不卡免费网站| 日本色综合网| 国产91导航| 亚洲啪啪网| 999在线免费视频| 韩日免费小视频| 久久综合九九亚洲一区 | 精品国产91爱| 欧洲精品视频在线观看| 老司机精品99在线播放| 国产高清在线精品一区二区三区 | 久久黄色免费电影| 国产污视频在线观看| 亚洲乱码视频| 国产在线自乱拍播放| 欧美一区二区精品久久久| 国产在线自在拍91精品黑人| 中文字幕日韩欧美| 国产超碰一区二区三区| 亚洲精品视频免费| 欧美笫一页| 日本在线视频免费| 免费人成在线观看成人片| 免费又爽又刺激高潮网址| 精品夜恋影院亚洲欧洲| 啪啪国产视频| 色网在线视频| 92午夜福利影院一区二区三区| 亚洲国产精品一区二区第一页免| 一级一级一片免费| 久久天天躁夜夜躁狠狠| 国产精品私拍在线爆乳| 亚洲欧美h| 国内毛片视频| 国产激情无码一区二区免费| 无码中文字幕乱码免费2| 久久久久青草大香线综合精品| 中国美女**毛片录像在线| 91精品啪在线观看国产60岁| 久久久久国产一区二区| 丝袜国产一区| 手机永久AV在线播放|