我们spring配置数据源常用有三种方式
我们看得出,这是一种写的很死的方式,下面还有二种就是写的就是比较灵活的方式
我们在Resource文件夹中create(创建)一个文件名为database后缀名为properties的文件
这个文件我们放入我们数据库的数据库JDBC的连接mysql驱动的语句
driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/smbms?useUnicode=true&characterEncoding=utf-8 user=root password=root下面我们就是进行配置数据源
<!-- 1、配置数据源 --> <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location"> <value>classpath:database.properties</value> </property> </bean>接着在下面添加我们spring的数据库配置
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="${driver}"/> <property name="url" value="${url}"/> <property name="username" value="${user}"/> <property name="password" value="${password}"/> </bean>value里面的值填入${}
在{}括号里面填入的你的database文件的对应的数据,进行匹配
还有一种方式就是:
如果应用部署在高性能的应用服务器(如Tomcat,WebLogic上),我们可能使用程序服务器的本身提供的的数据源,应用服务器的数据源使用JNDI的方式使用者调用,Spring为此专门提供1引用JNDI资源的JNDIObjectFactoryBean类
==前提是必须在应用服务器上配置好数据源,我们以Tomcat为例,配置数据源需要把数据库驱动文件放到Tomcat的lib的目录下,并修改Tomcat的conf目录下的context.xml文件,配置数据源代码==
<Resource name="jdbc/news" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="root" password="root" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/newsmanagersystem? useUnicode=true&characterEncoding=utf-8"/> </Context>然后再回到我们spring配置文件中,添加代码
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> <!-- 通过jndiName指定引用的JNDI数据源名称 --> <property name="jndiName" value="java:comp/env/jdbc/smbms"/> </bean>这样子我们就完成spring的配置数据源了
