丰富的线上&线下活动,深入探索云世界
做任务,得社区积分和周边
最真实的开发者用云体验
让每位学生受益于普惠算力
让创作激发创新
资深技术专家手把手带教
遇见技术追梦人
技术交流,直击现场
海量开发者使用工具、手册,免费下载
极速、全面、稳定、安全的开源镜像
开发手册、白皮书、案例集等实战精华
为开发者定制的Chrome浏览器插件
JFinal是基于Java语言的极速WEB+ORM开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、python、php等动态语言的开发效率!
JFinal有如下主要特点:lMVC架构,设计精巧,使用简单l遵循COC原则,零配置,无xmll独创Db+Record模式,灵活便利lActiveRecord支持,使数据库开发极致快速l自动加载修改后的java文件,开发过程中无需重启webserverlAOP支持,拦截器配置灵活,功能强大lPlugin体系结构,扩展性强l多视图支持,支持FreeMarker、JSP、Velocityl强大的Validator后端校验功能l功能齐全,拥有struts2绝大部分核心功能l体积小仅218K,且无第三方依赖
官方推荐用EclipseIDEforJavaEEDevelopers做为开发环境
1、创建DynamicWebProject
2、修改DefaultOutputFolder,推荐输入WebRoot\WEB-INF\classes
特别注意:此处的Defaultoutfolder必须要与WebRoot\WEB-INF\classes目录完全一致才可以使用JFinal集成的Jetty来启动项目。
3、修改Contentdirectory,推荐输入WebRoot
注意:此处也可以使用默认值WebContent,但上一步中的WebRoot\WEB-INF\classes则需要改成WebContent\WEB-INF\classes才能对应上。
把jetty-server-8.1.8.jar和jfinal-2.0-bin.jar放到项目WEB-INF\lib下,jetty-server-8.1.8.jar是开发时使用的运行环境,用tomact和生产环境下就不需要了
最终创建的项目结构图如下(注意:下面的jar包用的是开源项目eova中的):
5、其中web.xml的内容如下(注意下面的:demo.DemoConfig指的就是上图的DemoConfig)
6、在项目src目录下创建demo包,并在demo包下创建DemoConfig文件,内容如下:
packagedemo;
importcom.jfinal.config.Constants;
importcom.jfinal.config.Handlers;
importcom.jfinal.config.Interceptors;
importcom.jfinal.config.JFinalConfig;
importcom.jfinal.config.Plugins;
importcom.jfinal.config.Routes;
publicclassDemoConfigextendsJFinalConfig{
@Override
publicvoidconfigConstant(Constantsme){
me.setDevMode(true);
}
publicvoidconfigRoute(Routesme){
me.add("/hello",HelloController.class);
publicvoidconfigPlugin(Pluginsme){}
publicvoidconfigInterceptor(Interceptorsme){}
publicvoidconfigHandler(Handlersme){}
注意:DemoConfig.java文件所在的包以及自身文件名必须与web.xml中的param-value标签内的配置相一致(在本例中该配置为demo.DemoConfig)。
在demo包下创建HelloController类文件,内容如下:
importcom.jfinal.core.Controller;
publicclassHelloControllerextendsController{
publicvoidindex(){
renderText("HelloJFinalWorld.");
6、选中项目名,选择调试下拉选下面的DebugConfigurations
选中com.jfinal.core.JFinalok
注意:在tomcat下开发或运行项目时,需要先删除jetty-server-xxx.jar这个包,否则会引起冲突。