上節(jié)已經(jīng)搭建了基本的框架結(jié)構(gòu) 這節(jié)來說說簡單的CURD
Generator 的使用
Jfinal官網(wǎng)中給出了Generator下載需要注冊一個(gè)賬號(hào)
Generator簡介:
Generator 用來極速生成 Model烧颖、BaseModel提澎、MappingKit吃粒、DataDictionary
文 件 。 使 用 時(shí) 通 常 只 需 配 置 Generator 的 四 個(gè) 參 數(shù) 即 可 : baseModelPackageName 、
baseModelOutputDir识啦、modelPackageName、modelOutputDir。四個(gè)參數(shù)分別表示 baseMode 的包
名诬辈,baseModel 的輸出路徑,modle 的包名荐吉,model 的輸出路徑? ?
來自jfinal2.2API
簡單來說就是給我們生成了實(shí)體 ?嗯 很方便 不用自己在去手動(dòng)寫了(開心)焙糟。
首先我們需要做的是 建立一個(gè)數(shù)據(jù)庫 (第一節(jié)建立的數(shù)據(jù)庫不能很好的說明Generator所以這次我們重新建立一個(gè)數(shù)據(jù)庫的名稱不變只是表結(jié)構(gòu)名稱發(fā)生了變化)
如圖:
數(shù)據(jù)庫表都 以"ss_"開頭?
從官網(wǎng)上下載后稍作修改
右鍵運(yùn)行
生成的相關(guān)文件(可以參照API有詳細(xì)的介紹 為了方便閱讀 我這里就直接粘貼過來吧 ^.^)
BaseModel 是用于被最終的 Model 繼承的基類,所有的 getter样屠、setter 方法都將生成在此文
件內(nèi)穿撮,這樣就保障了最終 Model 的清爽與干凈搓劫,BaseModel 不需要人工維護(hù),在數(shù)據(jù)庫有任何
變化時(shí)重新生成一次即可混巧。
MappingKit 用于生成 table 到 Model 的映射關(guān)系枪向,并且會(huì)生成主鍵/復(fù)合主鍵的配置,也即
在 JFinal 2.1 中無需在 configPlugin(Plugins me)方法中書寫任何樣板式的映射代碼咧党。
DataDictionary 是指生成的數(shù)據(jù)字典秘蛔,會(huì)生成數(shù)據(jù)表所有字段的名稱、類型傍衡、長度深员、備注、
是否主鍵等信息蛙埂。
來自jfinal2.2API
『簡單來說就是給我們生成了實(shí)體? 嗯 很方便 不用自己在去手動(dòng)寫了(開心)*2』倦畅。
持久化層寫好之后 我們再來說說上一節(jié)存在的問題?
直接訪問http://localhost:8080/JfinalTest/ 會(huì)報(bào)錯(cuò) 需要加入 http://localhost:8080/JfinalTest/index.jsp 才能正常訪問 我們只需要簡單配置
建立模塊user包并建立controller:
在MainConfig.java中配置:
簡單2步就可以把url為初始狀態(tài)的路徑 映射到 index.jsp
為了更好的運(yùn)用jfinal,在此基礎(chǔ)上我添加了 Sitemesh框架 Sitemesh的使用及配置 并引入了一個(gè)開源UI框架妹子 UI
簡單寫了下?sitmesh的搭建
把mazeUI的后臺(tái)模板拆分:left.jsp, head.jsp, footer.jsp 以及修飾模板default.jsp绣的。
部分截圖:
目錄結(jié)構(gòu)如下:
jfinal有個(gè)坑 jfinal控制render 找不到WEB-INF下文件? 找了下資料才知道如何解決
配置MainConfig:
配置JFinal路由映射:
每個(gè)Controller要繼承jfinal的Controller類 然后 默認(rèn)的都會(huì)執(zhí)行一個(gè)index方法
以上就是為我們進(jìn)行CURD操作做好了基礎(chǔ)叠赐。
下面我們就進(jìn)行對用戶的CURD操作。
我遇到的問題及查找的解決辦法:
本文部分內(nèi)容來自:jfinal官網(wǎng)