1 参考http://blog.csdn.net/haishu_zheng/article/details/51490299,用第二种方法创建一个名为springmvcdemo的Maven工程。

2 文件目录结构如下图所示

3 pom.xml中的完整内容为

  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  3. <modelVersion>4.0.0</modelVersion>
  4. <groupId>springmvcdemo</groupId>
  5. <artifactId>springmvcdemo</artifactId>
  6. <version>0.0.1-SNAPSHOT</version>
  7. <packaging>war</packaging>
  8. <name>springmvcdemo</name>
  9. <description />
  10. <properties>
  11. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  12. </properties>
  13. <dependencies>
  14. <dependency>
  15. <groupId>org.springframework</groupId>
  16. <artifactId>spring-web</artifactId>
  17. <version>3.2.9.RELEASE</version>
  18. </dependency>
  19. <dependency>
  20. <groupId>org.springframework</groupId>
  21. <artifactId>spring-webmvc</artifactId>
  22. <version>3.2.9.RELEASE</version>
  23. </dependency>
  24. <dependency>
  25. <groupId>javax</groupId>
  26. <artifactId>javaee-api</artifactId>
  27. <version>7.0</version>
  28. <scope>provided</scope>
  29. </dependency>
  30. <dependency>
  31. <groupId>org.glassfish.web</groupId>
  32. <artifactId>javax.servlet.jsp.jstl</artifactId>
  33. <version>1.2.2</version>
  34. </dependency>
  35. </dependencies>
  36. <build>
  37. <plugins>
  38. <plugin>
  39. <artifactId>maven-compiler-plugin</artifactId>
  40. <version>2.3.2</version>
  41. <configuration>
  42. <source>1.7</source>
  43. <target>1.7</target>
  44. </configuration>
  45. </plugin>
  46. <plugin>
  47. <artifactId>maven-war-plugin</artifactId>
  48. <version>2.2</version>
  49. <configuration>
  50. <version>3.1</version>
  51. <failOnMissingWebXml>false</failOnMissingWebXml>
  52. </configuration>
  53. </plugin>
  54. </plugins>
  55. </build>
  56. </project>

4 web.xml中的完整内容为

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xmlns="http://xmlns.jcp.org/xml/ns/javaee"
  4. xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
  5. id="WebApp_ID" version="3.1">
  6. <display-name>springmvcdemo</display-name>
  7. <servlet>
  8. <servlet-name>spring</servlet-name>
  9. <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  10. <init-param>
  11. <param-name>contextConfigLocation</param-name>
  12. <param-value>/WEB-INF/applicationContext.xml</param-value>
  13. </init-param>
  14. <load-on-startup>1</load-on-startup>
  15. </servlet>
  16. <servlet-mapping>
  17. <servlet-name>spring</servlet-name>
  18. <url-pattern>/</url-pattern>
  19. </servlet-mapping>
  20. </web-app>

5 applicationContext.xml中的完整内容为:

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

6 Student.Java中的完整代码为

  1. package com.demo.model;
  2. import java.io.Serializable;
  3. public class Student implements Serializable {
  4. private static final long serialVersionUID = 1L;
  5. private Integer id;
  6. private String name;
  7. public Integer getId() {
  8. return id;
  9. }
  10. public void setId(Integer id) {
  11. this.id = id;
  12. }
  13. public String getName() {
  14. return name;
  15. }
  16. public void setName(String name) {
  17. this.name = name;
  18. }
  19. @Override
  20. public String toString() {
  21. return "Student [id=" + id + ", name=" + name + "]";
  22. }
  23. }

7 StudentDao.java中的完整代码为

  1. package com.demo.dao;
  2. import java.util.List;
  3. import com.demo.model.Student;
  4. public interface StudentDao {
  5. public List<Student> getAllStudents();
  6. }

8 StudentDaoImpl.java中的完整代码为

  1. package com.demo.dao;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import org.springframework.stereotype.Repository;
  5. import com.demo.model.Student;
  6. @Repository
  7. public class StudentDaoImpl implements StudentDao {
  8. public List<Student> getAllStudents() {
  9. List<Student> students = new ArrayList<Student>();
  10. Student stu1 = new Student();
  11. stu1.setId(1);
  12. stu1.setName("Zhang San");
  13. students.add(stu1);
  14. Student stu2 = new Student();
  15. stu2.setId(2);
  16. stu2.setName("Li Si");
  17. students.add(stu2);
  18. return students;
  19. }
  20. }

9 StudentManager.java中的完整代码为:

  1. package com.demo.service;
  2. import java.util.List;
  3. import com.demo.model.Student;
  4. public interface StudentManager {
  5. public List<Student> getAllStudents();
  6. }

10 StudentManagerImpl.java中的完整代码为:

  1. package com.demo.service;
  2. import java.util.List;
  3. import org.springframework.stereotype.Service;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import com.demo.dao.StudentDao;
  6. import com.demo.model.Student;
  7. import com.demo.service.StudentManager;
  8. @Service
  9. public class StudentManagerImplimplements StudentManager{
  10. @Autowired
  11. StudentDao dao;
  12. publicList<Student> getAllStudents() {
  13. return dao.getAllStudents();
  14. }
  15. }

