Hibernate/Java连接Sqlserver2008和sqlserver2000数据库连接的url的区别:
Sqlserver2008数据库连接的写法:
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <!-- destroy-method表示对象用完之后,资源释放回收,close是指将连接重新放回到连接池里 --> <property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"></property> <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=test"></property> <property name="username" value="sa"></property> <property name="password" value="testpwd"></property> <property name="maxActive" value="100"></property><!-- 连接池的最大的活动连接数 --> <property name="maxIdle" value="30"></property><!-- 连接池的最大的可空闲的连接数 --> <property name="maxWait" value="500"></property><!-- 连接池的最大的可以等待的连接数 --> <property name="defaultAutoCommit" value="true"></property> <!-- 跟数据库连接的事务有关,每执行一次数据库操作,会自动提交,本次实例的操作是原子性的,实际项目中一般是false --> </bean>
Sqlserver2008数据库驱动包说明:
Microsoft SQL Server JDBC Driver 3.0下载下来,解压下来有2个jar,一个是sqljdbc,一个是sqljdbc4。
其中sqljdbc是为JDK1.5用的,而JDK1.6必须用sqljdbc4。否则出错!
注意:sqlserver2008和sqlserver2000的驱动包是不同的,sqlserver2000的驱动包是
mssqlserver.jar 及其他基础包。而sqlserver2008的驱动包只要sqljdbc或者sqljdbc4即可。
而且sqlserver2008和sqlserver2000的url链接也是不同的,一定要区分好了,否则会报找不到Class的错误的。
一定要连接哪个版本的数据库就使用哪个版本的包,否则可能会出现一些莫名的问题,如sql语句正确却无法执行。
Sqlserver2008连接字符串:
<property name="driverClassName" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"></property>
Sqlserver2000连接字符串:
<property name="driverClassName" value="com.microsoft.jdbc.sqlserver.SQLServerDriver"></property>