SpringMVC的配置

来源:互联网 发布:c4dr14 mac注册机下载 编辑:程序博客网 时间:2024/06/08 04:59

Springmvc的设置

1.   pom中添加Spring-webmvc的依赖

2.   在web.xml中配置spring-mvc的应用,并配置spring的配置文件

将所有的请求均交给spring中的DispatcherServlet,配置contextConfigLocation

 

      <servlet>

      <servlet-name>HelloWeb</servlet-name>

      <servlet-class>

        org.springframework.web.servlet.DispatcherServlet

      </servlet-class>

      <init-param>

         <param-name>ContextConfigLocation</param-name>

         <param-value>classpath:spring-servlet.xml</param-value>

      </init-param>

      <load-on-startup>1</load-on-startup>

   </servlet>

   <servlet-mapping>

      <servlet-name>HelloWeb</servlet-name>

      <url-pattern>/</url-pattern>

   </servlet-mapping>

 

3.   在spring-servlet.xml配置文件中设置ResolverView,设置前后缀

 

<beanclass="org.springframework.web.servlet.view.InternalResourceViewResolver">

        <property name="prefix"value="/WEB-INF/jsp/" />

        <property name="suffix"value=".jsp" />

  </bean>

4.   在spring-servlet.xml文件中配置具体的请求bean

<beanname="/productInput.action"class="com.controller.InputProductController"></bean>

  <bean name="/productSave.action"class="com.controller.SaveProductController"></bean>

5.   分别新增InputProductController和SaveProductController类,均实现了Spring中的Controller接口,实现了返回为为ModelAndView的handleRequest方法.

6.   InputProductController中仅需要页面的展示,则创建一个带view字符串参数的ModelAndView对象。

public ModelAndViewhandleRequest(HttpServletRequest request, HttpServletResponse response) throwsException {

        return newModelAndView("ProductInput");

  }

7.   拼接prefix + visual view + suffix构成真实路径进行页面展示.

8.   ProductInput.jsp页面中是一个表单,表单的action为productSave.action

9.   进入SaveProductController控制器,该控制器不但需要进行页面的跳转,还要进行数据的传递,所以我们需要封装一个带有虚拟视图并且有模型的ModelAndView对象.

        Stringname = request.getParameter("name");

        Stringdesc = request.getParameter("desc");

        doubleprice = Double.parseDouble(request.getParameter("price"));

       

        ProductForm  pf = new ProductForm(name, desc, price);

       

        Productp = new Product(pf.getName(), pf.getDesc(), pf.getPrice());

       

        ModelAndViewmv = new ModelAndView("ProductDetail", "product", p);

       

        returnmv;

 

10. 结合前后缀跳转到真是的路径/WEB-INF/jsp/ProductDetail.jsp

该页面可以通过el表达式获取之前ModelAndView中通过Product的key获取p的Product对象。

原创粉丝点击