以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_hello_world_example.htm

说明:示例基于Spring MVC 4.1.6。

以下示例显示如何使用Spring MVC框架编写一个简单的基于Web的Hello World应用程序。首先,让我们使用Eclipse IDE,并按照以下步骤使用Spring Web Framework开发动态Web应用程序:

步骤 描述
1 创建一个名为HelloWeb的动态Web项目,并在创建的项目的src文件夹下创建一个包com.tutorialspoint。
2 将下面提到的Spring和其他库拖放到文件夹WebContent/WEB-INF/lib中。
3 在com.tutorialspoint包下创建一个Java类HelloController。
4 在WebContent/WEB-INF文件夹下创建Spring配置文件web.xml和HelloWeb-servlet.xml。
5 在WebContent/WEB-INF文件夹下创建名为jsp的子文件夹。在此子文件夹下创建一个视图文件hello.jsp。
6 最后一步是创建所有源和配置文件的内容并导出应用程序,如下所述。

HelloController.java

  1. package com.tutorialspoint;
  2.  
  3. import org.springframework.stereotype.Controller;
  4. import org.springframework.web.bind.annotation.RequestMapping;
  5. import org.springframework.web.bind.annotation.RequestMethod;
  6. import org.springframework.ui.ModelMap;
  7.  
  8. @Controller
  9. @RequestMapping("/hello")
  10. public class HelloController{
  11.  
  12. @RequestMapping(method = RequestMethod.GET)
  13. public String printHello(ModelMap model) {
  14. model.addAttribute("message", "Hello Spring MVC Framework!");
  15. return "hello";
  16. }
  17.  
  18. }

web.xml

  1. <web-app id="WebApp_ID" version="2.4"
  2. xmlns="http://java.sun.com/xml/ns/j2ee"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
  5. http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  6.  
  7. <display-name>Spring MVC Application</display-name>
  8.  
  9. <servlet>
  10. <servlet-name>HelloWeb</servlet-name>
  11. <servlet-class>
  12. org.springframework.web.servlet.DispatcherServlet
  13. </servlet-class>
  14. <load-on-startup>1</load-on-startup>
  15. </servlet>
  16.  
  17. <servlet-mapping>
  18. <servlet-name>HelloWeb</servlet-name>
  19. <url-pattern>/</url-pattern>
  20. </servlet-mapping>
  21.  
  22. </web-app>

HelloWeb-servlet.xml

  1. <beans xmlns="http://www.springframework.org/schema/beans"
  2. xmlns:context="http://www.springframework.org/schema/context"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="
  5. http://www.springframework.org/schema/beans
  6. http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
  7. http://www.springframework.org/schema/context
  8. http://www.springframework.org/schema/context/spring-context-3.0.xsd">
  9.  
  10. <context:component-scan base-package="com.tutorialspoint" />
  11.  
  12. <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  13. <property name="prefix" value="/WEB-INF/jsp/" />
  14. <property name="suffix" value=".jsp" />
  15. </bean>
  16.  
  17. </beans>

hello.jsp

  1. <%@ page contentType="text/html; charset=UTF-8" %>
  2. <html>
  3. <head>
  4. <title>Hello World</title>
  5. </head>
  6. <body>
  7. <h2>${message}</h2>
  8. </body>
  9. </html>

最后,以下是您的Web应用程序中包含的Spring和其他库的列表。您只需将这些文件拖放到WebContent/WEB-INF/lib文件夹中即可。

  • servlet-api-x.y.z.jar

  • commons-logging-x.y.z.jar

  • spring-aop-x.y.z.jar

  • spring-beans-x.y.z.jar

  • spring-context-x.y.z.jar

  • spring-core-x.y.z.jar

  • spring-expression-x.y.z.jar

  • spring-webmvc-x.y.z.jar

  • spring-web-x.y.z.jar

完成创建源和配置文件后,导出应用程序。右键单击应用程序并使用Export->WAR File选项,并将您的HelloWeb.war文件保存在Tomcat的webapps文件夹中。

现在启动您的Tomcat服务器,并确保您可以使用标准浏览器从webapps文件夹访问其他网页。现在尝试访问URL http:://localhost:8080/HelloWeb/hello,如果您的Spring Web应用程序一切正常,您应该看到以下结果:

您应该注意,在给定的URL中,HelloWeb是应用程序名称,hello是我们在控制器中使用@RequestMapping(“/ hello”)提到的虚拟子文件夹。您可以使用直接root,而使用@RequestMapping(“/”)映射您的URL ,在这种情况下,您可以使用短URL http://localhost:8080/HelloWeb访问同一页面,但建议不同的功能在不同的文件夹。

Maven项目示例参考:

http://www.cnblogs.com/EasonJim/p/6917590.html

