• Spring 之 配置(Java之负基础实战)


    1.程序加入Spring

    <?xml version="1.0" encoding="utf-8"?>
    
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
                          http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
      version="3.1">
    
        <servlet>
            <servlet-name>spring</servlet-name>
            <servlet-class>
            org.springframework.web.servlet.DispatcherServlet
            </servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>
    
        <servlet-mapping>
            <servlet-name>spring</servlet-name>
            <url-pattern>*.do</url-pattern>
        </servlet-mapping>
        
        <filter>
            <filter-name>encodingFilter</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>encodingFilter</filter-name>  
        <url-pattern>*.do</url-pattern>  
      </filter-mapping> 
    
        
    
    </web-app>
    web.xml

    1.1.操作

      打开web.xml: 添加一个servlet

        <servlet>
            <servlet-name>spring</servlet-name>
            <servlet-class>
            org.springframework.web.servlet.DispatcherServlet
            </servlet-class>
            <load-on-startup>1</load-on-startup>
        </servlet>

      Spring 的配置文件默认是指向WEB-INF下 “<servlet-name>”名-servlet.xml 

    1.2.解释

      load-on-startup元素标记容器是否在启动的时候就加载这个servlet

    • 它的值必须是一个整数,表示servlet应该被载入的顺序
    • 当值为0或者大于0时,表示容器在应用启动时就加载并初始化这个servlet;
    • 当值小于0或者没有指定时,则表示容器在该servlet被选择时才会去加载。
    • 正数的值越小,该servlet的优先级越高,应用启动时就越先加载。
    • 当值相同时,容器就会自己选择顺序来加载。

      所以,<load-on-startup>x</load-on-startup>,中x的取值1,2,3,4,5代表的是优先级,而非启动延迟时间。

    2.设置url拦截

      设置spring url拦截:

      <servlet-mapping>
        <servlet-name>spring</servlet-name>
        <url-pattern>*.do</url-pattern>
      </servlet-mapping>

      表示url是.do为后缀的请求都必须经过spring的控制。

    3.字符编码过滤器 

        <filter>
            <filter-name>encodingFilter</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>encodingFilter</filter-name>  
        <url-pattern>*.do</url-pattern>  
      </filter-mapping> 
    filter

    4.spring-servlet.xml 配置

    4.1.创建spring-servlet.xml

      在WEB-INF下面创建spring-servlet.xml,

      这个名字和1.1中的红字部分是对应的,不能随便起名字。

    4.2.配置

    <?xml version="1.0" encoding="UTF-8"?>
    
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
    
        <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">  
            <property name="prefix" value="/WEB-INF/jsp/" />  
            <property name="suffix" value=".jsp" />  
        </bean> 
    
        <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
            <property name="mappings">
                <props>
                  <prop key="/index.do">IndexAction</prop>
                </props>
            </property>
        </bean> 
        
        <bean id="IndexAction" class="com.myweb.IndexAction">
            <property name="view">
                <value>index</value>
            </property>
        </bean>
        
    
    </beans>
    配置

      里面包含了MVC的配置,当然,现在还没有M什么事,下面介绍VC及它们之间的链接配置。

    4.2.1.url映射配置

        <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">  
            <property name="prefix" value="/WEB-INF/jsp/" />  
            <property name="suffix" value=".jsp" />  
        </bean> 

    这里表示指定控制器页面转向的目录及文件后缀。

    这些.jsp就是view

    4.2.2.页面目录配置

        <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
            <property name="mappings">
                <props>
                  <prop key="/index.do">IndexAction</prop>
                </props>
            </property>
        </bean> 

      SimpleUrlHandlerMapping 提供了最简单的URL 映射,通过Properties 将URL 和
    Controller 对应起来。  

    <prop key="/index.do">IndexAction</prop> 表示index.do要访问IndexAction对应的class,如4.2.4所示。
    IndexAction需要在src里面有对应的类文件。

    
    

    4.2.3.控制器配置

    4.2.3.1.配置文档

        <bean id="IndexAction" class="com.myweb.IndexAction">
            <property name="view">
                <value>index</value>
            </property>
        </bean>

      这里是Controller

            <property name="view">
                <value>index</value>
            </property>
     表示名字为index的视图,也就是index.jsp。

    com.myweb代表一个包,也是在src里面,见图4.2.2。

     property name = "view",是指com.myweb.IndexAction里面的变量 view

    5.导入jar,进行MVC编程

      按照图中的顺序导入lib下面的所有jar包,然后,就可以import里面的类了。

  • 相关阅读:
    Python入门_绘制多个五角形_turtle
    Selenium3+python自动化6-八种元素元素定位(Firebug和firepath)
    MongoDB入门(3)- MongoDB备份与恢复
    MongoDB入门(2)- MongoDB安装
    MongoDB入门(1)- MongoDB简介
    Elastic Search操作入门
    应用Xml.Linq读xml文件
    Struts2入门(1)-第一个Struts2程序
    Hibernate入门(4)- Hibernate数据操作
    Hibernate入门(3)- 持久对象的生命周期介绍
  • 原文地址:https://www.cnblogs.com/SimonGao/p/4913055.html
Copyright © 2020-2023  润新知