1 工具与环境
借助Eclipse4.3 + Maven3.0.3构建Java Web应用程序。使用Maven内置的servlet 容器jetty,不需手工集成Web服务器到Eclipse。还帮我们自动创建Java EE规范定义的Java Web应用程序的有效目录结构,如:WEB-INF/classes目录等,方便省心。当然Maven还有其他优秀的功能,这里不会详细介绍。pom.xml的内容可见第6小节。
接下来将介绍如何使用Spring MVC开发简单的Web应用程序,就从创建配置文件开始。
2 创建配置文件
2.1 配置前端控制器DispatchServlet
在web.xml中,定义一个类型为DispatcherServlet的Servlet。这是Spring MVC的核心Servlet类,它负责接受Web请求,并将它们分发到相应的处理程序中去。代码如下:
<servlet> <servlet-name>dispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- 初始化参数 :确定spring-servlet.xml文件路径 --> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <!-- 拦截所有以 /mvc/开始的请求 --> <servlet-mapping> <servlet-name>dispatcherServlet</servlet-name> <url-pattern>/mvc/*</url-pattern> </servlet-mapping>
2.2 配置spring-servlet.xml文件路径
Spring-servlet.xml是一个标准的Spring Bean配置文件,内容如上一节。
3 创建Spring MVC控制器
代码如下:
package org.mahz.springmvc; import java.util.HashMap; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; @Controller public class IndexAction{ private String username; private String viewPage; @RequestMapping("/index") public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { Map<String, String> model = new HashMap<String, String>(); model.put("username", getUsername()); return new ModelAndView(getViewPage(), model); } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getViewPage() { return viewPage; } public void setViewPage(String viewPage) { this.viewPage = viewPage; } }
在handleRequest()方法中,可以随意地处理Web请求,就像在Servlet中一样。最后返回一个ModelAndView对象,其中包含视图名称或者视图对象,以及一些模型属性。
创建好控制器类后,必须在Web应用程序上下文中声明它的实例。由于这是表现层组件,所以应该在spring-servlet.xml中声明它。代码如下:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd"> <context:component-scan base-package="org.mahz.springmvc" /> <!-- 一般视图配置 --> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/jsp/" p:suffix=".jsp" /> <!-- 定义控制器 --> <bean id="indexAction" class="org.mahz.springmvc.IndexAction"> <property name="username"> <value>刘小s</value> </property> <property name="viewPage"> <value>index</value> </property> </bean> </beans>
4 创建JSP视图
在webapp目录下创建jsp目录,在jsp目录中添加index.jsp文件,内容如下:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <% String str = (String)request.getAttribute("username"); %> <body> <H1><%=str%>,欢迎你!</H1> </body> </html>
5 部署Web应用程序
在Maven使用jetty:run部署Web应用程序。
在浏览器中输入链接:http://localhost:8080/springmvc/mvc/index
6 pom.xml
pom.xml文件中,包括项目的基本系统、Spring MVC所需要的依赖信息、项目的编译插件和jetty插件信息。内容如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.huazhen</groupId> <artifactId>springmvc</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <name>springmvc</name> <!-- 属性配置 --> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <junit.version>4.10</junit.version> <spring.version>2.5.6</spring.version> </properties> <!-- 依赖配置 --> <dependencies> <!-- servlet --> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> </dependency> <!-- junit --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>${junit.version}</version> <scope>test</scope> </dependency> <!-- Freemarker --> <dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>2.3.18</version> </dependency> <!-- spring --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.1.1</version> </dependency> </dependencies> <build> <finalName>springmvc</finalName> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.5.1</version> <configuration> <source>1.6</source> <target>1.6</target> </configuration> </plugin> <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>maven-jetty-plugin</artifactId> <version>6.1.26</version> <configuration> <scanIntervalSeconds>10</scanIntervalSeconds> <stopKey>foo</stopKey> <stopPort>9999</stopPort> </configuration> <executions> <execution> <id>start-jetty</id> <phase>pre-integration-test</phase> <goals> <goal>run</goal> </goals> <configuration> <scanIntervalSeconds>0</scanIntervalSeconds> <daemon>true</daemon> </configuration> </execution> <execution> <id>stop-jetty</id> <phase>post-integration-test</phase> <goals> <goal>stop</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </project>
相关推荐
Spring MVC 框架搭建与 Hibernate 整合实例 Spring MVC 框架搭建是 Java Web 开发中...通过使用 Spring MVC 框架,我们可以快速搭建基于 MVC 模式的 Web 应用程序,并使用 Hibernate 作为 ORM 工具来处理数据库操作。
在本示例中,我们将详细探讨如何使用IntelliJ IDEA(IDEA)和Maven来搭建Spring MVC项目环境。Spring MVC是Spring框架的一个模块,它为构建Web应用程序提供了模型-视图-控制器(MVC)架构。Maven则是一个强大的项目...
Spring MVC 是一个基于Java的轻量级Web应用框架,它为构建模型-视图-控制器(MVC)架构的Web应用程序提供了强大的支持。本教程将详细阐述如何搭建Spring MVC的开发环境,包括所需的jar包。 首先,为了搭建Spring MVC...
搭建Spring MVC和Mybatis的环境,配置相关XML或Java配置文件;编写控制器处理HTTP请求,调用服务层进行业务逻辑处理;实现DAO接口,与数据库交互;最后,前端页面展示数据,可能使用JSP、Thymeleaf或其他模板引擎。 ...
在IT行业中,Spring MVC是Java领域非常流行的一个用于构建Web应用程序的框架,它基于Spring框架,为开发者提供了处理HTTP请求、展示数据以及控制业务逻辑的能力。本项目"Java-Spring MVC简单搭建"旨在帮助初学者快速...
Spring MVC是Spring框架的一个模块,专门用于构建Web应用程序。...以上就是Spring MVC环境搭建过程中涉及的核心知识点,搭建好环境后,开发者就可以利用Spring MVC的强大功能开发高效、灵活的Web应用程序了。
总之,通过Maven搭建Spring MVC环境涉及的主要步骤包括:配置Maven、创建Maven项目、添加Spring MVC依赖、配置Spring MVC的Servlet和处理器、编写Controller、以及测试和部署。这些知识对于开发基于Spring MVC的Web...
Spring MVC 通常使用基于注解的 Controller,比如 `@Controller` 注解的类,以及 `@RequestMapping` 注解的方法。 - **ModelAndView**:在 Controller 方法中,返回 ModelAndView 对象,包含模型数据和视图名。 - ...
它基于Spring框架,提供了模型-视图-控制器(MVC)架构模式的实现,使得开发者可以将业务逻辑、数据处理和用户界面分离开来,提高代码的可读性和可测试性。 在搭建Spring MVC框架的过程中,我们需要遵循以下步骤: ...
在这个最简单的Spring MVC框架搭建过程中,我们将不涉及数据库的使用,专注于基础架构的搭建。 首先,我们需要在项目中引入Spring MVC的依赖。通常,我们使用Maven或Gradle这样的构建工具来管理项目依赖。在Maven的...
此外,Spring MVC还支持注解驱动,使得控制器方法的编写更加简洁。 **Spring框架** Spring框架的核心在于依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)。DI允许开发者...
- Spring MVC是基于Model-View-Controller(MVC)设计模式的Web应用框架,提供了一种组织和处理请求的机制。 - 它的核心组件包括DispatcherServlet、HandlerMapping、HandlerAdapter、ModelAndView和ViewResolver...
在本文中,我们将深入探讨如何搭建一个Spring MVC的开发环境。 首先,我们需要准备以下基础组件: 1. **JDK**:确保你的计算机上安装了最新版本的Java Development Kit(JDK),因为Spring MVC是基于Java的。你...
**一、Spring MVC 环境搭建** 1. **引入jar包** 在Spring MVC项目中,你需要添加相应的Spring和Hibernate库。Spring的核心库`spring.jar`提供基础服务,`spring-webmvc.jar`是专门用于Web开发的模块。同时,由于...
Spring MVC是Spring框架的一个核心模块...总之,"Spring MVC使用Demo"是一个很好的学习资源,涵盖了从环境搭建到实际编码的全过程。通过学习和实践,开发者能够熟练掌握Spring MVC,从而高效地开发出高质量的Web应用。
Spring MVC 是一个基于Java的轻量级Web应用框架,它是Spring框架的重要组成部分,主要用于构建Web应用程序的后端控制器。这个教程“Spring MVC - A Tutorial”旨在帮助开发者深入理解和掌握Spring MVC的核心概念和...
一、Spring MVC 环境搭建 1. jar 包引入 在使用 Spring MVC 之前,需要引入相应的 jar 包,包括 Spring 2.5.6 和 Hibernate 3.2.0。Spring 2.5.6 需要引入的 jar 包有 spring.jar、spring-webmvc.jar、commons-...
Spring MVC 是一款基于Java的轻量级Web应用框架,它是Spring框架的重要组成部分,主要用于构建Web应用程序的后端控制器。在Spring MVC中,开发者可以利用模型-视图-控制器(MVC)架构模式来分离业务逻辑、数据处理和...
Spring MVC 是一个基于Java的轻量级Web应用框架,它为构建模型-视图-控制器(Model-View-Controller)架构的应用程序提供了强有力的支持。在本文中,我们将深入探讨Spring MVC的基本概念、核心组件以及如何使用它来...