放小长假期间,开始学习springMVC,今天先来总结一下springMVC的框架和搭建。
先了解一下springMVC结构。
SpringFrameWork的后续产品,springMVC。如果说Struts2是用拦截器进行管理的话,springMVC就是通过servlet进行管理,它的底层也是servlet。两款产品的作用都是基于MVC的思想,将3层分离,使得项目更好管理。
用户发出请求后,会将请求发送至DispatcherServlet(在web.xml中配置),handlerMapping进行判断进行哪个controller,controller执行完毕后再通过ModerlAndView进行返回,再通过视图解析器解析view的跳转,完成业务。
配置springMVC。
第一步:导入相关的jar包至lib。并在properties中配置。
此为必备的jar包
在properties中配置
第二步:在web.xml中进行配置
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
第三步,创建spring框架,命名为springmvc-servlet.xml,并在框架中配置handlermapping
<!-- 配置handlermapping 根据beanname找到对应的controller -->
<bean class="org.springframework.web.servlet.mvc.support.ControllerBeanNameHandlerMapping">
</bean>
第四步,在请求页jsp编写form,action为*.do的格式
<form action="hello.do" method="post">
hello:<input type="text" name="hello"><br>
<input type="submit" name="tijiao">
</form>
第五步,创建HelloController.java类,继承AbstractController方法,并处理从请求页接收到的数据
public class HelloController extends AbstractController {
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request,
HttpServletResponse response) throws Exception {
// TODO Auto-generated method stub
String hello = request.getParameter("hello");
System.out.print(hello);
ModelAndView mav = new ModelAndView("result");
mav.addObject("helloworld", hello);
return mav;
}
第六步,到springmvc-servlet.xml中配置controller与视图解析器
<!-- 配置controller -->
<bean class="com.controller.HelloController" name="/hello.do">
</bean>
<!-- 配置视图解析器 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="suffix" value=".jsp"></property>
</bean>
第七步,在结果页用EL表达式设置参数
<h1>${helloworld }</h1>