11 StudentController.java中的完整代码为:

  1. package com.demo.controller;
  2. import org.springframework.beans.factory.annotation.Autowired;
  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.Model;
  7. import com.demo.service.StudentManager;
  8. @Controller
  9. @RequestMapping("/student-module")
  10. public class StudentController {
  11. @Autowired
  12. StudentManager manager;
  13. @RequestMapping(value = "/getStudentInfo", method = RequestMethod.GET)
  14. public String getStudentInfo(Model model) {
  15. model.addAttribute("students", manager.getAllStudents());
  16. return "showStudentInfo";
  17. }
  18. }

12 showStudentInfo.jsp中的完整代码为:

  1. <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
  2. <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
  3. <html>
  4. <head>
  5. <title>Spring MVC Demo</title>
  6. </head>
  7. <body>
  8. <h2>All Students</h2>
  9. <table border="1">
  10. <tr>
  11. <th>Student Id</th>
  12. <th>Student Name</th>
  13. </tr>
  14. <c:forEach items="${students}" var="student">
  15. <tr>
  16. <td>${student.id}</td>
  17. <td>${student.name}</td>
  18. </tr>
  19. </c:forEach>
  20. </table>
  21. </body>
  22. </html>

13 将springmvcdemo添加进Tomcat7中并运行

在浏览器中输入

http://localhost:8080/springmvcdemo/student-module/getStudentInfo

显示结果为

14 源码下载地址

CSDN:http://download.csdn.net/detail/haishu_zheng/9531315

Github:https://github.com/zhenghaishu/SpringMVC-Demo

Spring MVC入门Demo的更多相关文章

  1. Spring Mvc 入门Demo

    1.web.xml配置 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns=" ...

  2. 【转】spring MVC入门示例(hello world demo)

    部分内容来自网络:<第二章 Spring MVC入门 —— 跟开涛学SpringMVC > 1. Spring MVC介绍 Spring Web MVC是一种基于Java的实现了Web M ...

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

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

  4. Java基础-SSM之Spring MVC入门篇

    Java基础-SSM之Spring MVC入门篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Spring MVC简介 1>.什么是Spring MVC 答:Sprin ...

  5. Spring框架学习(7)spring mvc入门

    内容源自:spring mvc入门 一.spring mvc和spring的关系 spring mvc是spring框架提供的七层体系架构中的一个层,是spring框架的一部分,是spring用于处理 ...

  6. SSM(spring mvc+spring+mybatis)学习路径——2-1、spring MVC入门

    目录 2-1 Spring MVC起步 一.回顾Servlet 二.SpringMVC简介 三.搭建SpringMVC第一个案例 四.简单流程及配置 五.使用注解开发Controller 六.参数绑定 ...

  7. Spring MVC入门的实例

      作为Spring MVC入门,以XML配置的方式为例.首先需要配置Web工程的web.xml文件. 代码清单14-1:web.xml配置Spring MVC <?xml version=&q ...

  8. 1.【转】spring MVC入门示例(hello world demo)

    1. Spring MVC介绍 Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于 ...

  9. Spring MVC 入门示例讲解

    在本例中,我们将使用Spring MVC框架构建一个入门级web应用程序.Spring MVC 是Spring框架最重要的的模块之一.它以强大的Spring IoC容器为基础,并充分利用容器的特性来简 ...

随机推荐

  1. react todolist

    import React, {Component} from 'react'; class AddItem extends React.Component { constructor(props) { ...

  2. 四十四 常用内建模块 struct

    准确地讲,Python没有专门处理字节的数据类型.但由于str既是字符串,又可以表示字节,所以,字节数组=str.而在C语言中,我们可以很方便地用struct.union来处理字节,以及字节和int, ...

  3. react native native module

    React Native Native Modules,官方地址:https://facebook.github.io/react-native/docs/native-modules-android ...

  4. python的递归函数

    1.如果一个函数在内部调用自身本身,这个函数就是递归函数. 例:计算 n! = 1 x 2 x 3 x ... x n,用函数fact(n)表示,可以看出: fact(n) = n! = 1 x 2 ...

  5. Sqli-labs less 9

    Less-9 本关我们从标题就可以看到 <基于时间-单引号>,所以很明显的这关要我们利用延时注入进行,同时id参数进行的是 ' 的处理.这里我们大致的将延时注入的方法演示一次. 这里用sl ...

  6. Python开发基础-Day2-流程控制、数字和字符串处理

    流程控制 条件判断 if单分支:当一个“条件”成立时执行相应的操作. 语法结构: if 条件: command 流程图: 示例:如果3大于2,那么输出字符串"very good" ...

  7. Xamarin提示安装包错误解决办法

    Xamarin提示安装包错误解决办法大学霸 Xamarin提示安装包错误,错误信息类似于:Please install package:'Xamarin.Android.Support.v7.Medi ...

  8. 常见OJ提交结果对照表

    Waiting:你的程序刚刚提交,正在等待OJ评测你的程序.   Compiling:OJ正在编译你的程序.   Accepted:OK!你的程序是正确的 ^_^.   Wrong Answer:你的 ...

  9. coreseek mmseg分词配置和创建

    1.文件格式为 沃尔沃 1x:1现代 1x:1徐工 1x:1住友 1 ... 3.将生成的符合格式要求的词表粘贴到原词表unigram.txt末尾,保存为unigram_new.txt,并拷贝到mms ...

  10. Electron与jQuery中$符号冲突的三种解决方法

    在Electron工程中引用jQuery时,经常会出现以下错误: Uncaught ReferenceError: $ is not defined 解决的具体方法如下: ①.在测试的过程中(测试过1 ...