傳說中的mvc架構應用程式,作為每一層的技術都層出不窮,但是選擇一種好的框架來解決實際問題是必須的,當下分析持久層框架,要數有名的hibernate框架,,。由於hibernate『用起來比較效率低,而且麻煩,所以大多數人會採取jdbc的封裝,以及dbutils的小型框架。。
現在比較流行的一種框架是mybaties框架,mybaties框架與hibernate框架相比,hibernate配置過於複雜,sql語句無法自己書寫,是框架幫你生成,很不爽效率低。
屬於全自動的orm框架,慢慢的有了mybaties框架,屬於半自動型的orm框架。。它的sql語句可以隨心所欲控制並且是寫在配置檔案中sql語句程式設計師自己控制。。
其中mybaties也封裝了好多豐富的api,。供程式設計師呼叫。。
首先第一步::先來說說mybaties的主配置檔案::
<?xml version="1.0" encoding="utf-8" standalone="no"?>
配置別名是為了在實體類對應的xml中便於使用::(必須與實體類中的字段一致)
select
f_id as id,
f_name as name
from
t_******table
where
f_id= #id#
如果不一致兩種解決方案:第一種假如user實體類中欄位username,資料庫表對應的是uname.則查詢sql應該寫成
select
uname as username
from
user
第二種解決方案我們通常都會使用的:也就是類似於hibernate的實體對映檔案:實體欄位和資料庫字段對應關係::
resultmap="******tablemap">
select * from t_******table order by $ordertype$ desc;
一定注意此處的resultclass="******table"應該換成前面的resultmap="******tablemap"
有了這些東西那麼簡單的單錶查詢就可以了::
客戶端呼叫最關鍵的就是載入配置檔案,獲得sqlsession類::
呼叫這個類的api進行資料庫的操作::
private static sqlmapclient sqlmapclient;
//載入ibatis基本配置檔案
static catch (ioexception e)
}
但是mybaties肯定有和hibernate一樣的關聯關係的操作也就是多表查詢:::
例如人和訂單表::一對多的關係
在實體類中:人的實體類有好多訂單 訂單實體類有乙個人::
此時只需要在resultype型別中增加每乙個表對應的字段::
只是查詢的sql語句利用到了:連線查詢::
以上大體基本了解了mybaties框架,,這個時候學任何乙個框架都需要應用到web程式上,,hibernate框架,與spring整合很簡單,就是datasource注入,一直注入,在dao層繼承了hibernatedaosupport,。。mybaties的模式和它的一樣。。只需要匯入乙個mybaties和spring的整合jar包。之後就可以dao繼承mybaties的乙個模板類。然後就可以
注入之後查詢資料庫了,從而所有的東西都可以向mvc三層架構執行了
stem 課程體系
格物斯坦小坦克來說說stem教育和創客教育的區別。stem教育主要是強調 學 和 做 學生在體驗過程中強調知識的融合。一般來說有問題型學習 設計型學習 專案型學習,主要特徵是學生自主式學習合作與分享。創客教育是將抽象知識與真實世界相連線,讓學生看到知識之間的關聯。不僅是學科之間的關聯,還是知識之間的...
課程體系包括哪些要素 課程體系包括哪些要素
高等學校課程體系 一 什麼是課程 高等學校課程 課程體系 一 課程 課程 一詞源於拉丁語 跑道 cursum,race course 轉義作為教育上的術語,意 味著 學習者學習的路線 與 學習過程 course ofstudy 同義。自課程一詞被英國教 育學家斯賓塞正式提出後,關於課程界說的爭論從未...
思科認證 課程體系
ccna課程介紹 1 教材 英文 ccna cisco certified network associate 學習指南 英文公升級版 考試號 640 802 中文 ccna學習指南 中文第6版 2 輔導資料 ccna cisco certified network associate 複習重點及模...