`

maven利用jtds,c3p0连接SqlServer

 
阅读更多

转载请注明出处:http://coffeehot.iteye.com/admin/blogs/2184881

由于maven无法直接使用sqljdbc4.jar来连接SqlServer,因此使用jtds和c3p0来替代。

具体做法:

1. 加入pom依赖

 

   <dependency>
        <groupId>net.sourceforge.jtds</groupId>
        <artifactId>jtds</artifactId>
        <version>1.3.1</version>
    </dependency>
    <dependency>
        <groupId>c3p0</groupId>
        <artifactId>c3p0</artifactId>
        <version>0.9.1.2</version>
    </dependency>

 

 

2. 在src/main/resources下加入c3p0-config.xml

<c3p0-config>

    <default-config>
        <property name="driverClass">net.sourceforge.jtds.jdbc.Driver</property>

        <property name="jdbcUrl">jdbc:jtds:sqlserver://localhost:1433/mydb
        </property>

        <property name="user">sa</property>

        <property name="password">Admin123</property>

        <property name="acquireIncrement">50</property>

        <property name="initialPoolSize">100</property>

        <property name="minPoolSize">50</property>

        <property name="maxPoolSize">1000</property>
       
    </default-config>
   
   
    <named-config name="mydb">

        <property name="driverClass">net.sourceforge.jtds.jdbc.Driver</property>

        <property name="jdbcUrl">jdbc:jtds:sqlserver://127.0.0.1:1433/mydb
        </property>

        <property name="user">sa</property>

        <property name="password">Admin123</property>

        <property name="checkoutTimeout">30000</property>

        <property name="idleConnectionTestPeriod">30</property>

        <property name="initialPoolSize">10</property>

        <property name="maxIdleTime">30</property>

        <property name="maxPoolSize">100</property>

        <property name="minPoolSize">10</property>

        <property name="maxStatements">200</property>

    </named-config>

</c3p0-config>

 

3.测试

public class Test
{

private static HashMap connMap = new HashMap();

public static void main(String[] args) throws Exception
{
testConn();
}

public static void testConn() throws Exception
{
// Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
// Connection ct = DriverManager.getConnection("jdbc:sqlserver://localhost:1433; DatabaseName=mydb","sa","Admin123");

Connection ct = getConnection("mydb");
// Connection ct = getDefaultConnection();
PreparedStatement st = ct.prepareStatement("select id, name from dbo.test_conn");
st.execute();
ResultSet rs = st.getResultSet();
while(rs.next())
{
System.out.println("result: " + rs.getString(1));
}
}

public static Connection getConnection(String name){

Connection conn = null;
ComboPooledDataSource ds =null;
if(name==null||name.equals(""))
return null;

if(connMap.keySet().contains(name)){
ds = (ComboPooledDataSource)connMap.get(name);
}else{
ds = new ComboPooledDataSource(name);
}
try {
if(ds==null){
return null;
}
conn = ds.getConnection();
connMap.put(name, ds);
} catch (SQLException e) {
}
return conn;
}

public static Connection getDefaultConnection(){
ComboPooledDataSource ds = new ComboPooledDataSource();
try{
return ds.getConnection();
}catch(SQLException e){
}
return null;
}

}

 

分享到:
评论

相关推荐

    java连接SQL Server2000驱动程序

    - 在生产环境中,通常使用连接池如C3P0、HikariCP或Apache DBCP来管理数据库连接,以提高性能和资源利用率。 总结来说,Java连接SQL Server 2000涉及到的主要知识点有:JDBC驱动的引入和配置、数据库连接的建立与...

    java连接sqlserver驱动包兼容多版本数据库

    考虑使用连接池来管理数据库连接,如C3P0、HikariCP或Apache DBCP,这可以提高应用程序的性能并减少资源消耗。 8. **异常处理** 在处理数据库操作时,务必进行异常捕获和处理,以确保程序的健壮性。例如,当无法...

    java连接池jtds连接数据库

    在Java中,有许多库可以实现连接池功能,如C3P0、DBCP、HikariCP以及我们今天要讨论的jTDS。 jTDS是一个开源的Java驱动程序,专门用于连接Microsoft SQL Server和Sybase数据库。它实现了JDBC API,使得Java开发者...

    jdbc连接sql server 2000的驱动

    在实际开发中,为了提高代码的可读性和可维护性,通常会使用连接池(如C3P0、HikariCP等)来管理数据库连接。此外,事务管理、异常处理和SQL注入防护也是使用JDBC时需要注意的重要方面。在设计和编写代码时,遵循...

    jtds驱动包 net.sourceforge.jtds.jdbc.Driver

    - 连接池管理:为了提高性能和资源利用,应使用连接池(如HikariCP或C3P0)来管理数据库连接。 5. **常见问题与解决方案** - **连接失败**:检查服务器名、端口、数据库名、用户名和密码是否正确,网络是否通畅...

    sql server 2000 驱动

    10. 性能优化:为了提高性能,可以考虑使用连接池,如C3P0、HikariCP或Apache DBCP,它们能有效管理和复用数据库连接,减少创建和销毁连接的开销。 总的来说,SQL Server 2000驱动是Java应用程序与SQL Server 2000...

    java连接数据库sql_sever_2000.doc

    【Java 连接 SQL Server 2000 知识点详解】 在Java应用程序中连接SQL Server 2000数据库通常涉及以下关键步骤和知识点: ...同时,使用连接池(如C3P0、HikariCP等)来优化数据库连接的创建和管理,提高应用性能。

    sql Driver

    5. **连接池**:在生产环境中,为了提高性能和资源利用率,通常会使用连接池,如Apache的DBCP或C3P0,它们可以管理数据库连接,避免频繁地创建和关闭连接。 6. **JNDI(Java Naming and Directory Interface)**:...

    mssqlserverJDBC

    在生产环境中,为提高性能和资源利用率,通常使用连接池(如C3P0、HikariCP、Apache DBCP等)管理数据库连接。连接池预先创建并维护一定数量的连接,避免频繁地打开和关闭连接。 **七、高级特性** Microsoft JDBC...

    JDBC开发包

    - **优化连接池**:使用如C3P0、HikariCP等连接池管理工具,有效控制并发和资源回收。 总之,JDBC作为Java与数据库交互的基础,是Java开发者必备的知识点。通过理解并熟练运用`mysql-jdbc`和`sql-jdbc`驱动,可以...

    BoneCP 连接池所用到的jar集合

    BoneCP以其高性能著称,但在某些场景下,如需要更丰富的特性和社区支持,开发者可能会选择HikariCP、C3P0或DBCP等其他流行的连接池。 总的来说,BoneCP是一个强大的数据库连接池解决方案,尤其适合对性能有较高...

    java开发数据驱动jar

    此外,连接池如C3P0、HikariCP或Apache DBCP也能优化数据库资源的使用,提高性能。 7. 配置数据库连接参数: 数据库连接参数可能包括URL、用户名、密码、连接超时、读写超时、自动提交等。开发者需要根据实际需求...

    java的JDBC扩展包(jar包)

    2. 支持高级功能的库:如`c3p0.jar`和`dbcp.jar`等,这些是连接池管理库,帮助开发者更好地管理和复用数据库连接,提高系统性能。 3. ORM框架的JDBC依赖:像Hibernate、MyBatis这样的对象关系映射框架,虽然提供了...

    java常用jar包集合

    - **SQL工具**:例如jtds.jar(用于连接SQL Server和Sybase),postgresql.jar(PostgreSQL)等,这些工具帮助开发者执行SQL语句,进行数据库操作。 - **ORM框架**:对象关系映射(ORM)框架如Hibernate、MyBatis...

Global site tag (gtag.js) - Google Analytics