项目工程目录:
项目依赖jar包:
Vo: User
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| package com.course.vo;
public class User {
private Integer id; private String name; private Integer age; public User() { super(); } public User(Integer id, String name, Integer age) { super(); this.id = id; this.name = name; this.age = age; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } }
|
Controller
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
| package com.course.controller;
import java.util.ArrayList; import java.util.List;
import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.servlet.ModelAndView;
import com.course.vo.User;
@Controller @RequestMapping("user") public class UserController {
@RequestMapping("getUserList5") public ModelAndView getUserList5() { List<User> userList = new ArrayList<>(); User user; for (int i = 0; i < 5; i++) { user = new User(i, "name" + i, 10 + i); userList.add(user); } ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("userList", userList); modelAndView.setViewName("/WEB-INF/view/UserList.jsp"); return modelAndView; } @RequestMapping("getUserList10") public ModelAndView getUserList10() { List<User> userList = new ArrayList<>(); User user; for (int i = 0; i < 10; i++) { user = new User(i, "name" + i, 10 + i); userList.add(user); } ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("userList", userList); modelAndView.setViewName("/WEB-INF/view/UserList.jsp"); return modelAndView; } @RequestMapping("getUserList20") public ModelAndView getUserList20() { List<User> userList = new ArrayList<>(); User user; for (int i = 0; i < 20; i++) { user = new User(i, "name" + i, 10 + i); userList.add(user); } ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("userList", userList); modelAndView.setViewName("/WEB-INF/view/UserList.jsp"); return modelAndView; } @RequestMapping(value = {"searchUserList", "getUserList", "queryUserList"}, method = RequestMethod.GET) public ModelAndView getUserList() { List<User> userList = new ArrayList<>(); User user; for (int i = 0; i < 2; i++) { user = new User(i, "name" + i, 10 + i); userList.add(user); } ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("userList", userList); modelAndView.setViewName("/WEB-INF/view/UserList.jsp"); return modelAndView; } }
|
springmvc.xml
控制器映射器、控制器适配器、视图解析器的<bean>
节点配置可以去除,只保留<context:component-scan base-package=""></context:component-scan>
节点。
添加了<mvc:annotation-driven></mvc:annotation-driven>
之后,控制器映射器、控制器适配器、视图解析器的<bean>
节点配置可以去除。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
| <?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:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd">
<context:component-scan base-package="com.course.controller"></context:component-scan>
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"></bean>
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"></bean> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"></bean>
<mvc:annotation-driven></mvc:annotation-driven> </beans>
|
web.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>01_springmvc_hello</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> </web-app>
|
UserList.jsp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <!DOCTYPE html> <html> <head> <meta charset="ISO-8859-1"> <title>Insert title here</title> </head> <body> <h1>User List</h1> <hr/> <table align="center" width="60%" border="1" cellspacing="5"> <thead> <tr> <th>Id</th> <th>Name</th> <th>Age</th> <tr> </thead> <tbody> <c:forEach var="user" items="${userList}"> <tr> <td>${user.id}</td> <td>${user.name}</td> <td>${user.age}</td> </tr> </c:forEach> </tbody> </table> </body> </html>
|
log4j.properties
1 2 3 4 5 6 7 8
| log4j.rootLogger=INFO, stdout
log4j.logger.org.mybatis.example.BlogMapper=TRACE
log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
|
启动Tomcat
浏览器访问: http://localhost:8080/01_springmvc_init/user/getUserList5.do
浏览器访问: http://localhost:8080/01_springmvc_init/user/getUserList10.do
浏览器访问: http://localhost:8080/01_springmvc_init/user/getUserList20.do
浏览器访问:
1 2 3
| http://localhost:8080/01_springmvc_init/user/searchUserList.do http://localhost:8080/01_springmvc_init/user/getUserList.do http://localhost:8080/01_springmvc_init/user/queryUserList.do
|