一、tomcat

1、去官网下载,http://tomcat.apache.org/
2、解压缩压缩包
image.png
3、将Spring Web程序的 war包,复制到webapp目录下,启动服务器。

  1. bash startup.sh # 启动服务
  2. bash shutdown.sh # 关闭服务

4、打开浏览器 键入 http://localhost:8080 进入如下页面则表示安装成功。进入相应的路径,看代码是否是对的。
image.png

二、代码

1、目录结构

image.png

2、基本的xml配置

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://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  4. xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  5. version="3.0">
  6. <display-name>SpringMvcV1</display-name>
  7. <!-- 部署 DispatcherServlet -->
  8. <!-- 部署 DispatcherServlet -->
  9. <servlet>
  10. <servlet-name>SpringMvcV1</servlet-name>
  11. <servlet-class>org.springframework.web.servlet.DispatcherServlet </servlet-class>
  12. <!--
  13. <init-param>
  14. <param-name>contextConfigLocation</param-name>
  15. <param-value>classpath*:dispatcher-servlet.xml</param-value>
  16. </init-param>
  17. -->
  18. <!-- 表示容器再启动时立即加载servlet -->
  19. <load-on-startup>1</load-on-startup>
  20. </servlet>
  21. <servlet-mapping>
  22. <servlet-name>SpringMvcV1</servlet-name>
  23. <url-pattern>/</url-pattern>
  24. </servlet-mapping>
  25. </web-app>

servlet.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xmlns:context="http://www.springframework.org/schema/context"
  5. xmlns:mvc="http://www.springframework.org/schema/mvc"
  6. xsi:schemaLocation="http://www.springframework.org/schema/beans
  7. http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
  8. http://www.springframework.org/schema/context
  9. http://www.springframework.org/schema/context/spring-context-3.2.xsd
  10. http://www.springframework.org/schema/mvc
  11. http://www.springframework.org/schema/mvc/spring-mvc.xsd">
  12. <!--
  13. <context:component-scan base-package="com.cimon.controller" />
  14. <mvc:annotation-driven/>
  15. <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  16. <property name="prefix" value="/WEB-INF/jsp/" />
  17. <property name="suffix" value=".jsp" />
  18. </bean>
  19. -->
  20. <!-- LoginController控制器类,映射到"/login"-->
  21. <bean id="login" name="/login"
  22. class="com.cimon.controller.LoginController"/>
  23. <bean id="register" name="/register"
  24. class="com.cimon.controller.RegisterController"/>
  25. </beans>

index.jsp

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>Insert title here</title>
  8. </head>
  9. <body>
  10. 未注册的用户,请
  11. <a href="${pageContext.request.contextPath }/register"> 注册</a>
  12. <br /> 已注册的用户,去
  13. <a href="${pageContext.request.contextPath }/login"> 登录</a>
  14. <br /> Say Hello
  15. <a href="${pageContext.request.contextPath }/hello">hello</a>
  16. </body>
  17. </html>

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>Hello, ${message}</h2>
  8. </body>
  9. </html>

login.jsp

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8"%>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>Insert title here</title>
  8. </head>
  9. <body>
  10. 登录页面!
  11. </body>
  12. </html>

register.jsp

  1. <%@ page language="java" contentType="text/html; charset=UTF-8"
  2. pageEncoding="UTF-8" %>
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  7. <title>Insert title here</title>
  8. <body>
  9. 注册页面!
  10. </body>
  11. </html>
  12. </head>

Controller

  1. import org.springframework.stereotype.Controller;
  2. import org.springframework.web.bind.annotation.RequestMapping;
  3. import org.springframework.web.bind.annotation.RequestMethod;
  4. import org.springframework.ui.ModelMap;
  5. @Controller
  6. @RequestMapping("/hello")
  7. public class HelloController{
  8. @RequestMapping(method = RequestMethod.GET)
  9. public String printHello(ModelMap model) {
  10. model.addAttribute("message", "Hello Spring MVC Framework!");
  11. return "hello";
  12. }
  13. }
  1. import org.springframework.web.servlet.ModelAndView;
  2. import org.springframework.web.servlet.mvc.Controller;
  3. import javax.servlet.http.HttpServletRequest;
  4. import javax.servlet.http.HttpServletResponse;
  5. public class LoginController implements Controller {
  6. public ModelAndView handleRequest(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception {
  7. return new ModelAndView("login.jsp");
  8. }
  9. }
  1. import org.springframework.web.servlet.ModelAndView;
  2. import org.springframework.web.servlet.mvc.Controller;
  3. import javax.servlet.http.HttpServletRequest;
  4. import javax.servlet.http.HttpServletResponse;
  5. public class RegisterController implements Controller {
  6. public ModelAndView handleRequest(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception {
  7. return new ModelAndView("./WEB-INF/jsp/register.jsp");
  8. }
  9. }

pom.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. <modelVersion>4.0.0</modelVersion>
  6. <groupId>com.cimon</groupId>
  7. <artifactId>SpringMvcV1</artifactId>
  8. <version>1.0</version>
  9. <packaging>war</packaging> <!-- 定义打包形式 -->
  10. <dependencies>
  11. <!--测试-->
  12. <dependency>
  13. <groupId>junit</groupId>
  14. <artifactId>junit</artifactId>
  15. <version>4.11</version>
  16. <scope>test</scope>
  17. </dependency>
  18. <!--日志-->
  19. <dependency>
  20. <groupId>org.slf4j</groupId>
  21. <artifactId>slf4j-log4j12</artifactId>
  22. <version>1.7.21</version>
  23. </dependency>
  24. <!--J2EE-->
  25. <dependency>
  26. <groupId>javax.servlet</groupId>
  27. <artifactId>javax.servlet-api</artifactId>
  28. <version>3.1.0</version>
  29. </dependency>
  30. <dependency>
  31. <groupId>javax.servlet.jsp</groupId>
  32. <artifactId>jsp-api</artifactId>
  33. <version>2.2</version>
  34. </dependency>
  35. <dependency>
  36. <groupId>javax.servlet</groupId>
  37. <artifactId>jstl</artifactId>
  38. <version>1.2</version>
  39. </dependency>
  40. <!--springframework-->
  41. <dependency>
  42. <groupId>org.springframework</groupId>
  43. <artifactId>spring-web</artifactId>
  44. <version>5.2.3.RELEASE</version>
  45. </dependency>
  46. <dependency>
  47. <groupId>org.springframework</groupId>
  48. <artifactId>spring-webmvc</artifactId>
  49. <version>5.2.3.RELEASE</version>
  50. </dependency>
  51. <dependency>
  52. <groupId>org.springframework</groupId>
  53. <artifactId>spring-context</artifactId>
  54. <version>5.2.3.RELEASE</version>
  55. </dependency>
  56. <dependency>
  57. <groupId>org.springframework</groupId>
  58. <artifactId>spring-test</artifactId>
  59. <version>5.2.3.RELEASE</version>
  60. </dependency>
  61. <dependency>
  62. <groupId>org.springframework</groupId>
  63. <artifactId>spring-jdbc</artifactId>
  64. <version>5.2.3.RELEASE</version>
  65. </dependency>
  66. </dependencies>
  67. <build>
  68. <plugins>
  69. <plugin>
  70. <!-- 定义web.xml 路径 -->
  71. <groupId>org.apache.maven.plugins</groupId>
  72. <artifactId>maven-war-plugin</artifactId>
  73. <version>2.2</version>
  74. <configuration>
  75. <webXml>src/main/webapp/WEB-INF/web.xml</webXml>
  76. </configuration>
  77. </plugin>
  78. </plugins>
  79. </build>
  80. </project>

三、访问

需要加上项目名
1、http://localhost:8080/SpringMvcV1/index.jsp