spring MVC
架构图
有两个控制器
前端控制器,只有1个,不需要自己写
业务逻辑控制器 可以有m(多个)个,需要自己写
spring MVC 需要的jar包
开发步骤
一、web.xml文件中配置前端控制器DispatcherServlet
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!--
配置spring资源文件
默认的文件名是: servlet-name-servlet.xml springmvc-servlet.xml
-->
<init-param>
<param-name>contextConfigLocation</param-name>
<!--默认的文件名是: servlet-name-servlet.xml springmvc-servlet.xml -->
<param-value>classpath*:applicationContext.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.action</url-pattern>
</servlet-mapping>
二、在spring配置文件中配置
xml文件头
<?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"
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">
</beans>
(1)非注解方式
写处理器类并配置处理器
1)实现Controller接口
org.springframework.web.servlet.mvc.Controller,实现的接口方法中有返回类型ModulAndView
处理器类
package com.modest.handler;
import com.modest.po.Items;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class ItemsHandler implements Controller {
@Override
public ModelAndView handleRequest(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception {
List<Items> itemsList = new ArrayList<Items>();
Items items_1 = new Items();
items_1.setName("HuaWei protable");
items_1.setPrice(3000d);
items_1.setDetail("laptop");
items_1.setCreatetime(new Date());
Items items_2 = new Items(