❶ 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()即可。