JFinal3.0快速上手(十二)

通过阅读之前的文章,小伙伴们应该已经会使用jfinal框架了。那么接下来的任务就简单了,我们将一起就一些常见的却不怎么在意的知识点做一些讲解。让知识掌握的更加牢固,记忆更加深刻。

一、关于JFinalConfig的那些事儿(上)

使用jfinal开发web项目,必须要继承JFinalConfig(抽象类),实现该类内的6个抽象方法。这几个方法在子类中必须要实现,否则程序将无法正确运行。先来快速的浏览下6个方法名,好有个印象。具体如下:

序号 方法名 描述
1、 configConstant() jfinal常量配置
2、 configRoute() jfinal路由配置
3、 configEngine() jfinal模板引擎配置
4、 configPlugin() jfinal插件配置
5、 configInterceptor() jfinal拦截器配置
6、 configHandler() jfinal的Handler(处理流程)配置
1、configConstant常量配置

configConstant()方法中,我们可以处理一些和jfinal有关的常量处理,这样的操作很便利。结合上一节的内容,我们来查看代码。

    @Override
    public void configConstant(Constants me) {
        //设置当前环境为开发环境
        me.setDevMode(true);

    }

以上的配置是告诉jfinal,现在我们处在日常的开发阶段,你必须在控制台输出action report(请求日志)信息。如下图:

JFinal action report -------- 2017-02-25 04:21:13 --------------------------
Url         : GET /manage/1
Controller  : morality.base.ManageController.(ManageController.java:1)
Method      : index
UrlPara     : 1

Url:输出了请求方式,接着输出了action的路由路径(路由+方法名);
Controller:输出了处理这个action的Controller的名字和所在包的路径;
Method:输出当前请求的是哪个方法(处理这个请求的是哪个方法);
UrlPara:输出请求的url参数,该参数没有name,且紧跟着url;
例如:http://localhost:8080/morality2017/manage/1
Parameter:输出url跟随的参数(表单提交的数据或通过"?"外挂的参数),该参数是以键值对的方式表示。例如:http://localhost:8080/morality2017/manage/1?name=yetangtang,输出信息如下:

JFinal action report -------- 2017-02-25 04:21:13 --------------------------
Url         : GET /manage/1
Controller  : morality.base.ManageController.(ManageController.java:1)
Method      : index
UrlPara     : 1
Parameter   : name=yetangtang  

这样可还明白,小伙伴们?

2、configRoute路由配置

jfinal的路由配置也是一个比较重要的知识点,不过也是很好理解的,跟一些常用的框架配置路由差不多,比如Struts、Spring等。

    @Override
    public void configRoute(Routes me) {
        //me.setBaseViewPath("/flower");
        //me.addInterceptor(new FrontInterceptor()); 
        me.add("/manage",ManageController.class);
        me.add("/login",LoginController.class);

    }

细心的小伙伴会发现路由配置这个方法中居然新暴露了几个方法:
setBaseViewPath(),可为每组 Controller 统一配置baseViewPath;
addInterceptor(),可为每组 Controller 统一配置 Interceptor。

3、configEngine模板引擎配置

这个功能可以说是比较重要的,因为有些时候我们不想重复性的代码。比如分页,比如添加用户和修改用户其实页面是一样的,就是想偷个懒。这一节,先简单的介绍一个使用方法,这是3.0新增的一个功能。在2.X版本中,必须要实现的只有5个抽象方法,小伙伴们还有印象么?

    @Override
    public void configEngine(Engine me) {
        //fileName就是页面的路径+文件名
        me.addSharedFunction("/common/_paginate.html");

    }
6、 configPlugin插件配置

jfinal的插件配置使用方法没有什么变化。不清楚的童鞋,可以看看之前的文章。

5、configInterceptor拦截器配置

这是全局的拦截器,会拦截所有的请求。没什么变化。

6、 configHandler处理流程配置

也没什么什么变化,就不赘述了。

PS:关于配置这一块已经讲了70%常用的技能,剩下的30%将会在下一节中讲解,敬请期待!祝各位小伙伴周末愉快!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,393评论 5 467
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,790评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,391评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,703评论 1 270
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,613评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,003评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,507评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,158评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,300评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,256评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,274评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,984评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,569评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,662评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,899评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,268评论 2 345
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,840评论 2 339

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,561评论 18 139
  • iOS网络架构讨论梳理整理中。。。 其实如果没有APIManager这一层是没法使用delegate的,毕竟多个单...
    yhtang阅读 5,155评论 1 23
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 46,712评论 6 342
  • 故事概述 有一天,在农场里,鸭子冒出一个疯狂的主意,“我打赌我会骑车”他一摇一摆地走到男孩停着的自行车旁,爬上去,...
    邹银利阅读 1,311评论 1 2
  • 我问蝴蝶:春天来了没? 蝴蝶说:我破茧而出的那个镜头 春,不就蹦出来了吗?! 我问蜜蜂:春天来了没? 蜜蜂说:你看...
    三少爷的糖阅读 182评论 10 4