1.1 JFinal创建项目
使用Maven创建Jfinal项目
引入Jfinal的jar包
<dependency>
<groupId>com.jfinal</groupId>
<artifactId>jfinal</artifactId>
<version>2.2</version>
</dependency>
1.3 修改 web.xml
将如下内容添加至 web.xml
<filter>
<filter-name>jfinal</filter-name>
<filter-class>com.jfinal.core.JFinalFilter</filter-class>
<init-param>
<param-name>configClass</param-name>
<param-value>demo.DemoConfig</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>jfinal</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
demo.DemoConfig是项目的总配置文件,里面包含项目的所有配置信息,包含数据库(mysql等)、缓存(redis等)等相关的连接信息,以及数据库表与实体类的映射信息,还有路由的控制信息等,详细信息见Jfinal—JFinalConfig解析
1.4 添加 java 文件
在项目 src 目录下创建 demo 包,并在 demo 包下创建 DemoConfig 文件, 内容如下:
package demo;
import com.jfinal.config.*;
public class DemoConfig extends JFinalConfig {
//配置JFinal常量值,如开发模式常量devMode的配置me.setDevMode(true);
//在开发模式下,JFinal会对每次请求输出报告,如输出本次请求的url、controller、method以及请求所携带的参数。
public void configConstant(Constants me) {
me.setDevMode(true);
me.setViewType(ViewType.JSP);
me.setMaxPostSize(2000000000);
}
//配置访问路由,当在Controller中方法中加入@ActionKey, 则直接访问@ActionKey的路径即可,与Spring MVC中的RequestMapping类似。
//一般会单独封装
public void configRoute(Routes me) {
{
me.add("/hello",HelloController.class);
}
//配置插件(数据库mysql,缓存redis等)
public void configPlugin(Plugins me) {}
//配置JFinal全局拦截器,拦截所有action请求,除非使用@Clear在Controller中清除。
//Interceptor配置粒度分为Gloal、Inject、Class、Method
public void configInterceptor(Interceptors me) {}
//Handler可以接管所有的web请求,并对应用拥有完全的控制权,可以很方便地实现更高层的功能性扩展。
public void configHandler(Handlers me) {}
注意:DemoConfig.java 文件所在的包以及自身文件名必须与 web.xml 中的 param-value 标 签内的配置相一致(在本例中该配置为 demo.DemoConfig)。
在 demo 包下创建 HelloController 类文件, 内容如下:
package demo;
import com.jfinal.core.Controller;
public class HelloController extends Controller {
public void index()
{
renderText("Hello JFinal World.");
}
1.5启动项目并访问 http://localhost/hello
输出内容为 Hello JFinal World 证明项目 框架搭建完成。