灵活配置DtaSource

   <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
        <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
        <property name="url">
            <value><![CDATA[jdbc:mysql://127.0.0.1:3306/smbms?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull]]></value>
        </property>
        <property name="username"><value>root</value></property>
        <property name="password"><value>qazwsx888</value></property>
    </bean>

2.使用属性文件配置数据源

    <!--配置数据源(引入属性文件版)-->
    <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="location">
            <value>classpath:database.properties</value>
        </property>
    </bean>
    <bean id="dataSource" destroy-method="close" class="org.apache.commons.dbcp.BasicDataSource">
        <property name="driverClassName" value="${driver}"/>
        <property name="url" value="${url}"/>
        <property name="username" value="${user}"/>
        <property name="password" value="${password}"/>
    </bean>

3.使用JNDI数据源
前提是必须在应用服务器上配置好数据源,以Tomcat为例,配置需要把数据库驱动文件放到Tomcat的lib目录下,并修改Tomcat的conf目录下的context.xml文件

<Context>
<Resource name="jdbc/smbms" auth="Container" type="javax.sql.DataSource"
    maxActive="100" maxIdle="30" maxWait="10000" username="root" 
    password="root" driverClassName="com.mysql.jdbc.Driver"
    url="jdbc:mysql://127.0.0.1:3306/smbms?useUnicode=true&amp;characterEncoding=utf-8">
</Context>

Resource标签的name属性指定了数据源的名称,要与Spring配置文件中jndiName值java:comp/env/后的名称保持一致
因此Spring配置文件中

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName"> <value>java:comp/env/jdbc/smbms</value></property>
</bean>
posted @ 2018-04-19 16:14  pk-reset  阅读(136)  评论(0编辑  收藏  举报