简单的spring MVC实例,适合入门

1.用myeclipse建一个web工程,导入相应的spring包

2.配置web.xml

在web.xml里面添加如下代码

 

   <display-name>springmvc</display-name>    
  <servlet>  
    <servlet-name>Dispatcher</servlet-name>  
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
    <init-param>  
        <param-name>contextConfigLocation</param-name>  
        <param-value>/WEB-INF/applicationContext.xml</param-value>  
    </init-param>  
  </servlet>  
  <servlet-mapping>  
    <servlet-name>Dispatcher</servlet-name>  
    <url-pattern>*.do</url-pattern>  
  </servlet-mapping>

 

以上配置,所以以.do结尾的请求都会由名为Dispatcher的DispatcherServlet处理

 

2.在applicationContext.xm中使用spring默认的HandlerMapping实现来配置Mapping映射,代码如下l

 

  <!-- 配置映射响应器 -->  
    <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">  
        <property name="mappings">                
            <props>   
                <prop key="/test.do">testAction</prop>   
            </props>   
        </property>   
    </bean>     

 

 

3.开发Controller和Form bean处理类,以及ModelAndView处理类类完成后返回的对象即跳转页面,在applicationContext.xm中添加代码如下

 <!-- 配置控制器 -->  
    <bean id="testAction" class= "com.spring.actions.TestAction">  
        <property name="commandClass">               
            <value>com.spring.forms.TestForm</value>   
        </property>  
        <property name="formView" value="input" />  
        <property name="successView" value="success" />    
    </bean> 

4viewResolver是ModelView返回后对应页面的解析器,例如对如jsp扩展名,我们可以配以下解析器

         <!-- 配置试图解析器 -->  
    <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">  
        <property name="viewClass">  
            <value>org.springframework.web.servlet.view.InternalResourceView</value>  
        </property>  
        <property name="prefix">  
            <value>/</value>  
        </property>  
        <property name="suffix">  
            <value>.jsp</value>  
        </property>  
    </bean>

 

 

以下是所要用的代码

a:编写input.jsp

 

<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>测试Spring</title>
</head>
<body>
<form  action="test.do" method="post">
<input  type="text" name="str1">
<input type="text"  name="str2">
<input type="submit">
</form>
</body>
</html

 

 

b:编写form类  com.spring.forms.TestForm

 

package com.spring.forms;

public class TestForm
{
        private String str1;
        private String str2;
  public String getStr1() {
   return str1;
  }
  public void setStr1(String str1) {
   this.str1 = str1;
  }
  public String getStr2() {
   return str2;
  }
  public void setStr2(String str2) {
   this.str2 = str2;
  }
       
}

c:编写处理类 action  com.spring.actions.TestAction

 

package com.spring.actions;


import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.spring.forms.TestForm;
import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;

import java.util.Map;
public class TestAction extends SimpleFormController
{
 
          protected ModelAndView onSubmit(
   HttpServletRequest request, HttpServletResponse response,
   Object command, BindException errors) throws Exception {
   TestForm testForm=(TestForm)command;
         if(testForm.getStr1().equals("admin")&&testForm.getStr2().equals("admin"))
         {
          request.getSession().setAttribute("str1",testForm.getStr1());
          request.getSession().setAttribute("str2",testForm.getStr2());
          return new ModelAndView(getSuccessView());
         }
         else
         {
          Map modle=errors.getModel();
          modle.put("testForm",testForm);
          return new ModelAndView(getFormView(),modle);
         }
 }


    
}

 

d:编写返回jsp页面,失败返回input.jsp,成功返回success.jsp

succes.jsp代码如下

 

 

<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>Insert title here</title>
</head>
<body>
<table  width="300"  border="1">
<tr>
<td>str1=${str1} </td>
</tr>
<tr>
<td>str2=${str2 }</td>
</tr>
<tr>
<td><a href="input.jsp">[BACK]</a></td>
</tr>
</table>
</body>
</html>

这样第一个springMVC工程就建成了

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值