文档章节

mint mvc的返回值

水牛叔叔
 水牛叔叔
发布于 2014/10/04 15:42
字数 718
阅读 145
收藏 0

这里说的返回值是指action(方法)的返回值。action的可以返回任何类型的值。实际上,除了基础类型和一些特殊情况外,前端获得的输出就是action返回值的toString方法的结果。为了方便说明action的返回值,在此对返回类型进行如下分类:

  1. 基础类型和普通对象
  2. 模板渲染器
  3. JSON

基础类型和普通类

(这里采用“普通类”这个说法,主要为了和其余两种返回值分类的返回值做区别,并没有更多的含义)。

这种情况是最简单的。如果返回值是基础类型,那么返回结果就是返回值的字符串表现形式。如果返回值类型是对象,那么返回结果就是返回值得toString()方法的结果。

比如:

@Mapping(urls="/user")
public User String(){
	return new User();
}

返回值结果是这样的:

当然这种返回结果在实际开发中没啥用,哈。

模板渲染器

有时,一个请求希望返回一个页面,这时就需要action返回一个模板渲染器。模板渲染器一般包括两个要素:模板路径和渲染所需数据。模板路径是指页面模板(比如jsp,velocity模板等)的目录;渲染所需数据会被传递到模板里,供使用者操作。所有渲染数据都要放到一个Map对象中,把Map对象作为模板渲染器的构造参数,这样使用者就可以在模板内用Map对象的key 获取到对应的数据。

action:

@Mapping(urls="/user")
public TemplateRenderer user(){
	User user = new User();
	user.setUsername("琼羽");
	user.setPassword("1234");
	Map<String, Object> param = new HashMap<String, Object>();
	param.put("user", user);
	param.put("gender", "女");
	return new TemplateRenderer("/user.jsp", param);
}

模板:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<meta charset="UTF-8">
<table>
	<tr><td>username</td><td>${user.username }</td></tr>
	<tr><td>password</td><td>${user.password }</td></tr>
	<tr><td>gender</td><td>${gender }</td></tr>
</table>

访问结果:

JSON

如果一个action上添加了ReturnJson注解,那么该方法的返回将会被自动的被转化成json串,再返回到前端。mint mvc采用fast json作为数据转成字符串的工具。

action:

@ReturnJson
@Mapping(urls="/json")
public User json(){
	User user = new User();
	user.setUsername("琼羽");
	user.setPassword("123");
	
	return user;
}
访问结果:


到目前为止,系列博客已经讲解了mint mvc的:第一个应用,参数,和返回值。这些知识已经足够使用mint mvc写一个简单的应用了。接下来将会讲解拦截器功能,这是mint mvc最主要的进阶功能,暂时也是唯一的进阶功能。敬请期待!

本demo下载地址:http://git.oschina.net/895925636/mintdemo/tree/master

项目地址:http://git.oschina.net/895925636/mint-mvc

收录地址:http://www.oschina.net/p/mint-mvc

博客地址:http://www.wemakers.net/home/blog?cate=1001

(完)

© 著作权归作者所有

上一篇: mint mvc的拦截器
下一篇: mint mvc的参数
水牛叔叔

水牛叔叔

粉丝 140
博文 80
码字总数 36149
作品 2
珠海
程序员
私信 提问
java mvc框架--mint-mvc

mint mvc是一个纯粹的mvc框架,是在servlet之上做了浅层包装而做出来的,它做的事情很简单:接收请求->封装参数->将请求交给开发者这编写的逻辑处理->返回处理结果。 mint-mvc有如下特点: ...

水牛叔叔
2014/10/22
2.2K
0
mint-MVC正式发布,官网正式上线

其实mint-mvc一年前就开发好了,但是一直都是直接丢在git上,也没几个人知道,正儿八经的用户只有自己一个。最近好多抱怨java不适合开发web2.0、难用的帖子,我就想把我开发一系列工具拿出来...

水牛叔叔
2015/05/10
23
0
Vuejs 配合 mint-ui 开发移动端web

初衷 这是一个比较着急的事情(两天时间,写一个带视频播放、图片浏览、图文混排列表、上拉刷新、滚动刷新等等的单页),一开始同事使用传统H5+JS+CSS的方式,我担心进度,就硬着头皮上vuejs...

萝卜日志
2018/09/06
0
0
Linux Mint 19 "Tara" Beta 版发布,基于 Ubuntu 18.04

Linux Mint 团队已正式宣布推出 Linux Mint 19 "Tara" 的首个 beta 版,包括 Xfce, MATE 和 Cinnamon 这三个桌面环境版本。Linux Mint 19 Beta 基于 Ubuntu 18.04,并将获得五年的技术支持。...

局长
2018/06/05
1K
6
Linux Mint 团队宣布释出 Linux Mint 19 "Tara" 正式版

北京时间6月30日,Linux Mint 团队正式宣布释出 Linux Mint 19 "Tara" 的正式稳定版,包括 Xfce, MATE 和 Cinnamon 这三个桌面环境版本。Linux Mint 19 基于 Ubuntu 18.04,并将获得五年的技...

局长
2018/06/30
5.8K
30

没有更多内容

加载失败,请刷新页面

加载更多

10分钟详解Spring全家桶7大知识点

点关注,不迷路;持续更新Java架构相关技术及资讯热文!!! Spring框架自诞生以来一直备受开发者青睐,有人亲切的称之为:Spring 全家桶。它包括SpringMVC、SpringBoot、Spring Cloud、Spr...

我最喜欢三大框架
26分钟前
5
0
注册服务&开机自启动

列出所有服务[root@localhost ~]# systemctl list-unit-files[root@localhost ~]# systemctl status mysqld[root@localhost ~]# systemctl stop mysqld[root@localhost ~]# ......

jxlgzwh
29分钟前
1
0
解决jdk8 stream tomap方法报错:java.lang.IllegalStateException: Duplicate key异常解决(key重复)

List<User> userList = User.ME.loadList(users); if (CollectionUtils.isNotEmpty(userList)) { Map<Long, User> userMap = userList.stream().filter(Objects::nonN......

冰峰雪座
38分钟前
1
0
jdk中的一些命令

jdk中的一些命令 jps jstack jmap jstat jhat jinfo javap http://www.importnew.com/18398.html

晨猫
39分钟前
1
0
Bystack的高TPS共识算法

共识算法是分布式系统保证节点数据状态一致性的方法,在区块链的共识算法分POW(工作量证明)和POS(权益证明)两大类。第一类POW模式是在公链项目中运用的最广泛应用的共识算法,比特币长达10年...

比原链Bytom
39分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部