先介绍一下业务需求:在浏览器输入localhost:8888/MicroBlog/test.json,要求服务器返回{"id":"1","name":"messi"}字符串,以供javascript回调函数处理。
MVC:M代表的是依赖的业务逻辑组件,功能就是
如何获得上述json字符串,V代表视图资源,在这里
就是上述字符串,C的功能是怎样
解析"localhost:8888/MicroBlog/test.json"这个请求字符串.
Spring的注解驱动功能可以将普通的java对象转化为Controller类
package com.microblog.web;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
/**
* Controller类
* @author 晔
*
*/
@Controller
public class TestController {
@RequestMapping(value="/test.json",method=RequestMethod.GET)
public String getUsers(@PathVariable("namePrefix") String prefix, Model model) {
model.addAttribute("json", "[{'id':'1','name':'messi'},{'id':'2','name':'pedro'}]");
System.out.println("hello 你好周杰伦");
return "jsonView";
}
}
注解加上去了还不够,这是我在百度上看到的绝大部分情形,想要框架捕获这些注解还要这一手
<context:component-scan base-package="**/web/**" />
这时候我们要来做Viewer了,很多搞JSON的看到springsource上推荐的那个MappingJacksonJsonView类和超长的英文解释后直接晕了———跟我一样,其实完全没必要,请静静的思考一下,我们要的json是什么?还不是字符串,只不过改了个潮点的名字而已,只要能获得HttpServletResponse对象一切OK
package com.microblog.web;
import java.io.PrintWriter;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.view.AbstractView;
/**
* Viewer类
* @author 晔
*
*/
public class TestView extends AbstractView{
protected void renderMergedOutputModel(Map<String, Object> model,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
PrintWriter out=response.getWriter();
out.println((String)model.get("json"));//json字符串从这里走向世界
}
}
剩下的就简单了,配置TestController产生的视图名字jsonView由对应的视图类TestView处理
<bean id="test" class="com.microblog.web.TestController"/>
<bean class="org.springframework.web.servlet.view.BeanNameViewResolver">
<property name="order" value="1" />
</bean>
<bean id="jsonView" class="com.microblog.web.TestView" />
后记:本来我不想写这篇文章的,有注释完全可以记下我所学到的东西,但是解决这次的问题我访问了大量的关于Spring3.0介绍的英文论坛,发现早在09年的时候国外就对3.0有了成熟的应用了,而我今天才掌握一点皮毛,想起两年前的巴萨是何等的辉煌,而过去一周的巴萨却判若两人,被皇马戏弄于鼓掌,怀古而伤今,由感而发,写下此文,与此时此刻与我有同样心情的同志共勉!
分享到:
相关推荐
这个名为"SpringMVC3.0_Demo"的压缩包文件很可能是为了展示如何配置和使用SpringMVC 3.0进行Web应用开发,包含的子文件"spring3"和"jpa"可能分别对应Spring框架核心库和Java持久化API(JPA),这两部分都是SpringMVC...
Spring MVC 3.0是Spring框架的一个重要组成部分,专门用于构建Web应用程序的模型-视图-控制器(MVC)架构。这个版本引入了许多增强功能,提高了开发效率和灵活性。结合Hibernate,一个流行的Java持久化框架,可以...
本示例聚焦于如何在SpringMVC 3.0和MyBatis 3.0环境中实现分页功能,这在处理大量数据时尤其重要,能够提高用户体验并减轻服务器压力。 **SpringMVC 3.0** SpringMVC是Spring框架的一部分,它是一个基于模型-视图-...
在描述中提到的 "springmvc3.0所需jar绿色包" 指的是包含了 Spring MVC 3.0 版本运行所需的所有 JAR 文件的一个集合,通常这些 JAR 文件被用来创建一个无需安装的可执行环境,也就是所谓的“绿色版”。 Spring MVC ...
springmvc3.0实战指南 讲的很不错!适合初学者,对开发者很有指导意义!
SpringMVC 3.0实战指南,PPT Java Web开发的最好的MVC框架指南
在"springMVC3.0与ssh2的注解开发demo"项目中,开发者使用了最新的SpringMVC 3.0版本,该版本引入了更多的注解支持,使得配置文件大大简化,提高了开发效率。SpringMVC的注解如@Controller、@RequestMapping、@...
主要讲些SpringMVC的注解,以及常用的注解方式介绍。大家可以下下来看看,挺好的。
在本项目中,"SpringMVC3.0+MyIbatis3.0(分页示例)" 是一个结合了SpringMVC和MyBatis两大框架的实战应用,主要展示了如何在实际开发中实现数据的分页展示。这个项目可能是为了教学或者演示目的,通过源码分析,可以...
"springMVC-3.0-file-upload.rar" 包含了一个示例,展示了如何在Spring MVC应用中集成文件上传功能,这个例子的描述表明它是基于注解驱动的,这意味着我们将使用如`@Controller`、`@RequestMapping`等注解来定义控制...
在本项目中,我们主要探讨的是如何利用SpringMVC 3.0、Hibernate 3.0、jQuery和MySQL来构建一个完整的登录注册系统。这个系统不仅涵盖了后台的业务逻辑处理,还包括了前端的用户交互与数据验证。下面将分别详细介绍...
下面将详细介绍这些关键组件及其在SpringMVC 3.0中的作用。 1. **SpringMVC**:Spring MVC是Spring框架的一个模块,用于构建基于模型-视图-控制器(MVC)架构的Web应用。它提供了一个灵活的处理模型,允许开发者将...
本教程主要讲解如何使用MyEclipse8.6集成开发环境来搭建一个基于SpringMVC3.0和Hibernate3.3的Web应用环境,这对于初学者来说是非常实用的。下面我们将详细地分解每个步骤。 首先,我们从创建Web Project项目开始:...
springMVC3.0 + MyBatis3.1 花了2天整合成功的DEMO Spring 用的是基于注解的 MyBatis 用的是基于XML的 带表结构 有增删改查的小例子(含事务) 个人认为这套小框架有有兴趣的人 完全可以自己修改修改, 作为自己以后...
在“SpringMVC学习(一)——SpringMVC入门小程序”中,我们首先会接触到SpringMVC的基本概念。这通常包括以下几个核心组件: 1. **DispatcherServlet**:这是SpringMVC的前端控制器,负责接收HTTP请求,并根据配置...
此外,为了让SpringMVC知道如何将你的Java对象转换为JSON,你需要在你的模型类上使用Jackson的注解,例如`@JsonProperty`、`@JsonInclude`、`@JsonIgnore`等。这些注解可以帮助控制哪些属性应该被包含在JSON中,哪些...
在本项目“SpringMVC 3.0 HelloWorld”中,我们将深入探讨如何使用Maven构建一个简单的Spring MVC应用。Maven是一个项目管理和综合工具,它帮助开发者管理依赖、构建项目并遵循标准的开发过程。 首先,我们需要了解...