提供各种数据库在JDBC中的连接方法.及在struts与hibernate中的配置

来源:互联网 发布:域名管理权如何找回 编辑:程序博客网 时间:2024/06/05 19:48
 
1、Oracle8/8i/9i数据库(thin模式)

Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID
String user="test";
String password="test";
Connection conn= DriverManager.getConnection(url,user,password);  

  2、DB2数据库

Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();
String url="jdbc:db2://localhost:5000/sample"; //sample为你的数据库名
String user="admin";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);  

  3、Sql Server7.0/2000数据库

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb";
//mydb为数据库
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);  

  4、Sybase数据库

Class.forName("com.sybase.jdbc.SybDriver").newInstance();
String url =" jdbc:sybase:Tds:localhost:5007/myDB";//myDB为你的数据库名
Properties sysProps = System.getProperties();
SysProps.put("user","userid");
SysProps.put("password","user_password");
Connection conn= DriverManager.getConnection(url, SysProps);  

  5、Informix数据库

Class.forName("com.informix.jdbc.IfxDriver").newInstance();
String url = "jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;
user=testuser;password=testpassword"; //myDB为数据库名
Connection conn= DriverManager.getConnection(url);  

  6、MySQL数据库

Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost:3306/test"
//test为数据库名
Connection conn= DriverManager.getConnection(url);  

  7、PostgreSQL数据库

Class.forName("org.postgresql.Driver").newInstance();
String url ="jdbc:postgresql://localhost/myDB" //myDB为数据库名
String user="myuser";
String password="mypassword";
Connection conn= DriverManager.getConnection(url,user,password);  

  8、access数据库直连用ODBC的

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") ;
String url="jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ="+application.getRealPath("/Data/ReportDemo.mdb");
Connection conn = DriverManager.getConnection(url,"","");
Statement stmtNew=conn.createStatement() ;

有朋友提出一点小意见说现在都用配置文件了..哈哈.做人要灵活点哟.....

下面利用struts_config.xml小配一下...其它自行修改就可以了.我们以Mysql为例


<data-sources>
   <data-source key="infomgr_ds" type="org.apache.commons.dbcp.BasicDataSource">
     <set-property property="autoCommit" value="false" />
     <set-property property="description" value="DB Connection Pool" />

     <!-- 另外的二种连接
     <set-property property="driverClass" value="org.gjt.mm.mysql.Driver" />
     
     <set-property property="driverClass" value="sun.jdbc.odbc.JdbcOdbcDriver" />
     -->

     <set-property property="driverClassName" value="com.mysql.jdbc.Driver" />
     <set-property property="maxCount" value="15" />
     <set-property property="minCount" value="5" />     
     <set-property property="password" value="root" />
     <set-property property="url" value="jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&charactorEncoding=gbk" />
     <set-property property="username" value="root" />

<!--用odbc时
     <set-property property="user" value="" />
     <set-property property="password" value="" />
     <set-property property="url" value="jdbc:odbc:infomgr" />
     -->
    </data-source>
</data-sources>


再补充一下以hibernate数据库连接配置这回我们以orcale为例子,名为 hibernate.cfg.xml,只提供大概的东西

<hibernate-configuration>

    <session-factory>

        <property name="dialect">net.sf.hibernate.dialect.Oracle9Dialect</property>
        <property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
        <property name="connection.username">j2eelwd</property>
        <property name="connection.password">j2eelwd</property>
        <property name="connection.url">jdbc:oracle:thin:@localhost:1521:King</property>
       <property name="connection.pool.size">1</property>
       <property name="statement_cache.size">25</property>
       <property name="jdbc.fetch_size">50</property>
       <property name="jdbc.batch_size">30</property>
       <property name="show_sql">true</property>
        </session-factory>

</hibernate-configuration>


随便说一下各个property元素:(高手,可跳过了哟..小弟也是略之一二..)  

dialect:使用了Oracle9的对照  
connection.driver_class:Oracle的JDBC驱动类名  
connection.username:Oracle数据库访问用户名  
connection.password:Oracle数据库访问密码  
connection.url:Oracle数据库访问URL  
connection.pool.size:数据库连接池大小  
statement_cache.size:JDBC statement缓冲大小  
jdbc.fetch_size:设定JDBC的Statement读取数据的时候每次从数据库中取出的记录条数  
jdbc.batch_size:设定对数据库进行批量删除,批量更新和批量插入的时候的批次大小  
show_sql:设定是否在控制台上显示向数据库提交的SQL语句,在开发调试时比较有用 (夜色老师讲的时候也用到过的哟)




Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1475872

原创粉丝点击