文档章节

jodd mvc框架 madvoc 教程(5):页面渲染(二)

理工男海哥
 理工男海哥
发布于 2013/12/27 11:02
字数 455
阅读 373
收藏 0
点赞 0
评论 0

         这篇文章,我们将要介绍更多的关于页面结果和渲染的特点。

别名

        对URL进行硬编码是一种不好的习惯。madvoc提供了一个方法 定义路径来别名 防止url硬编码的问题,别名可以这样定义:

                    1:通过action注解来定义;

                    2:在madvoc的配置理定义。

        无论是以上哪一种定义,在返回值里使用别名的时候都要加上“<”和“>”符号。

使用注解定义别名

           别名可以定义在注解@Action alias里面。以下是重写了之前的例子:

// Target action (/index.html)
    @MadvocAction
    public class IndexAction {

        @Action(alias="index")
        public void view() {
        }
    }

// Calling action (/one.html)
    @MadvocAction
    public class OneAction {

        String value;

        @Action
        public String execute() {
            value = "173";
            return "redirect:<index>?value=${value}";
        }
    }
别名被定义在IndexAction  类中,别名的名字是“index”,同时它的值和完整的action路径相等,包含“/index.html”。因此, OneAction#execute action的行为仍然是一样的。

默认别名

        以上的概念可以简化在MadvocConfig中开启默认的路径别名,如果这个选项被开启,那么每个action在默认情况下都会生成一个别名,默认别名的生成规则如下:

    default_alias = <action class name> + '#' + <action method name>

通过ActionsManager定义别名

        通过ActionsManager组件,我们可以手动的注册别名。这样给了我们更多的灵活性,因此,这种方式可以让我们注册一个明白扩展名的别名。例如,我们可以定义整个结果路径作为别名,事实上也等同于在方法的外部指定了一个结果路径。

@MadvocAction
    public class HelloAction {

        @Action
        public void all() {
        }
    }



以上的action映射到路径是:  /hello.all.html,同时它的返回路径是: /hello.all

重写结果路径




未完,待续。。。

© 著作权归作者所有

共有 人打赏支持
理工男海哥

理工男海哥

粉丝 819
博文 36
码字总数 35675
作品 5
昌平
其他
jodd mvc框架 madvoc 教程(1):Actions 概述

jodd的madvoc是一个使用Coc和注解(annotations)的实用的mvc框架,主要用来简化web应用开发。它有着 使用简单,学习曲线小,容易扩展等特点,同时不用实用额外的xml配置,actions是一些简单...

michaely ⋅ 2013/12/25 ⋅ 1

Jodd 3.3.4 发布,常用 Java 工具包

Jodd 3.3.4 发布,这是一个维护版本,大部分是 bug 修复,也有稍许改动: RemoveSessionFromUrlFilter and JDateTime.isInDayLightTime() were added. HtmlStapler servlet now returns cont......

oschina ⋅ 2012/06/13 ⋅ 0

Jodd 3.6.7 发行说明,Java 常用工具包

Jodd 3.6.7 是个非常与众不同的版本,虽然主要是 bug 修复,但是 Java 升级到了 Java 7。 新特性: [vtor] Added message to validation annotation. [util] Added method to parse internet...

oschina ⋅ 2015/11/19 ⋅ 10

Jodd 3.6.5 发布,Java 常用工具包

Jodd 3.6.5 发布,更新内容如下: [http] now accepts local path on 30x. [http] Added default headers to . [madvoc] Fixed action string in case of proxified classes. [servlet] Res......

oschina ⋅ 2015/03/24 ⋅ 10

Java 常用工具包--Jodd

Jodd 是一个开源的 Java 工具集, 包含一些实用的工具类和小型框架。简单,却很强大! Jodd = Tools + IoC + MVC + DB + AOP + TX + JSON + HTML < 1.5 Mb Jodd 被分成众多模块,按需选择,其...

匿名 ⋅ 2009/06/25 ⋅ 20

Jodd 3.6.4 发布,Java 常用工具包

Jodd 3.6.4 发布,此版本现已提供下载:src="http://jodd.org/download/jodd-3.6.4.zip" href="http://jodd.org/download/jodd-3.6.4.zip">http://jodd.org/download/jodd-3.6.4.zip。 主要更......

oschina ⋅ 2015/02/23 ⋅ 13

Jodd 3.4.3 发布,常用 Java 工具包

Jodd 3.4.3 增加了 @PetiteProvier. Petite 人工注册更加顺畅,Petite 初始化方法可在三个生命周期点中调用;DbOom 支持缓存和一对多关系;改进 HTTP 对编码和字符集的支持;改进 Madvoc 动作...

