❶ Jfinal攔截器中如何獲取POST數據
網頁鏈接
getPara系列方法
Controller提供了getPara系列方法用來從請求中獲取參數。getPara系列方法分為兩種類型。第一種類型為第一個形參為String的getPara系列方法。該系列方法是對HttpServletRequest.getParameter(String name)的封裝,這類方法都是轉調了HttpServletRequest.getParameter(String name)。
第二種類型為第一個形參為int或無形參的getPara系列方法。該系列方法是去獲取urlPara中所帶的參數值。getParaMap與getParaNames分別對應HttpServletRequest的getParameterMap與getParameterNames。
記憶技巧:第一個參數為String類型的將獲取表單或者url中問號掛參的域值。第一個參數為int或無參數的將獲取urlPara中的參數值。
getPara使用例子:
getBean與getModel系列 :網頁鏈接
getModel用來接收頁面表單域傳遞過來的model對象,表單域名稱以」modelName.attrName」方式命名,getModel使用的attrName必須與數據表欄位名完全一樣。
getBean方法用於支持傳統Java Bean,包括支持使用jfinal生成器生成了getter、setter方法的Model,頁面表單傳參時使用與setter方法相一致的attrName,而非數據表欄位名。
getModel與getBean區別在於前者使用資料庫表欄位名而後者使用與setter方法一致的屬性名進行數據注入。建議優先使用getBean方法。
❷ jfinal怎麼配置filter
你是想實現如.net中的過濾器的效果嗎,用Interceptor介面可以實現,具體可以網路一下「專JFinal學習筆記(三) 過濾器實屬現用戶登錄驗證」,檢索的第一條結果就是,裡面詳細講述了過濾器實現的方法。
❸ jfinal的HttpKit工具怎麼使用
HttpKit.post(url, queryParas, data)
最後個參數可傳Null,中間是map參數。url是介面地址
❹ jfinal如何過濾對JSP/html的請求
jfinal對jsp或者html過濾的請求配置:
public class PermissionHandler extends Handler {
@Override
public void handle(String target, HttpServletRequest request,
HttpServletResponse response, boolean[] isHandled) {
int indexJsp= target.lastIndexOf(".jsp");
int indexHtml = target.lastIndexOf(".html");
if (indexJsp!= -1 || indexHtml!= -1) {
System.out.println(target);
if (request.getSession().getAttribute(Const.LOGINUSER) == null) {
System.out.println("沒有登陸!跳轉到.html");
target = "/login.html";
} else {
System.out.println("登陸了,放行!");
}
}
nextHandler.handle(target, request, response, isHandled);
}
❺ JFinal使用Model根據條件更新如何操作
JFinal的Model是對應資料庫某表的一行數據, 一個Model會綁定一條數據的主鍵,更新操作都會專自動增加屬上主鍵的.
所以JFinal 根據條件更新:是直接上sql的:
intcount=Db.update("updateaccountsetcash=cash-?whereid=?",100,123);
intcount2=Db.update("updateaccountsetcash=cash+?whereid=?",100,456);
❻ jfinal2.0 <#if >怎麼用,越詳細越好
jfinal2.0 是沒有模版處理的, 你用的應該是其他的模版有可能是FreeMarker
項目建議升級到最新版 3.3 (當前時間2018-04-19) , 使用 JFinal Template Engine
JFinal Template Engine 採用獨創的 DKFF (Dynamic Key Feature Forward)詞法分析演算法以及獨創的DLRD (Double Layer Recursive Descent)語法分析演算法,極大減少了代碼量,降低了學習成本,並提升了用戶體驗。
以往任何一款 java 模板引擎都有顯著的不同,極簡設計、獨創演算法、極爽開發體驗,從根本上重新定義了模板引擎,這里是發布時的盛況,傳送門:重新定義模板引擎
JFinal 模板引擎專為 java 開發者打造,所以堅持兩個核心設計理念:一是在模板中可以直接與 java 代碼通暢地交互,二是盡可能沿用 java 語法規則,將學習成本降到極致。
因此,極速掌握 90% 的用法,只需要記住一句話:JFinal 模板引擎表達式與 java 是直接打通的。
項目升級的過程中遇見問題, 可到社區@杜福忠 希望我能幫到你
❼ JFinal 類Controller中的renderJavascript方法怎麼用
renderJavascript僅僅響應了content type 為"text/javascript" 的文本給客戶端。客戶端具體怎麼使用這些本文,需要根內據需求來。
當容初設計這個方法是為了使 JFinal 能方便打造無靜態資源的極度輕量級小型應用(也即一個jar包走天涯的應用),具體方式如下:
1:html中有如下對js的引用
注意 src 屬性後面的url指向的 action
2:創建src 引用到的actoin(此action的controllerKey為 "/js")
?
1
2
3
public void appjs() {
renderJavascript("function test(){alert('JFinal');}");
}
3:在頁面中直接使用通過 /js/appjs 引入的js
注意在1中的html 也是在controller中直接生成然後再renderText(htmlContent, "text/html")。另外image這樣的也是同樣的原理。
❽ jfinal 批量處理怎樣使用
修改JFinal Model類,增加batch save方法,實現批量插入。 代碼簡單用了一下可以,但沒有仔版細測試過。權
另外有個疑問,如何讓beanList中的每個Model對象自動獲得自增長ID值? 誰實現了這個分享一下。
調用 model.batchSave(beanList) 的時候,必須注意:這里每個Model類都調用過同樣的set方法,即每個model對象在拼裝insert的語句的時候都一樣。
❾ 在web,xml中配置了<filter-name>jfinalfilter</filter-name> 為什麼報java,lang,c
在研究liferay框架中看到Web.xml中加入了過濾器的標簽,可以根據頁面提交的URL地址進行過濾,發現有專幾個新標簽沒用過,下面就介屬紹以下幾個過濾器的標簽用法:
<!-- 定義Filter -->
<filter>
<!-- Filter的名字 -->
<filter-name>log</filter-name>
<!-- Filter的實現類 -->
<filter-class>lee.LogFilter</filter-class>
</filter>
<!-- 定義Filter攔截的URL地址 -->
<filter-mapping>
<!-- Filter的名字 -->
<filter-name>log</filter-name>
<!-- Filter負責攔截的URL 全部以/的請求,如果<url-pattern>/*.action </>,將會以攔截*.action的請求-->
<url-pattern>/*</url-pattern>
</filter-mapping>
❿ jfinal 怎麼防止sql注入
數據進入資料庫之前對非法字元進行轉義,在更新和顯示的時候將非法字元還原內
在顯示的容時候對非法字元進行轉義
如果項目還處在起步階段,建議使用第二種,直接使用jstl的<c:out>標簽即可解決非法字元的問題。當然,對於Javascript還需要自己處理一下,寫一個方法,在解析從伺服器端獲取的數據時執行以下escapeHTML()即可。