文档章节

分享一个今天看到的示例:JFinal实现Blog管理

小沐植
 小沐植
发布于 2015/05/21 15:25
字数 313
阅读 29
收藏 0

以下是JFinal实现Blog管理的示例:

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
@Before(BlogInterceptor.class)
public class BlogController extends Controller {
    public void index() {
        setAttr("blogList", Blog.me.find("select * from blog"));
    }
 
    public void add() {
    }
     
    @Before(BlogValidator.class)
    public void save() {
        getModel(Blog.class).save();
    }
     
    public void edit() {
        setAttr("blog", Blog.me.findById(getParaToInt()));
    }
     
    @Before(BlogValidator.class)
    public void update() {
        getModel(Blog.class).update();
    }
     
    public void delete() {
        Blog.me.deleteById(getParaToInt());
    }
}

2:Model(无xml、无annotation、无attribute、无getter、无setter、new Blog()这行代码也不是必须)

1
2
3
public class Blog extends Model {
    public static final Blog me = new Blog();
}

3:Validator(API引导式校验,比xml校验方便N倍,有代码检查不易出错)

1
2
3
4
5
6
7
8
9
10
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不需要此拦截器)

1
2
3
4
5
6
7

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());
    }

}

文章转自e良师益友网学习社区


本文转载自:http://www.elsyy.com/news/2015/0513/12271158150.html

小沐植
粉丝 4
博文 6
码字总数 669
作品 0
广州
私信 提问
JFinal Weixin 1.5 发布,微信极速 SDK

JFinal Weixin 1.5 大幅完善了对微信公众平台API的支持,以便满足更多开发者的需求。主要添加了微信摇一摇、微信支付、素材管理MediaApi,分布式Token存储等实用功能。 本次版本所有功能来源...

JFinal
2015/11/12
11.7K
137
JFinal Weixin 1.6,用 JFinal 开发,就这么定了

继昨日JFinal 2.1发布之后,再来一发JFinal Weixin 1.6,让所有JFinaler们更加Happy,本次升级主要添加了微信摇一摇周边API、高级群发API、客户账号管理API。此外还对原有依赖jar包进行了缩减...

JFinal
2015/12/30
5.2K
34
JAVA 极速WEB+ORM框架 - JFinal

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

JFinal
2012/03/18
0
496
使用Rythm插件轻松实现JFinal应用的国际化

刚看了@eyelee同学的JFinal 国际化的简单实现的文章,我打算分享一下自己为@紫电清霜的JFinal-BBS示例应用添加Rythm模版引擎和国际化功能展示的经验。 在开始之前,大家可以先通过点击这个视...

罗格林
2013/06/05
0
13
Aooms 极速微服务开发 1.0.0-alpha.1,像 JFinal 一样简单

Aooms 极速微服务开发,像JFinal一样简单 1.0.0-alpha.1 一、Aooms 一款基于SpringCloud的微服务基础开发平台,旨在降低SpringCloud的复杂度,像使用JFinal一样简单(本人是JFinal用户,从1...

风象南
2018/09/25
1K
10

没有更多内容

加载失败,请刷新页面

加载更多

idea下springboot 项目在static目录下添加文件不生效

idea下springboot 项目在static目录下添加文件不生效 问题描述 是这样子的,我的项目目录结构如下: 我在static目录下,创建了index.html和aaaa.jpg这两个文件。然后,启动服务访问 http://l...

wotrd
昨天
4
0
k8s1.14 一、环境

1. 4台虚拟机 (CentOS Linux release 7.2.1511 (Core) ) 192.168.130.211 master 192.168.130.212 node1 192.168.130.213 node2 192.168.130.214 node3 2. 设置服务器hostname 2.1 设置本机......

ThomasCheng
昨天
3
0
盖茨:如果我现在开创一家公司 将会专注于AI

新浪科技讯,北京时间 6 月 26 日凌晨消息,微软联合创始人比尔·盖茨(Bill Gates)在周一接受采访时表示,如果他今天从哈佛大学辍学并开创一家新公司,那么这家公司将会专注于人工智能(A...

linuxCool
昨天
1
0
聊聊feign的Retryer

序 本文主要研究一下feign的Retryer Retryer feign-core-10.2.3-sources.jar!/feign/Retryer.java public interface Retryer extends Cloneable { /** * if retry is permitted, retur......

go4it
昨天
9
0
HyperLogLog简介

  (1)HyperLogLog简介      在Redis 在 2.8.9 版本才添加了 HyperLogLog,HyperLogLog算法是用于基数统计的算法,每个 HyperLogLog 键只需要花费 12 KB 内存,就可以计算接近 2^64 个...

SEOwhywhy
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部