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的绝大部分功能
-
体积小仅339K,且无第三方依赖
以下是JFinal实现Blog管理的示例:
1:控制器(支持FreeMarker、JSP、Velocity、JSON等以及自定义视图渲染)
- @Before(BlogInterceptor.class)
- public class BlogController extends Controller {
- public void index() {
- setAttr("blogList", Blog.dao.find("select * from blog"));
- }
- public void add() {
- }
- @Before(BlogValidator.class)
- public void save() {
- getModel(Blog.class).save();
- }
- public void edit() {
- setAttr("blog", Blog.dao.findById(getParaToInt()));
- }
- @Before(BlogValidator.class)
- public void update() {
- getModel(Blog.class).update();
- }
- public void delete() {
- Blog.dao.deleteById(getParaToInt());
- }
- }
2:Model(无xml、无annotation、无attribute、无getter、无setter)
- public class Blog extends Model<Blog> {
- }
3:Validator(API引导式校验,比xml校验方便N倍,有代码检查不易出错)
- 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);
- }
- }
4:拦截器(在此demo中仅为示例,本demo不需要此拦截器)
- 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());
- }
- }
相关推荐
开发服务器web程序时,一定要熟悉smsh框架结构和W3C网页标准,本书涵盖这些知识,《Hibernate3.6.10-Final-API规范手册》《Hibernate3.6.10-Final-官方中文参考手册》《JAVA-JDK1.6-API规范手册》《JAVA主流开源框架...
### Java实训教程:Java软件开发实战与Hibernate框架详解 #### 一、概述 在现代软件开发领域,特别是在Java企业级应用开发中,高效且简洁的数据访问层设计至关重要。本教程旨在通过详细介绍Hibernate这一著名的...
### Java实训教程:Spring框架详解 #### Spring框架概述 Spring框架作为一个开源的、轻量级的应用框架,旨在简化企业级应用开发过程中...对于希望在Java开发领域有所成就的人来说,掌握Spring框架是非常重要的一步。
"java开发实习周记12篇" java开发实习周记12篇是关于java开发实习的周记文章,共有12篇文章,从实习第一周到实习第十二周,每篇文章都记录了实习生的实习经历和java开发知识点。下面是每篇文章的知识点总结: 实习...
【Java面向对象之final修饰符】 Java中的final关键字在面向对象编程中扮演着重要的角色,它主要用于修饰类、变量和方法,确保它们在程序运行过程中不可改变或不可重写。以下是对final修饰符的详细解释: 一、final...
JAVA开发规范手册1.50 本手册是阿里巴巴集团技术团队的集体智慧结晶和经验总结,旨在提高Java开发者的综合素质和软件开发质量。手册共分七个维度:编程规约、异常日志、单元测试、安全规约、MySQL数据库、工程结构...
在Java开发领域,开源框架的应用极大地提升了软件开发的效率与质量。本文将基于提供的部分开源框架资源,详细阐述这些框架的特点、功能及其在实际项目中的应用价值。 #### 1. Play Framework 2.0 Final **下载链接*...
**Spring** 则是一个全面的企业级应用开发框架,它不仅包括了IoC(Inversion of Control,控制反转)和AOP(Aspect-Oriented Programming,面向切面编程)两大核心特性,还提供了事务管理、数据访问集成、MVC框架、...
Java开发过程中,保护代码安全是至关重要的,尤其是对于企业级应用来说,源码泄漏或字节码被轻易反编译可能会导致知识产权损失、商业机密泄露等严重问题。ClassFinal正是为解决这些问题而设计的一款Java类文件安全...
《阿里巴巴Java开发手册(嵩山版)》是阿里巴巴集团针对Java开发者发布的一份详尽的编程规范和最佳实践指南。这份手册旨在提升代码质量、提高团队协作效率,并为Java开发者提供一套统一的开发标准。嵩山版是该手册的...
总的来说,这个Java开发的网店源码项目为我们提供了一个学习Java Web开发基础以及独立于框架实现业务逻辑的实例。通过深入研究这个项目,我们可以了解到如何组织代码结构,如何处理HTTP请求,以及如何设计数据库模型...
Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web应用框架,它简化了Web应用程序的开发过程,提供了丰富的特性来支持复杂的业务逻辑处理。 #### 表单校验的重要性 在Web应用开发中,表单校验是...
Java开发规范手册是阿里巴巴集团技术团队推出的,旨在规范Java开发人员的编程习惯,提高代码质量和一致性。手册内容涵盖了编程规约、异常日志、MySQL规约、工程规约以及安全规约等部分,其中编程规约是核心内容,...
### Java开发WebService实例详解 在IT领域,尤其是企业级应用开发中,WebService作为一种标准化的、跨平台的服务交互方式,被广泛应用于系统间的数据交换与服务调用。本文将基于给定的“Java开发WebService实例”...
Java 面试题是 Java 开发人员面试的必备知识,涵盖了 Java 基础知识、Java 框架、Java 集合框架、Java 多线程、Java 网络编程等方面的知识点。在本文中,我们将对 Java 面试题进行总结和分析,帮助读者快速掌握 Java...
《阿里巴巴Java开发规范》是Java开发者的一份重要指南,它为编写高质量、可维护的代码提供了明确的标准和建议。这份规范不仅适用于阿里巴巴集团内部的开发团队,也对广大Java开发者有着广泛的参考价值。以下是该规范...
《Java开发手册(嵩山版)》是阿里巴巴技术团队与社区开发者共同努力的成果,它集成了大量的实战经验,旨在提高Java开发的效率和质量。手册覆盖了编程规约、异常日志、单元测试、安全规约、MySQL数据库、工程结构、...
Struts2框架中的拦截器机制是其核心之一,能够极大地增强框架的功能性和灵活性。通过理解拦截器的基本概念、内置拦截器的功能以及如何配置和使用拦截器,开发者可以更高效地构建稳定且功能丰富的Web应用程序。
《阿里巴巴Java开发手册》通过一系列详尽的规约、建议和示例,为Java开发者提供了宝贵的指南。它不仅涵盖了基本的编程技巧和最佳实践,还深入探讨了高级主题,如并发控制、数据库管理和软件架构设计。遵循这些指南...
7. **集合框架**:Java集合框架是其强大之处,手册会解释List、Set、Map等接口及其实现类的用法,以及Stream API的使用。 8. **并发编程**:Java提供了丰富的并发工具,如synchronized、volatile、线程池等,手册会...