web.xml文件
<!-- 配置前端控制器 DispactherServlet-->
<servlet>
<servlet-name>date</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>date</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
前端控制器在初始化方法里面会读取初始化参数,获取spring配置文件的位置,然后启动容器
Controller实现类要实现Controller接口
package day5_29;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
@Component("da")
public class DateController implements Controller {
public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
return new ModelAndView("date1");
}
}
ModelAndView有两个常用的构造器
(1)ModelAndView(String viewName) viewName是视图名
(2)ModelAndView(String viewName,Map date) Map用于封装处理的结果
spring的配置文件applicationContext.xml文件
组件扫描:<context:component-scan base-package="day5_29"></context:component-scan>
HandllerMappings配置
<!-- 配置HandlerMapping -->
<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings"><!-- 调用setMappings() -->
<props>
<prop key="/date.do">da</prop><!-- bean的id -->
</props>
</property>
</bean>
ViewResolver的配置
<!-- 配置视图解析器 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/day01/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
生成系统时间的jsp文件(两种都可以):
<%@page pageEncoding="utf-8" import="java.util.Date" %>
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<h2>当前系统时间为</h2>
<p><fmt:formatDate value="<%=new Date() %>" pattern="yyyy年-MM月-dd日 HH:mm:ss"/></p>
或者
<%@page pageEncoding="utf-8" %>
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<html>
<head>
<meta charset="utf-8" />
<title>系统时间</title>
</head>
<body>
<h2>当前系统时间为</h2>
<jsp:useBean id="date" class="java.util.Date"></jsp:useBean>
<p><fmt:formatDate value="${date }" pattern="yyyy年-MM月-dd日 HH:mm:ss"/>
</p>
</body>
</html>
请求路径:http://localhost:8080/springmvc-work/date.do
输出结果:
当前系统时间为
2017年-05月-30日 10:38:14
系统大致流程图如下: