zoukankan      html  css  js  c++  java
  • Spring mvc中xml文件的配置

         下午想试着去完成一个连接数据库的Spring mvc用户管理小系统,首先是在配置applicationContext.xml文件的数据源出了问题,去查一下才发现web.xml跟applicationContext.xml的配置还是有很多部分没去了解的!找到一个算是完整点的配置方法。

    • 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"  
        xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-2.5.xsd">  
        <!-- 定义个缺省的控制适配器 -->  
        <bean  
           class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/>  
        <!-- 获取配置文件 -->  
        <bean id="config"  
           class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">  
           <property name="locations">  
               <list>  
                  <value>classpath:db-config.properties</value>  
               </list>  
           </property>  
        </bean>  
        <!-- 获取数据源 -->  
        <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">  
           <property name="driverClassName">  
               <value>${db.dirverClass}</value>  
           </property>  
           <property name="url">  
               <value>${db.url}</value>  
           </property>  
           <property name="username">  
               <value>${db.username}</value>  
           </property>  
           <property name="password">  
               <value>${db.password}</value>  
           </property>  
        </bean>  
        <!--  
           URL到处理器的映射列表可以配置多个  
           mappings属性健值为URL程序文件地址,而值为处理器的Bean名字,URL程序文件地址可采用路径匹配的模式,如:  
           com/mvc/t?st.jsp:匹配com/mvc/test.jsp、com/mvc/tast.jsp等 com/mvc /*.jsp  
           :匹配所有com/mvc/下带jsp后缀的URL com/mvc  
           /**/test.jsp:匹配所有在com/mvc路径下或子孙路径下的test.jsp com/mvc  
           /**/*.jsp:匹配所有com/mvc路径下或子孙路径下带.jsp后缀的URL cn/**/web/bla.jsp:匹配  
           cn/option/web/dog.jsp cn/option/test/web/dog.jsp cn/web/dog.jsp的请求  
        -->  
        <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">  
           <property name="mappings">  
               <value>  
                  user.do=userAction  
    </value>  
           </property>  
        </bean>  
       
        <!--定义视图通过internalResourceView来表示使用的是Servlet/jsp技术-->  
        <bean id="viewResolver"  
           class="org.springframework.web.servlet.view.InternalResourceViewResolver">  
           <property name="viewClass">  
               <value>org.springframework.web.servlet.view.InternalResourceView  
               </value>  
           </property>  
           <!--jsp存放的目录-->  
           <property name="prefix">  
               <value>/jsp/</value>  
           </property>  
           <!--jsp文件的后缀-->  
           <property name="suffix">  
               <value>.jsp</value>  
           </property>  
        </bean>  
        <bean id="userDao" class="com.yjde.springmvc.UserDao">  
           <property name="dataSource"ref="dataSource"></property>  
        </bean>  
        <!--定义控制器-->  
        <bean id="userAction" class="com.yjde.springmvc.UserController">  
           <property name="dao">  
               <ref bean="userDao"/>  
           </property>  
           <property name="commandClass">  
               <value>com.yjde.springmvc.UserDao</value>  
           </property>  
           <property name="viewpage">  
               <value>userInfo</value>  
           </property>  
        </bean>  
    </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">  
        <servlet>  
            <!--springmvc的核心是DispatcherServlet,它负责控制整个页面的请求路径-->  
            <servlet-name>dispatcherServlet</servlet-name>  
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
    <!--初始化参数>/WEB-INF/classes/相当于src目录-->  
            <init-param>  
            <!-- 这个param-name必须是contextConfigLocation-->  
                <param-name>contextConfigLocation</param-name>  
                <param-value>/WEB-INF/classes/applicationContext.xml</param-value>  
            </init-param>  
            <load-on-startup>2</load-on-startup>  
        </servlet>  
     <!--拦截所有以do结尾的请求-->  
        <servlet-mapping>  
            <servlet-name>dispatcherServlet</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>  
        </filter>  
        <filter-mapping>  
            <filter-name>encodingFilter</filter-name>  
            <url-pattern>/*</url-pattern>  
        </filter-mapping>     
      <welcome-file-list>  
        <welcome-file>index.jsp</welcome-file>  
      </welcome-file-list>  
    </web-app> 

        搞定了数据源之后!开始MVC的各个层的新建。首先是实体层(entity)然后是DAO层包括DAOImpl用于实现DAO里面的接口。这是一种松耦,如果下次需要使用sql server数据库,就只需要更改DAOImpl就行了!接着Service层。服务层是一个中间层,跟dao层controller层打交道。

       接着到操作数据库了!看得文章里面基本上都是使用getJdbcTemplate()方法来实现增删改查,又是去查了很多文章才弄的懂!比之前使用的那种方法简单了很多。接触了spring之后很多东西变得简单了!使用注解,连been都不用手动去写了。不过得从最基础的been开始写起!看资料弄清楚。前两天是硬吃了整个spring mvc今天一整天算是来填补其中的漏洞,把很多不解都搞清楚。 弄到现在基本上把环境搞清楚了!对spring的依赖注入了解的更深刻,只是一些注解还不是很熟悉!具体怎么使用还是得去查资料。

  • 相关阅读:
    Codeforces Round #344 (Div. 2) C. Report 其他
    Codeforces Round #344 (Div. 2) B. Print Check 水题
    Codeforces Round #344 (Div. 2) A. Interview 水题
    8VC Venture Cup 2016
    CDOJ 1280 772002画马尾 每周一题 div1 矩阵快速幂 中二版
    CDOJ 1280 772002画马尾 每周一题 div1 矩阵快速幂
    CDOJ 1279 班委选举 每周一题 div2 暴力
    每周算法讲堂 快速幂
    8VC Venture Cup 2016
    Educational Codeforces Round 9 F. Magic Matrix 最小生成树
  • 原文地址:https://www.cnblogs.com/yanz/p/3885169.html
Copyright © 2011-2022 走看看