Hello JFinal World
JFinal 是基于 Java 语言的极速 WEB + ORM 开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java 语言所有优势的同时再拥有 ruby、python、php 等动态语言的开发效率!为您节约更多时间,去陪恋人、家人和朋友!(鼓掌!~~)
JFinal 有如下主要特点:
MVC 架构,设计精巧,使用简单
遵循 COC 原则,零配置,无 xml
独创 Db + Record 模式,灵活便利
ActiveRecord 支持,使数据库开发极致快速
自动加载修改后的 java 文件,开发过程中无需重启 web server
AOP 支持,拦截器配置灵活,功能强大
Plugin 体系结构,扩展性强
多视图支持,支持 FreeMarker、JSP、Velocity
强大的 Validator 后端校验功能
功能齐全,拥有 struts2 绝大部分核心功能
体积小仅 218K,且无第三方依赖
官方推荐用Eclipse IDE for Java EE Developers 做为开发环境,但我个人用惯了myecllipse+tomact
Eclipse IDE for Java EE Developers 中
1、创建 Dynamic Web Project
2、修改 Default Output Folder,推荐输入 WebRoot\WEB-INF\classes
特别注意:此处的 Default out folder 必须要与 WebRoot\WEB-INF\classes 目录
完全一致才可以使用 JFinal 集成的 Jetty 来启动项目。
3、修改 Content directory,推荐输入 WebRoot
注 意 : 此 处 也 可 以 使 用 默 认 值 WebContent , 但 上 一 步 中 的
WebRoot\WEB-INF\classes 则需要改成 WebContent\WEB-INF\classes 才能对应上。
4、去官网下载最新的jar包(我这是JFinal-lib-1.4)
把jetty-server-8.1.8.jar 和JFinal-bin-1.4.jar放到项目 WEB-INF\lib下,jetty-server-8.1.8.jar是开发时使用的运行环境,用tomact和生产环境下就不需要了
5、添加到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>
6、在项目 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."); } }
6、右击项目名选中com.jfinal.core.JFinal ok
7、浏览器输入http://localhost/hello输出内容为 Hello JFinal World 证明项目框架搭建完成。
注意:在 tomcat 下开发或运行项目时,需要先删除 jetty-server-xxx.jar 这个包,否则会引起冲突。
(抄袭官网api,罪过罪过....)
jfinal真的挺简单,迅速,强大的一个框架,没有ssh的N多xml配置文件,后面做个简单的学生信息管理,配合FreeMarker
创建MyAppConfig.java
------------------------------------------------------------------------------------------------------------------------------
Hello JFinal World相关推荐
- jfinal整合shiro回顾
2019独角兽企业重金招聘Python工程师标准>>> 目前jfinal使用shiro进行身份验证和授权的后台实现已完成,现在我再来总结下学习过程及代码实现过程.最近半年多项目开发都 ...
- jfinal框架下使用c3P0连接池连接sql server 2008
2019独角兽企业重金招聘Python工程师标准>>> 闲话少说 进入正题 首先是工程需要的jar包 然后是c3p0的配置文件.我是这样配置的 仅供参考 jdbcDriver = c ...
- Jfinal Generator 不需要生成带某个前缀的表名数组的方法
2019独角兽企业重金招聘Python工程师标准>>> package com.demo.common.model; import javax.sql.DataSource; imp ...
- SoJpt Boot 2.3-3.8 发布,Spring Boot 使用 Jfinal 特性极速开发
SoJpt Boot 2.3-3.8 发布了.SoJpt Boot 基于 JFinal 与 Spring Boot制作, 实现了 Spring Boot 与 Jfinal 的混合双打,使 Spring ...
- 关于Jfinal的分享代码托管GitHub
为什么80%的码农都做不了架构师?>>> Blog中所有的代码已经托管到github. https://github.com/b1412 此blog中关于Jfinal的代码分享 ...
- jfinal js 拦截_jfinal全局数据拦截器
封装json体.依赖 fastjson.需要的拿走. 此拦截器不处理带文件表单,请自行修改.import com.alibaba.fastjson.JSONObject; import com.jfi ...
- JFinal 源码build脚本
为什么80%的码农都做不了架构师?>>> 目前 github上jfinal的库暂时没有提供构建脚本,有需要自己编译源码的朋友可以参考我fork的jfinal项目,目前maste ...
- JFinal Nutz
JFinal 极速开发项目 Nutz-程序员小伙伴们的另一个选择 - Nutz
- jfinal里使用ajax,Jfinal解决AJAX的跨域请求
JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速.代码量少.学习简单.功能强大.轻量级.易扩展.Restful. 一开始使用AJAX来传输json数据时, ...
- JFinal Extensions 2.0 发布,JFinal 扩展
Jfinal-Ext转眼间已经发布半年了.我对jfinal-ext的定位是 一个对jfinal周边设施进行完善的项目,如整合常用的第三方库.目前大部分是我个人的经验总结通过jfinal进行扩展作为技术 ...
最新文章
- ORACLE not available如何解决
- windows修改环境变量神器—Rapid Environment Editor
- 解决yarn报错:Found incompatible module (yarn config set ignore-engines true)
- /bin/bash^M: bad interpreter: 没有那个文件或目录
- rest api 示例2_REST API教程– REST Client,REST Service和API调用通过代码示例进行了解释
- shell调用函数并获取函数返回值
- Nodejs基础01
- Redis笔记(六)Redis的消息通知
- python插入排序_python简单的实现插入排序和二分插入排序
- linux parrot 中文_parrot linux vi/vim命令
- rk3399_android7.1音频通路相关说明
- Audio -- Music Playback 框图
- mysql sql语句 参数化_参数化SQL语句
- 产品经理听完《等你下课》心态崩了?选择汇新云重振旗鼓
- 人工智能导论——逻辑推理
- mac os linux pageup pagedown,[整理]Mac中的类似于Windows中的PageUp和PageDown以及Ctrl+Home和Ctrl+End...
- abap bdc附加选项
- ubuntu安装极点五笔并支持大字符集
- mindspore.dataset.vision的HWC2CHW算子问题
- 中国文艺复兴_2040年即将到来的文艺复兴
热门文章
- 好想学python 怎么猜人物_想自学Python,如何才能坚持下来?
- golang 数组 最后一个_Golang 速览
- 神兽来了服务器维护,20191204维护公告解读
- node服务器放vue项目,本地Vue项目跨域请求本地Node.js服务器的配置方法
- python webbrowser安装_如何为python webbrows设置BROWSER环境变量
- kirin710f是什么处理器_麒麟710a与麒麟710f哪个好?对比区别哪款性能更好一些
- VMware + CentOS 网络设置为NAT模式
- outlook邮箱限额满了
- OCJP认证考试复习课-张晨光-专题视频课程
- 阴阳师人数最多的服务器,《阴阳师》手游部分服务器合并公告