企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# 使用 Maven 和 JSTL 的 Spring MVC Hello World 示例 > 原文: [https://howtodoinjava.com/spring-mvc/spring-3-mvc-hello-world-application-with-maven-and-jstl/](https://howtodoinjava.com/spring-mvc/spring-3-mvc-hello-world-application-with-maven-and-jstl/) 在本 Spring MVC 教程中,我们将使用 Spring MVC 框架构建 Hello World 应用程序。 逐步遵循给定的说明并学习基础知识。 我们已经使用 [JSTL](https://en.wikipedia.org/wiki/JavaServer_Pages_Standard_Tag_Library) 来编写视图文件。 ## 1\. 开发环境 1. [Maven](https://maven.apache.org/) 2. [Eclipse juno](https://www.eclipse.org/juno/) 3. [Tomcat 7](https://tomcat.apache.org/tomcat-7.0-doc/index.html) ## 2\. 创建 Spring MVC 应用程序 #### 2.1. 创建 Maven Web 应用程序 要创建 Maven Web 应用程序,请打开命令提示符,并将当前工作目录放入 Eclipse 工作区。 现在执行以下命令。 ```java $ mvn archetype:generate -DgroupId=com.howtodoinjava.mvc -DartifactId=firstSpringApplication -DarchetypeartifactId=maven-archetype-webapp -DinteractiveMode=false ``` 请从上述命令中删除换行符。 我添加它是为了使其可读。 现在在给定命令下运行。 这会将创建的项目转换为 Eclipse Web 项目。 ```java $ cd firstSpringApplication $ mvn eclipse:eclipse -Dwtpversion=2.0 ``` #### 2.2. 更新 Maven 依赖项 使用这些依赖关系更新`pom.xml`文件。 `pom.xml` ```java <properties> <spring.version>3.0.5.RELEASE</spring.version> </properties> <!-- Spring 3 dependencies --> <dependency> <groupid>org.springframework</groupid> <artifactId>spring-core</artifactId> <version>${spring.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupid>org.springframework</groupid> <artifactId>spring-web</artifactId> <version>${spring.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupid>org.springframework</groupid> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> <scope>runtime</scope> </dependency> <dependency> <groupid>javax.servlet</groupid> <artifactId>jstl</artifactId> <version>1.2</version> <scope>runtime</scope> </dependency> <dependency> <groupid>taglibs</groupid> <artifactId>standard</artifactId> <version>1.1.2</version> <scope>runtime</scope> </dependency> ``` ## 3\. 创建分派器 Servlet #### 3.1. 更新`web.xml` 更新`web.xml`以获取 Servlet 映射和 spring 配置位置。 ```java <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <display-name>www.howtodoinjava.com</display-name> <servlet> <servlet-name>spring-mvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>spring-mvc</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-mvc-servlet.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> </web-app> ``` #### 3.2. Bean 配置文件 我们将需要在`WEB-INF`文件夹中写入配置文件(`spring-mvc-servlet.xml`)。 我们可以随意命名,但是请记住,它必须与我们在`web.xml`中声明的 servlet 名称匹配。 `spring-mvc-servlet.xml` ```java <beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <context:component-scan base-package="com.howtodoinjava.web" /> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"></property> <property name="prefix"> <value>/WEB-INF/jsp/</value> </property> <property name="suffix"> <value>.jsp</value> </property> </bean> </beans> ``` ## 3\. 创建 Spring MVC 控制器 该请求处理器将接收对特定 URL 的所有请求,并返回模型数据以查看配置的视图处理器。 `DemoController.java` ```java package com.howtodoinjava.web; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; @Controller @RequestMapping("/access") public class DemoController { @RequestMapping(method = RequestMethod.GET) public String printWelcome(ModelMap model) { model.addAttribute("message", "Spring 3 MVC Hello World !! Thanks to www.howtodoinjava.com"); return "helloWorld"; } } ``` ## 4\. 创建视图 我们的视图是一个 **jsp** 文件,当从服务器返回相关视图时,它将在浏览器中呈现。 `helloWorld.jsp` ```java <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %> <%@ taglib prefix="x" uri="http://java.sun.com/jstl/xml" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt" %> <%@ taglib prefix="sql" uri="http://java.sun.com/jstl/sql" %> <html> <head> <title>My first example using Spring 3 MVC</title> </head> <body> <h1>Welcome message : <c:out value="${message}"></c:out></h1> </body> </html> ``` ## 5\. 演示 要运行该应用程序,请在 eclipse 中配置 tomcat 服务器。 现在,右键单击项目,然后选择运行方式。 在子菜单上,选择**在服务器**上运行。 现在在浏览器中输入:`http://localhost:8080/firstSpringApplication/access` 我们应该能够在浏览器中看到消息`Spring 3 MVC Hello World !! Thanks to www.howtodoinjava.com`。 如果您在运行或部署给定应用程序时发现任何问题,请给我留言。 [下载源码](https://docs.google.com/open?id=0B7yo2HclmjI4OS1sd0JvSEE1ckk) 学习愉快!