### JAVA 极速WEB+ORM框架 JFinal
JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、python等动态语言的开发效率!为您节约更多时间,去陪恋人、家人和朋友 ;)
#### JFinal有如下主要特点
- MVC架构,设计精巧,使用简单
- 遵循COC原则,零配置,无xml
- 独创Db + Record模式,灵活便利
- ActiveRecord支持,使数据库开发极致快速
- 极简、高性能Template Engine,十分钟内掌握基本用法
- 自动加载修改后的java文件,开发过程中无需重启web server
- AOP支持,拦截器配置灵活,功能强大
- Plugin体系结构,扩展性强
- 多视图支持,支持FreeMarker、JSP、Velocity
- 强大的Validator后端校验功能
- 功能齐全,拥有struts2的绝大部分功能
- 体积小仅580K
**JFinal 极速开发微信公众号欢迎你的加入: JFinal**
#### 以下是JFinal实现Blog管理的示例:
**1. 控制器(支持JFinal Template、JSP、Velocity、JSON等等以及自定义视图渲染)**
```java
@Before(BlogInterceptor.class)
public class BlogController extends Controller {
static BlogService service = new BlogService();
public void index() {
setAttr("blogPage", service.paginate(getParaToInt(0, 1), 10));
render("blog.html");
}
public void add() {
}
@Before(BlogValidator.class)
public void save() {
getModel(Blog.class).save();
redirect("/blog");
}
public void edit() {
setAttr("blog", service.findById(getParaToInt()));
}
@Before(BlogValidator.class)
public void update() {
getModel(Blog.class).update();
redirect("/blog");
}
public void delete() {
service.deleteById(getParaToInt());
redirect("/blog");
}
}
```
**2.Service所有业务与sql全部放在Service层**
```java
public class BlogService {
private static final Blog dao = new Blog().dao();
public Page<Blog> paginate(int pageNumber, int pageSize) {
return dao.paginate(pageNumber, pageSize, "select *", "from blog order by id asc");
}
public Blog findById(int id) {
return dao.findById(id);
}
public void deleteById(int id) {
dao.deleteById(id);
}
}
```
**3.Model(无xml、无annotaion、无attribute)**
```java
public class Blog extends Model<Blog> {
}
```
**4.Validator(API引导式校验,比xml校验方便N倍,有代码检查不易出错)**
```java
public class BlogValidator extends Validator {
protected void validate(Controller controller) {
validateRequiredString("blog.title", "titleMsg", "请输入Blog标题!");
validateRequiredString("blog.content", "contentMsg", "请输入Blog内容!");
}
protected void handleError(Controller controller) {
controller.keepModel(Blog.class);
}
}
```
**5.拦截器(在此demo中仅为示例,本demo不需要此拦截器)**
```java
public class BlogInterceptor implements Interceptor {
public void intercept(Invocation inv) {
System.out.println("Before invoking " + inv.getActionKey());
inv.invoke();
System.out.println("After invoking " + inv.getActionKey());
}
}
```
**JFinal 官方网站:[http://www.jfinal.com](http://www.jfinal.com)**
没有合适的资源?快使用搜索试试~ 我知道了~
JFinal极速开发框架
共901个文件
class:441个
java:351个
xml:74个
需积分: 9 9 下载量 152 浏览量
2018-01-22
11:05:36
上传
评论
收藏 1.35MB 7Z 举报
温馨提示
JFinal 是基于Java 语言的极速 web 开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful
资源推荐
资源详情
资源评论
收起资源包目录
JFinal极速开发框架 (901个子文件)
DbPro.class 41KB
Controller.class 36KB
Model.class 31KB
Cache.class 27KB
Db.class 19KB
AnsiSqlDialect.class 14KB
ExprParser.class 14KB
FloatingDecimal.class 12KB
Validator.class 12KB
EngineConfig.class 12KB
MethodKit.class 12KB
Engine.class 12KB
Dialect.class 12KB
ExprLexer.class 11KB
Record.class 10KB
PostgreSqlDialect.class 10KB
ActiveRecordPlugin.class 10KB
HttpKit.class 10KB
Parser.class 9KB
Lexer.class 9KB
JFinalJson.class 9KB
DruidPlugin.class 9KB
OracleDialect.class 9KB
FileRender.class 9KB
MetaBuilder.class 8KB
Sqlite3Dialect.class 8KB
Enhancer.class 8KB
SqlServerDialect.class 8KB
InterceptorManager.class 8KB
CaptchaRender.class 8KB
DataDictionaryGenerator.class 8KB
MysqlDialect.class 7KB
Constants.class 7KB
JettyServer.class 7KB
Compare.class 7KB
ActionMapping.class 7KB
JFinalViewResolver.class 7KB
Config.class 7KB
Generator.class 7KB
RenderFactory.class 7KB
JFinal.class 7KB
SharedMethodKit.class 7KB
C3p0Plugin.class 6KB
Injector.class 6KB
Prop.class 6KB
ActionHandler.class 6KB
Arith.class 6KB
CacheInterceptor.class 6KB
SqlKit.class 6KB
Cron4jPlugin.class 6KB
Duang.class 6KB
RedisPlugin.class 6KB
JettyServerForIDEA.class 6KB
RenderDirective.class 6KB
FDBigInt.class 6KB
Include.class 5KB
MultipartRequest.class 5KB
ClassPathSource.class 5KB
JspRender.class 5KB
ModelRecordElResolver.class 5KB
CaptchaRender.class 5KB
HikariCpPlugin.class 5KB
Ret.class 5KB
BaseModelGenerator.class 5KB
TableBuilder.class 5KB
FreeMarkerRender.class 5KB
ActionReporter.class 5KB
VelocityRender.class 5KB
ModelBuilder.class 5KB
JsonRender.class 5KB
CPI.class 5KB
ModelGenerator.class 5KB
Kv.class 5KB
PropKit.class 5KB
JFinalFilter.class 5KB
RenderManager.class 5KB
Field.class 5KB
DbKit.class 4KB
TypeConverter.class 4KB
Config.class 4KB
Method.class 4KB
Invocation.class 4KB
Define.class 4KB
TokenManager.class 4KB
IncDec.class 4KB
Tx.class 4KB
CacheKit.class 4KB
Unary.class 4KB
For.class 4KB
DruidStatViewHandler$JFinalStatViewServlet.class 4KB
Logic.class 4KB
Routes.class 4KB
MappingKitGenerator.class 4KB
Callback.class 4KB
JMap.class 4KB
IntegerWriter.class 4KB
Table.class 4KB
Scope.class 4KB
FileSource.class 4KB
Assign.class 4KB
共 901 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10
资源评论
qq_37885085
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功