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

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

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

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

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

1 MVC框架模式

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

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

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

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

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

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中進行參數(shù)處理,然后對數(shù)據(jù)庫進行查詢進而核對參數(shù)正確性的驗證方法,在很大程度上保障了程序和數(shù)據(jù)庫的安全性。

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

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

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

Session session = sessionFactory.openSession();

Transaction tx = session.beginTransaction();

Customer customer = new Customer();

customer.setDescription(Hibernate.createClob(\"\")); //先保存一個空 的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)置的映射類型和客戶化映射類型來實現(xiàn),內(nèi)置映射類型可以將一些常見的JAVA類型映射到相應(yīng)的SQL類型,用戶還可以實現(xiàn)UserType和CompositeUserType接口,從而靈活地定制客戶所需映射類型。

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

參考文獻:

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

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

主站蜘蛛池模板: 亚洲精品图区| 97色伦色在线综合视频| 久久精品波多野结衣| 在线a视频免费观看| 亚洲国产91人成在线| 成人国产精品网站在线看| 99人体免费视频| 色亚洲成人| 成人免费视频一区| 成人自拍视频在线观看| 精久久久久无码区中文字幕| 亚洲av日韩av制服丝袜| 她的性爱视频| 69精品在线观看| 人妻精品久久无码区| 国产主播喷水| 欧美性猛交xxxx乱大交极品| 国产一级一级毛片永久| 亚洲午夜综合网| 亚洲男人的天堂在线观看| 亚洲最大在线观看| 国产极品美女在线观看| 亚洲 欧美 中文 AⅤ在线视频| 婷婷六月综合网| 亚洲欧美自拍视频| 亚洲成aⅴ人在线观看| 欧美一级在线看| 国产不卡网| 国内精品久久人妻无码大片高| 伊人久久精品亚洲午夜| 国产精品自在线拍国产电影| 国产成年无码AⅤ片在线| 丝袜亚洲综合| 亚洲精品欧美重口| 久草中文网| 五月天天天色| 无码 在线 在线| 国产成人亚洲毛片| 亚洲浓毛av| 亚洲福利视频一区二区| 波多野结衣的av一区二区三区| 亚洲第一福利视频导航| 欧美不卡视频在线| 99久久精品国产自免费| 在线不卡免费视频| 久久不卡国产精品无码| 99国产在线视频| JIZZ亚洲国产| 欧美三级视频在线播放| 亚洲精品无码抽插日韩| www亚洲精品| 中文精品久久久久国产网址| 国产精品成人不卡在线观看| 国产在线观看人成激情视频| 欧美不卡视频一区发布| 色综合国产| 成人久久精品一区二区三区 | 91午夜福利在线观看| 国产黄视频网站| 日韩精品无码免费专网站| 四虎亚洲国产成人久久精品| 四虎国产在线观看| 91视频99| 最新国产高清在线| 国产一级在线播放| 无码高潮喷水专区久久| 992tv国产人成在线观看| 人人妻人人澡人人爽欧美一区| 国产福利不卡视频| 91亚洲国产视频| 精品国产香蕉伊思人在线| 欧美成人在线免费| 亚洲无码精彩视频在线观看| 青青草原国产免费av观看| 免费a在线观看播放| 五月激激激综合网色播免费| 国产精品福利社| 午夜福利在线观看成人| 欧美a级完整在线观看| 高潮毛片无遮挡高清视频播放| 日韩在线播放欧美字幕| 一级毛片网|