迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有 Java
语言所有优势的同时再拥有ruby、python、php等动态语言的开发效率!
JFinal有如下主要特点:
lMVC架构,设计精巧,使用简单
l遵循COC原则,零配置,无xml
l独创Db + Record模式,灵活便利
lActiveRecord支持,使数据库开发极致快速
l自动加载修改后的java文件,开发过程中无需重启web server
lAOP支持,拦截器配置灵活,功能强大
lPlugin体系结构,扩展性强
l多视图支持,支持FreeMarker、JSP、Velocity
l强大的Validator后端校验功能
l功能齐全,拥有struts2绝大部分核心功能
l体积小仅303K,且无第三方依赖
接下来,来实际创建一个小项目。首先,创建Dynamic Web Project
填入项目基本信息
注意:Target runtime一定要选择
修改Default Output Folder,推荐输入WebRoot\WEB-INF\classes
注意:此处的Default out folder必须要与 WebRoot\WEB-INF\classes目录完全一致才可
以使用JFinal集成的Jetty来启动项目。
修改Content directory,推荐输入 WebRoot
注意:此处也可以使用默认值 WebContent,但上一步中的WebRoot\WEB-INF\classes则需要改成 WebContent\WEB-INF\classes才能对应上。
放入JFinal库文件
将jfinal-xxx.jar与jetty-server-8.1.8.jar拷贝至项目WEB-INF\lib下即可。
注意:jetty-server-8.1.8.jar是开发时使用的运行环境,生产环境不需要此文件。
修改web.xml
将如下内容添加至web.xml
添加java文件
在项目 src目录下创建 demo包,并在 demo包下创建 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)。
在 demo包下创建 HelloController类文件,内容如下:
package demo;
import com.jfinal.core.Controller;
public class HelloController extends Controller {
public void index() {
renderText("Hello JFinal World.");
}
}
启动项目
创建启动项如下图所示:
鼠标右键点击 Java Application并选择New菜单项,新建 Java Application启动项
在右侧窗口中的Main class输入框中填入: com.jfinal.core.JFinal并点击Debug按钮启动项
目,如下图所示:
开启浏览器看效果
打开浏览器在地址栏中输入: http://localhost/hello,输出内容为 Hello JFinal World证明项目
框架搭建完成。
使用JFinal已经一段时间,深切体会到其便捷性,强烈分享给大家,特地整理了一下关于JFinal的资料分享给大家,http://www.36zhen.com/t?id=207,如果大家有什么问题,也欢迎加群413461338一起讨论学习!