配置方案一:
开发流程
可以按照图来开发:
第一步:创建Maven web项目,导入依赖
首先导入spring 依赖 ,以及 jsp servlet 依赖。
![](https://img.haomeiwen.com/i6217104/b41895ca8b36d9cf.png)
创建相应的目录:
![](https://img.haomeiwen.com/i6217104/b0015bcfed924432.png)
创建Spring的核心配置文件模板 applicationContext.xml
页面渲染,需要导入JSTL依赖包
第二步:配置前端控制器(中央控制器)
附带:配置过滤器
配置在web.xml
![](https://img.haomeiwen.com/i6217104/52a531766d5a86ee.png)
配置代码如下:
<filter>
<filter-name>myfilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>myfilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<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:aplicationContext.xml</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
注意:上面的代码包括了编码过滤器 。过滤器不用自己写 ,Springmvc提供。
第三步:配置处理器映射器
配置处理器映射器 name作为url查找。实现接口: HandlerMapping
超级接口:
public interface HandlerMapping
![](https://img.haomeiwen.com/i6217104/67eaacfbf5fe1667.png)
实现:
org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping
![](https://img.haomeiwen.com/i6217104/b36145f533264d58.png)
需要配置在spring的配置文件中:
<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"></bean>
第四步:配置处理器适配器
实现接口:HandlerAdapter
超级接口:public interface HandlerAdapter
![](https://img.haomeiwen.com/i6217104/7e5ac9c779c03668.png)
实现:
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter
![](https://img.haomeiwen.com/i6217104/cc3c082918114dc5.png)
配置:
<bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"></bean>
第五步:配置视图解析器
实现接口:ViewResolver
接口:public interface ViewResolver
![](https://img.haomeiwen.com/i6217104/b1665e4a48fd8ae1.png)
实现:
org.springframework.web.servlet.view.InternalResourceViewResolver
![](https://img.haomeiwen.com/i6217104/1e69f4e964547681.png)
配置:
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"></bean>
第六步:开发功能控制器Action
开发Handler需要实现 Controller接口,注意导包:
org.springframework.web.servlet.mvc.Controller
注意导包
代码如下所示: 返回视图 并且 返回数据
public class FirstAction implements Controller {
@Override
public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
ModelAndView modelAndView=new ModelAndView();
modelAndView.addObject("firstInfo","我是第一個界面返回的數據");
modelAndView.setViewName("first.jsp");
return modelAndView;
}
}
配置action:
注意是通过name查找
<bean name="/first.do" class="com.zyh.action.FirstAction"></bean>
第七步:开发View
加入jstl依赖,页面导入标签taglib时就会有提示。
isELIgnored="false"
frist.jsp 如下所示:
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<title>first</title>
${firstInfo}
</head>
<body>
</body>
</html>
第八步 测试:
这里就省略了测试截图 ,结果很简单 就是访问 first.do 直接返回视图 ,并且在first.jsp 展示对象输出结果。
总结为程序视图:
![](https://img.haomeiwen.com/i6217104/65401c355fc87e1c.png)
网友评论