Spring MVC-Hello World示例(转载实践)的更多相关文章

  1. Spring MVC 入门教程示例 (一)

    今天和大家分享下  Spring MVC  入门教程 首先还是从 HelloWorld  web 工程开始 -------------------------- 1.首先创建一个Maven Web工程 ...

  2. 搭建Spring4+Spring MVC web工程的最佳实践

    Spring是个非常非常非常优秀的java框架,主要是用它的IOC容器帮我们依赖注入和管理一些程序中的Bean组件,实现低耦合关联,最终提高系统可扩展性和可维护性,用它来辅助我们构建web工程将会感觉 ...

  3. JSR-303 Bean Validation 介绍及 Spring MVC 服务端验证最佳实践

    任何时候,当要处理一个应用程序的业务逻辑,数据校验是你必须要考虑和面对的事情. 应用程序必须通过某种手段来确保输入参数在上下文来说是正确的. 分层的应用在很多时候,同样的数据验证逻辑会出现在不同的层, ...

  4. Spring MVC - Hello World示例

    以下示例演示如何使用Spring MVC框架编写一个简单的基于Web的Hello World应用程序.首先使用Eclipse IDE,并按照以下步骤使用Spring Web Framework开发一个 ...

  5. Spring MVC-环境设置(转载实践)

    以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_environment_setup.htm 说明:示例基于Spring MVC 4 ...

  6. spring mvc 注解入门示例

    web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi=" ...

  7. Spring MVC 多语言化的实践和学习

    一.主要参考: SpringMVC简单实现国际化/多语言 - CSDN博客 https://blog.csdn.net/u013360850/article/details/70860144/ 二.总 ...

  8. 看透Spring MVC:源代码分析与实践 (Web开发技术丛书)

    第一篇 网站基础知识 第1章 网站架构及其演变过程2 1.1 软件的三大类型2 1.2 基础的结构并不简单3 1.3 架构演变的起点5 1.4 海量数据的解决方案5 1.4.1 缓存和页面静态化5 1 ...

  9. SpringBoot + Spring MVC国际化使用示例

    项目中需要显示中英文两种语言,所以需要对显示的内容进行国际化,如下是一个示例程序. 程序文件结构,如下图,后面详细列出各文件的代码. 1. 编写maven的pom.xml文件,如下: <proj ...

  10. MogliFS与spring mvc结合简单示例

    一.MogliFS 与Spring结合配置请参照上文 二.上传页面 <%@ page language="java" contentType="text/html; ...

随机推荐

  1. C#比较两个日期的大小 .net

    using System;using System.Collections; public class MyClass{public static void Main(){DateTime dt1 = ...

  2. NoSQL概念

    NoSQL是非关系型数据库,即not only sql,key/value键值对存储. 现有Nosql DB产品:Redis/MongoDB/Memcached等等. SQL Sever是关系型数据库 ...

  3. Java数据类型转换1

    1 如何将字串 String 转换成整数 int? A. 有两个方法: 1). int i = Integer.parseInt([String]); 或 i = Integer.parseInt([ ...

  4. 【PostgreSQL-9.6.3】如何实现非自动提交

    我们在使用psql工具操作数据库时,事务是自动提交的.也就是说,当我们执行完一条insert或者delete语句后,在不输入commit情况下,这条语句也是提交的.如果不想自动提交,可以使用以下两种方 ...

  5. C# 连接 access2010数据库

    //定义一个新的OleDb连接 System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection(); // ...

  6. telerik:RadAsyncUpload 使用 时不执行上传事件的解决办法AsyncUpload1_FileUploaded(object sender, FileUploadedEventArgs e)

    一般是因为web.config没有配置的原因! 只要在<handlers>下加上 <add name="Telerik.Web.UI.WebResource" v ...

  7. 4星|《OKR实践指南》:老司机经验谈

    OKR 实践指南:知乎任向晖.雷明灿作品 (知乎「一小时」系列) 作者所在的公司已经实施了OKR十个季度了.算是目前少有的OKR老司机.书中介绍的是作者的实践经验,在目前的OKR中文书中这本算是比较少 ...

  8. Matlab atan2

    对Matlab不是很熟悉,在这个Matlab atan2 函数上出现了问题. 百度知道上的解释是这样的: atan2() 区别于 atan() 函数,返回 -pi~+pi 范围的角度: 使用过程中发现 ...

  9. Redis 之set集合结构及命令详解

    注:集合的元素具有唯一性,无序性 1.sadd  key   value1  value2  添加一个集合 2.smembers   key  获取一个集合的所有值 3.srem  key  valu ...

  10. Swiper 3D flow轮播使用方法

    swiper 的3d轮播效果,移动端适用 (1). 如需使用Swiper的3d切换首先加载3D flow插件(js和css). <head> <link rel="styl ...