从文档上看,虽然可以直接实现Controller接口,但是有一个更好的实现类AbstractController。
提供了更多的web请求功能。
首先是配置前端的控制器DispatcherServlet,将由Controller返回的ModeAndVi
ew传送到设定好的视图ViewResolver.
web.xml
<display-name>Spring App Examples</display-name>
<servlet>
<servlet-name>spring</servlet-name>
<servlet-calss>org.springframework.web.servlet.DispatcherServlet</servlet>
</servlet>
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING/DTD BEAN/EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/hellouser.do">helloUserAction</prop>
</props>
</property>
</bean>
//对于jsp或servlet用该类即可。
org.springframework.web.servlet.view.InternalResourceView
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass">
<value>org.springframework.web.servlet.view.InternalResourceView</value>
</property>
</bean>
//DispatcherServlet把请求handler的映射交給HandlerMapping的实现类
<bean id="helloUserAction" class="com.baidu.HelloUserAction">
<property name="helloWord">
<value>Hello!</value>
</property>
<property name="viewPage">
<value>/WEB-INF/jsp/hellouser.jsp</value>
</property>
</bean>
</beans>
HelloUserAction.java
import java.io.IOException;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import org.springframework.web.servlet.mvc.Controller;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.bind.RequestUtils;
public class HelloUserAction extends AbstaractController {
private String helloWord;
private String viewPage;
public ModelAndView handleRequest(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
String user = RequestUtils.getRequiredStringParameter(req, "user");
Map model = new HashMap();
model.put("helloWord", getHelloWord());
model.put("user", user);
return new ModelAndView(getViewPage(), model);
}
public void setViewPage(String viewPage) {
this.viewPage = viewPage;
}
public String getViewPage() {
return viewPage;
}
public void setHelloWord(String helloWord) {
this.helloWord = helloWord;
}
public String getHelloWord() {
return helloWord;
}
}
hellouser.jsp
<html>
<head><title>HelloPage</title></head>
<body>
<H1> ${helloWord}, ${user}!!</H2>
</body>
</html>
<html>
<head><title>HelloPage</title></head>
<body>
<H1> ${helloWord}, ${user}!!</H2>
</body>
</html>
http://localhost:8080/springapp/hellouser.do?user=Justin
<html>
<head><title>HelloPage</title></head>
<body>
<H1> Hello!, Justin!!</H2>
</body>
</html>
Jar |
介绍 |
依赖 |
spring-core |
核心类库,包含抽象类的工具包.源码级数据支持. |
comms-logging |
spring-beans |
JavaBean支持,以及Bean容器的提供. |
spring-core |
spring-contexts |
AppclicationContext,验证,JNDI,JMX,远程处理等 |
spring-beans |
spring-web |
WEBApplicationConxtext基于HTTP协议的远程支持 |
spring-contexts |
spring--webmvc |
servlet,Web MVC框架,webController,WebView |
spring-web |
如果你细心的话,你会发现几乎任何框架都需要用到了comms-logging.jar。为什么?请你自己去查文档。
Spirng MVC模式的三要素:Controller类,View类,ModelAndView类。
Controller类
简介:Spring MVC 将所有的HTTP请求交给Controller处理。Controller很像一个servelt,它以映射一个或多个请求并构建成以HttpServletRequest,和HttpServletResponse为参数的对象配合使用。Controller作为一个单列,就是说可以处理并发的请求。
功能:无工作流的简单请求处理。
用于处理完成XHTML表单生命周期的表单控制器。
向导控制器,提供多页面的工作流程。
类似Webwork的一次性控制器。
View类
Spring的视图呈现技术,包括很多技术的支持有:JSP,JSTL,Velocity,Pdf,Excel等,看到没多强大。Controller不用知道视图技术,只管处理请求等业务逻辑。因为这样可以有助于保证低耦合。
ModeAndView类
这个类的作用根据Spirngmvc-API文档,其实理解起来很简单,就是你处理请求完毕时,由Controller来构建对象集合,这些对象用来组成响应给客户端的模型。
原文:http://adminsun.iteye.com/blog/481825
分享到:
相关推荐
Spring3MVC是Spring框架的一个重要模块,专为构建Web应用程序提供模型-视图-控制器(MVC)架构支持。这个框架使得开发者可以更轻松地处理HTTP请求、数据绑定、验证以及视图渲染等任务。在"spring3MVC框架demo"中,...
【Spring MVC 框架详解】 Spring MVC 是 Spring 框架的一部分,它是一个轻量级的、基于模型-视图-控制器(MVC)设计模式的 Web 应用开发框架。Spring MVC 提供了丰富的功能,使得开发者可以快速、高效地构建高质量...
Spring-MVC是Spring框架的一部分,它提供了模型-视图-控制器(MVC)的设计模式,使得开发人员能够更有效地构建Web应用程序。 1. **Spring-MVC框架** Spring-MVC是Java Web开发中的一个核心组件,它简化了处理HTTP...
2. Spring MVC:作为Spring框架的一部分,Spring MVC是用于构建Web应用程序的模型-视图-控制器(MVC)架构。在CRM系统中,Spring MVC负责处理HTTP请求,将数据绑定到模型对象,调用业务逻辑,最后将结果呈现给用户。...
8. **Dojo 或 jQuery**:如果在前端使用 JavaScript 框架,如 Dojo 或 jQuery,对应的库也需要包含在项目中,虽然这些不是 Spring MVC 的直接依赖,但它们能增强用户体验和交互效果。 9. **AOP 相关库**:如果使用...
Spring MVC是Spring框架的一部分,专门用于构建Web应用程序的Model-View-Controller(MVC)架构。它提供了一个灵活的模型绑定机制,可以将HTTP请求参数与Java对象字段对应起来,同时支持多种视图技术,如JSP、...
Spring MVC是Spring框架的一个核心模块,专为构建Web应用程序而设计。它提供了模型-视图-控制器(MVC)架构,使开发者能够有效地分离业务逻辑、数据处理和用户界面。在"Spring MVC 4.2.3"版本中,我们看到了一系列的...
本文将深入探讨一个基于Java SSM框架(Spring、Spring MVC、MyBatis)开发的学生籍贯管理系统,理解其设计原理、核心功能及实现技术。 首先,SSM框架是Java Web开发中的主流选择,它由Spring、Spring MVC和MyBatis...
首先,Spring MVC是Spring框架的一部分,它是一个用于构建基于Java的企业级Web应用程序的模型-视图-控制器(MVC)架构。Spring MVC提供了一种模块化的方式来组织和处理HTTP请求,通过Controller、Service、DAO等层...
在文件的描述中提到了Spring 3.0版本,这是Spring框架的一个重要版本,它增加了对注解配置的支持,极大地提高了Spring MVC的易用性。同时,它通过改进和优化,超越了当时的竞争对手Struts2,成为许多开发团队的首选...
Spring MVC 是一个基于Java的轻量级Web应用框架,它为构建RESTful应用程序提供了强大的支持。这个名为"spring-mvc.rar_spring mvc"的压缩包可能是为了帮助初学者理解和入门Spring MVC,解决他们在开发过程中可能遇到...
综上所述,结合 Spring Web MVC 的强大功能和 Dojo 的丰富客户端能力,我们可以构建出功能强大且用户体验良好的Web应用。理解 Dojo 与 Spring MVC 的集成原理,能够帮助开发者更高效地开发复杂的企业级应用。
在Spring MVC框架中,`Locale`是用来处理应用程序中的多语言支持的关键组件。它定义了用户的语言和地区设置,例如中文(zh_CN)或英文(en_US)。这篇博客文章将深入探讨如何在Spring MVC应用中实现语言切换功能,以...
Spring MVC是Spring框架的一部分,它基于MVC设计模式,分离了Web层的三个主要组件:控制器(Controller)、模型(Model)、视图(View)。控制器处理用户的请求并返回响应,模型封装数据,视图则用于呈现数据。...
而Spring MVC是Spring框架的一部分,用于构建高性能、灵活的Web应用程序。 【描述】"使用MAVEN 结合SPRING DWR hiberante validation"提到了另外三个技术:DWR(Direct Web Remoting)、Hibernate和Validation。DWR...
首先,Spring MVC是Spring框架的一个模块,专为构建可维护、可扩展的Web应用而设计。它采用模型-视图-控制器(MVC)架构模式,使得业务逻辑、数据处理和用户界面分离,从而提高代码的可读性和可测试性。 在Spring ...
Spring MVC 是 Spring 框架的重要组成部分,它是一个模型-视图-控制器(Model-View-Controller)架构,用于构建 Web 应用程序。"Spring-mvc-showcase" 是一个官方提供的 Maven 工程,旨在展示 Spring MVC 的各种功能...
此文档基于Spring框架2.0.8版本的第16章翻译而来,旨在详细介绍Spring Portlet MVC的概念与原理,特别是框架内的关键组件与使用技巧,以助开发者深入了解并灵活应用。 **1.2 面向读者** 该文档主要面向具备一定JSR...
Spring MVC是Spring框架的一个核心模块,专门用于处理Web应用程序的请求和响应。Spring MVC4.1.6版本是在2015年发布的,它在前一个版本的基础上进行了一系列的优化和增强,旨在提供更高效、更灵活的Web开发体验。 ...