oschina ⋅ 2013/04/19 ⋅ 3

Jodd 3.4.2 发布,常用 Java 工具包

Jodd 3.4.2 版本最大改动就是全新的 HTTP 客户端,另外该版本最终改用了 Gradle,包含了 ASM 4.1 源码,增加了 BeanCopy 工具,移除过时的编译器包,JDateTime 增加了 Period 类,Madvoc 提供...

oschina ⋅ 2013/02/25 ⋅ 12

Jodd 3.6.7 发布下载,Java 常用工具包

Jodd 3.6.7 发布下载,已经在 GitHub tagged Jodd 3.6.7: src="https://github.com/oblac/jodd/archive/v3.6.7.zip" href="https://github.com/oblac/jodd/archive/v3.6.7.zip">https://git......

oschina ⋅ 2015/11/11 ⋅ 8

Jodd 3.7.1 发布,Java常用工具包

Jodd 3.7.1 发布了,Jodd 是一个开源的 Java 工具集, 包含一些实用的工具类和小型框架。 暂无相关改进记录,持续关注,可以点击这里。 Jodd = Tools + IoC + MVC + DB + AOP + TX + JSON + ...

淡漠悠然 ⋅ 2016/05/26 ⋅ 15

没有更多内容

加载失败,请刷新页面

加载更多

下一页

BS与CS的联系与区别【简】

C/S是Client/Server的缩写。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,如Oracle、Sybase、InFORMix或 SQL Server。客户端需要安装专用的客户端软件。 B/S是Brower/...

anlve ⋅ 55分钟前 ⋅ 0

发生了什么?Linus 又发怒了?

在一个 Linux 内核 4.18-rc1 的 Pull Request 中,开发者 Andy Shevchenko 表示其在对设备属性框架进行更新时,移除了 union 别名,这引发了 Linus 的暴怒。 这一次 Linus Torvalds 发怒的原...

问题终结者 ⋅ 今天 ⋅ 0

在树莓派上搭建一个maven仓库

在树莓派上搭建一个maven仓库 20180618 lambo init 项目说明 家里有台树莓派性能太慢。想搭建一个maven私服, 使用nexus或者 jfrog-artifactory 运行的够呛。怎么办呢,手写一个吧.所在这个...

林小宝 ⋅ 今天 ⋅ 0

Spring发展历程总结

转自与 https://www.cnblogs.com/RunForLove/p/4641672.html 目前很多公司的架构,从Struts2迁移到了SpringMVC。你有想过为什么不使用Servlet+JSP来构建Java web项目,而是采用SpringMVC呢?...

onedotdot ⋅ 今天 ⋅ 0

Python模块/包/库安装(6种方法)

Python模块/包/库安装(6种方法) 冰颖机器人 2016-11-29 21:33:26 一、方法1: 单文件模块 直接把文件拷贝到 $python_dir/Lib 二、方法2: 多文件模块,带setup.py 下载模块包(压缩文件zip...

cswangyx ⋅ 今天 ⋅ 0

零基础学习大数据人工智能,学习路线篇!系统规划大数据之路?

大数据处理技术怎么学习呢?首先我们要学习Python语言和Linux操作系统,这两个是学习大数据的基础,学习的顺序不分前后。 Python:Python 的排名从去年开始就借助人工智能持续上升,现在它已经...

董黎明 ⋅ 今天 ⋅ 0

openJdk和sun jdk的区别

使用过LINUX的人都应该知道,在大多数LINUX发行版本里,内置或者通过软件源安装JDK的话,都是安装的OpenJDK, 那么到底什么是OpenJDK,它与SUN JDK有什么关系和区别呢? 历史上的原因是,Ope...

jason_kiss ⋅ 今天 ⋅ 0

梳理

Redux 是 JavaScript 状态容器,提供可预测化的状态管理。 它是JS的状态容器,是一种解决问题的方式,所以即可以用于 react 也可以用于 vue。 需要理解其思想及实现方式。 应用中所有的 stat...

分秒 ⋅ 今天 ⋅ 0

Java 后台判断是否为ajax请求

/** * 是否是Ajax请求 * @param request * @return */public static boolean isAjax(ServletRequest request){return "XMLHttpRequest".equalsIgnoreCase(((HttpServletReques......

JavaSon712 ⋅ 今天 ⋅ 0

Redis 单线程 为何却需要事务处理并发问题

Redis是单线程处理,也就是命令会顺序执行。那么为什么会存在并发问题呢? 个人理解是,虽然redis是单线程,但是可以同时有多个客户端访问,每个客户端会有 一个线程。客户端访问之间存在竞争...

码代码的小司机 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部