JFinal主要特点:
- MVC架构,设计精巧,使用简单
- 遵循COC原则,零配置,无xml
- ActiveRecord支持,使数据库开发极致快速
- 自动加载修改后的java文件,开发过程中无需重启web server
- AOP支持,拦截器配置灵活,功能强大
- Plugin体系结构,扩展性强
- 多视图支持,支持FreeMarker、JSP、Velocity
- 强大的Validator后端校验功能
- 功能齐全,拥有struts2的绝大部分功能
- 体积小仅180K,且无第三方依赖
新建一个jfinal工程:
1.新建一个web project工程,在lib下放入jfinal -xxx.jar 与 jetty jetty-server-6.1.26.jar。
2.在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>
3.
在项目 src 目录下 创建 demo demo 包,并 在 demo demo 包下创建 DemoConfig DemoConfig DemoConfig 文件 , 内 容如下 :
package demo;
import com.jfinal.config.*;
public class DemoConfig extends JFinalConfig {
public void configConstant(Constants me) {
me.setDevMode(true);
}
public void configRoute(Routes me) {
me.add("/hello", HelloController.class);
}
public void configPlugin(Plugins me) {}
public void configInterceptor(Interceptors me) {}
public void configHandler(Handlers me) {}
}
注意: DemoConfig .java 文件所在的包以及自身名必须与 文件所在的包以及自身名必须与 web.xml 中的 param-value 标签 内的 配置相一致 (在本例中该配置demo.DemoConfig)。
4.
在 demo 包下创建 HelloController类文件, 内容如下:
package demo;
import com.jfinal.core.Controller;
public class HelloController extends Controller {
public void index() {
renderText("Hello JFinal world.");
}
}
5.启动项目:
鼠标右键点击 Java Application 并选择 New菜单项, 新建 Java Application 启动项,如图所示:
在右侧窗口中的 Main class输入 框中填: com.jfinal.core.JFinalc并点击 Debug 按键启动项目,
6.
打开浏览器 在地址栏中输入 : http://localhost/hello , 输出内容 为 Hello JFinal world 证明 项目框架搭建完成。
其中hello对应DemoConfig类中configRoute方法中的字符串hello