JFinal实现Blog管理的代码

原创 2012年03月21日 12:52:06

如果需要下载demo项目、源码及详细文档请到: http://www.oschina.net/p/jfinal  并点击软件首页按钮

JFinal QQ群:222478625

一:控制器(支持FreeMarker、JSP、Velocity、JSON等等以及自定义视图渲染)

@Before(BlogInterceptor.class)
public class BlogController extends Controller {
    public void index() {
        list();
    }
    
    public void list() {
        setAttr("blogList", Blog.dao.find("select * from blog order by id asc"));
        render("blog.html");
    }
    
    public void add() {
        render("add.html");
    }
    
    @Before(BlogValidator.class)
    public void save() {
        getModel(Blog.class).save();
        list();
    }
    
    public void edit() {
        setAttr("blog", Blog.dao.findById(getParaToInt()));
        render("edit.html");
    }
    
    @Before(BlogValidator.class)
    public void update() {
        getModel(Blog.class).update();
        list();
    }
    
    public void delete() {
        Blog.dao.deleteById(getParaToInt());
        list();
    }
}

2:Model(仅一行代码,无xml、无annotaion,其中new Blog()这行代码也可以删掉不是必须) 

public class Blog extends Model<Blog> {
    public static final Blog dao = new 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);
        String actionKey = getActionKey();
        if (actionKey.equals("/blog/save"))
            controller.render("add.html");
        else if (actionKey.equals("/blog/update"))
            controller.render("edit.html");
    }
}

4:拦截器(在此demo中仅为示例,本demo不需要此拦截器)

public class BlogInterceptor implements Interceptor {
    public void intercept(ActionInvocation ai) {
        System.out.println("Before invoking " + ai.getActionKey());
        ai.invoke();
        System.out.println("After invoking " + ai.getActionKey());
    }
}

 如果需要下载demo项目、源码及详细文档请到: http://www.oschina.net/p/jfinal  并点击软件首页按钮

JFinal QQ群:222478625



版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

JFinal之Db开发示例,不使用ActiveRecord的情况

// 创建name属性为James,age属性为25的record对象并添加到数据库 Record user = new Record().set("name", "James").set("ag...

JFinal Web开发学习(七)使用layUI美化的登录功能

效果: 验证码还是没有布局好.背景比较怀古. 代码: https://code.csdn.net/u012995856/jfinaltest/tree/master 1.写前端html ...

用JavaDBF操作(读、写)DBF文件

最近的一个项目需要动态生成DBF文件,用到JavaDBF,简单介绍一下官方网站:http://javadbf.sarovar.org/官方英文指南:http://sarovar.org/docman/...
  • xzknet
  • xzknet
  • 2014-01-09 17:25
  • 9782

史上最快Java Web framework JFinal横空出世

JFinal 是基于Java 语言的 web 开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、pyth...

JFinal学习心得

JFinalJFinal基本配置内置Jetty启动项目:Jfinal推荐使用WebRoot\WEB-INF\classes放class文件, 于是创建项目的时候Default output fold...

jfinal学习

http://blog.csdn.net/maomao123mao/article/details/7377515 非常实用、快速开发的后端框架
  • hpb21
  • hpb21
  • 2013-05-26 15:26
  • 1296

新手入门-如何使用JFinal开发javaweb(1)

博主本人是菜鸟。写这篇博客的原因是为了让和我一样的入门级菜鸟少走弯,还有就是加深我的理解。 JFinal框架是国产的很轻量级的开发框架。能让程序员写的代码精简很多,开发效率从而更快。 我是写了一个JF...

Jfinal学习和环境的搭建

问题?Jfinal学习和环境的搭建、 一、Jfinal是什么? JFinal 是基于Java 语言的极速 web 开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、...

基于Jfinal实现的权限管理系统 JfinalUIB

JfinalUIB 是 Jfinal + charisma + beetl + postgresql(同时支持MySQL) + ehcache + ztree + druid + bcprov 实现的...

JFinal-Blog V2.0.zip

  • 2017-08-22 18:09
  • 11.16MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)