为java web项目添加spring MVC框架

 

为java web 项目添加 spring MVC 框架

 

今天花了点时间将之前整理的 spring MVC 项目的搭建做了下笔记,也把之前的做的个 Demo 一起放上来,给学习 spring MVC 框架的朋友一个引导吧!接下来我们就开始吧:

 

添加 spring 类库(如下图所示):

为java web项目添加spring MVC框架_第1张图片

 

 

WEB-INF 下创建 applicationContext.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:jee = "http://www.springframework.org/schema/jee"

    xsi:schemaLocation = "http://www.springframework.org/schema/beans

       http://www.springframework.org/schema/beans/spring-beans-2.5.xsd

       http://www.springframework.org/schema/jee

       http://www.springframework.org/schema/jee/spring-jee-2.5.xsd" >

      

      

beans >

 

WEB-INF 下创建 springMVCTemplet-servlet.xml 文件 ( 其中 springMVCTemplet 为你项目的名称 ), 内容大致如下:

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:p = "http://www.springframework.org/schema/p"

    xmlns:context = "http://www.springframework.org/schema/context"

    xsi:schemaLocation = "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd

              http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd" >

   

   

    < bean

       class = "org.springframework.web.servlet.view.InternalResourceViewResolver"

       p:prefix = "/" p:suffix = ".jsp"

       p:viewClass = "org.springframework.web.servlet.view.JstlView" />

 

   

    < context:component-scan base-package = "com.lym.control" />

 

 

 

beans >

 

接下来需要在 web.xml 中进行相应的配置,配置如下:

xml version = "1.0" encoding = "UTF-8" ?>

< web-app version = "2.5"

    xmlns = "http://java.sun.com/xml/ns/javaee"

    xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"

    xsi:schemaLocation = "http://java.sun.com/xml/ns/javaee

    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" >

   

    < context-param >

       < param-name > contextConfigLocation param-name >

       < param-value >

           /WEB-INF/applicationContext.xml

       param-value >

    context-param >

   

   

    < servlet >

       < servlet-name > springMVCTemplet servlet-name >

       < servlet-class >

           org.springframework.web.servlet.DispatcherServlet

       servlet-class >

       < load-on-startup > 0 load-on-startup >

    servlet >

    < servlet-mapping >

       < servlet-name > springMVCTemplet servlet-name >

       < url-pattern > *.htm url-pattern >

    servlet-mapping >

 

    < listener >

       < listener-class >

           org.springframework.web.context.ContextLoaderListener

       listener-class >

    listener >

   

  < welcome-file-list >

    < welcome-file > index.jsp welcome-file >

  welcome-file-list >

web-app >

 

web.xml 中,我们告诉容器需要加载 applicationContext.xml 配置文件;对 spring MVC 也进行了相应的配置,其中 URL .htm 为后缀的请求将交由 DispatcherServlet 进行处理, DispatcherServlet 会将请求分发给相应的控制器进行处理;同时增加 spring 的监听器。

 

 

到这里 spring MVC 项目已经搭建完成,接下来我们进行一个简单的测试。

 

src 目录下创建包: com.lym.control

创建类 IndexController ,代码如下:

package com.lym.control;

 

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse ;

 

import org.springframework.stereotype.Controller;

import org.springframework.ui.ModelMap;

import org.springframework.web.bind.annotation.RequestMapping;

 

@Controller

public class IndexController {

   

    @RequestMapping ( "/index.htm" )

    public ModelMap index(HttpServletRequest request,

           HttpServletResponse response) throws Exception{      

       ModelMap model = new ModelMap();

       model.addAttribute( "hello" , "hello Word!" );

       return model;

    }

}

 

当我们通过浏览器访问 /index.htm 时, IndexController 类的 index 方法将接受处理请求,这里我们只是简单的往 request 属性中添加 hello 属性,让对应的 jsp 页面可以获取到该属性。

 

index.jsp 上引入 jstl ,然后使用 ${hello} hello 属性值显示出来。

 

例子参见: springMVCTemplet.rar (导入 MyEclipse 部署到 tomcat 运行)

 

你可能感兴趣的:(spring)