使用Spring进行Web应用开发(一)


一.准备工作
jdk1.4.2
ApplicationServer: Tomcat 5.0
Spring 1.2.8
设置Ide的文件默认编码为utf-8(可能需要重启)。

 Jar列表如下,大部分在Spring的lib目录下找得到。
standard.jar,jstl.jar,spring.jar,antlr-2.7.5H3.jar,aopalliance.jar,c3p0-0.9.0.4.jar,cglib-nodep-2.1_3.jar,jaxen-1.1-beta-4.jar,dom4j-1.6.jar,ehcache-1.1.jar,ejb.jar,mail.jar,jdbc2_0-stdext.jar,rowset.jar,jta.jar,jaxrpc.jar,activation.jar,jsp-api.jar,xml-apis.jar,jms.jar,connector.jar,commons-lang.jar,commons-discovery.jar,commons-digester.jar,commons-attributes-api.jar,commons-dbcp.jar,commons-fileupload.jar,commons-collections.jar,commons-attributes-compiler.jar,commons-httpclient.jar,commons-codec.jar,commons-pool.jar,commons-beanutils.jar,commons-logging.jar,commons-validator.jar,log4j-1.2.13.jar,jakarta-oro-2.0.8.jar,junit.jar,j

二.建立工程

好了,新建index.jsp如下:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
  <head><title>首页</title></head>
  <body>
  <c:out value="你好 Spring" />
  </body>
</html>

三。现在完成一个SpringMvc的HelloWorld

1. 在web.xml中配置一个名称为springapp的DispatcherServlet及CharacterEncodingFilter.

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

<web-app version="2.4"
         xmlns="http://java.sun.com/xml/ns/j2ee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" >


    <servlet>
        <servlet-name>springapp</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>2</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>springapp</servlet-name>
        <url-pattern>*.htm</url-pattern>
    </servlet-mapping>

    <filter>
        <filter-name> CharacterEncodingFilter </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> CharacterEncodingFilter </filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

    <session-config>
        <session-timeout>30</session-timeout>
    </session-config>

    <welcome-file-list>
        <welcome-file>welcome.jsp</welcome-file>
    </welcome-file-list>

    <error-page>
        <exception-type>java.lang.Exception</exception-type>
        <location>/uncaughtException.jsp</location>
    </error-page>

</web-app>

2. 建立/WEB-INF/springapp-servlet.xml文件,此配置文件将会被在web.xml中配置的名为springapp的servlet载入。

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
。。。。。。。。。。。。。。
</beans>

建立welcome.jsp(在web.xml中指定的web首页),dataAccessFailure.jsp(数据库访问异常的显示页面),uncaughtException.jsp(未知异常的友好显示页面)文件
welcome.jsp内容如下:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<c:redirect url="/index.htm" />

实现一个简单的Controller 类:WelcomeController,代码如下:

package springapp.web;

import org.springframework.web.servlet.mvc.Controller;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Map;
import java.util.HashMap;

/**
 * User: Saro
 * Date: 2006-4-22
*/
public class WelcomeController implements Controller {

    public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
        String welcomeMessage="你好 Spring";
        Map model=new HashMap();
        model.put("welcomeMessage",welcomeMessage);
        return new ModelAndView("/index.jsp",model);
    }

}

此Controller简单转发到index.jsp页面,并以welcomeMessage为key,放置一字符串。
修改index.jsp为:
  <c:out value="${welcomeMessage}" />

springapp-servlet.xml中的配置:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

<beans>

    <!-- 拦截Controller中抛出的异常,转向到指定视图-->
    <bean id="exceptionResolver" class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
        <property name="exceptionMappings">
            <props>
                <prop key="org.springframework.dao.DataAccessException">/dataAccessFailure.jsp</prop>
                <prop key="org.springframework.transaction.TransactionException">/dataAccessFailure.jsp</prop>
            </props>
        </property>
    </bean>

<!-- 视图url和ControllerBean的映射配置-->
<bean
id="urlHandlerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
        <property name="mappings">
            <value>
                index.htm = welcomeController
            </value>
        </property>
    </bean>
   
    <!-- Controller Bean-->
    <bean id="welcomeController" class="springapp.web.WelcomeController" />

</beans>

运行Tomcat。

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值