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的依赖注入了解的更深刻,只是一些注解还不是很熟悉!具体怎么使用还是得去查资料。

  • 相关阅读:
    操作系统:中断和异常
    操作系统
    编程:判断一个点是否在三角形内部
    python 多态
    python super()函数:调用父类的构造方法
    python 继承机制(子类化内置类型)
    python 父类方法重写
    python 继承机制
    python 封装底层实现原理
    python 类的封装
  • 原文地址:https://www.cnblogs.com/yanz/p/3885169.html
Copyright © 2011-2022 走看看