導航:首頁 > 編程語言 > javawasdatasource

javawasdatasource

發布時間:2022-12-25 10:42:33

java datasource 需要關閉嗎

DataSource在使用完後也是需要關閉的
無論是否使用
連接池
。如果沒使用連接池那麼
Connection
關閉是真正的關閉資料庫連接,使用連接池的話Connection關閉實際上是將Connection放回到連接池而非真正關閉連接。使用連接池的目的就是防止頻繁創建關閉Connection,連接池會對Connection復用,就是多次重復使用。

㈡ java根據配置文件如何創建SQLServerDataSource實例

Java中spring讀取配置文件的幾種方法如下:
一、讀取xml配置文件
(一)新建一個java bean
package chb.demo.vo;
public class HelloBean {
private String helloWorld;
public String getHelloWorld() {
return helloWorld;
}
public void setHelloWorld(String helloWorld) {
this.helloWorld = helloWorld;
}
}

㈢ java中DriverManager跟DataSource獲取getConnection有什麼不同

DriverManager是直接和資料庫地層連接

DataSource是用資料庫連接池進行封裝好獲得連接的,訪問量大的項目最好用連接池

拷貝於JDK 6.0 中文版.
--------------------------------------
public interface DataSource extends CommonDataSource, Wrapper
該工廠用於提供到此 DataSource 對象所表示的物理數據源的連接。作為 DriverManager 工具的替代項,DataSource 對象是獲取連接的首選方法。實現 DataSource 介面的對象通常在基於 JavaTM Naming and Directory Interface (JNDI) API 的命名服務中注冊。

DataSource 介面由驅動程序供應商實現。共有三種類型的實現:

基本實現 - 生成標準的 Connection 對象
連接池實現 - 生成自動參與連接池的 Connection 對象。此實現與中間層連接池管理器一起使用。
分布式事務實現 - 生成一個 Connection 對象,該對象可用於分布式事務,大多數情況下總是參與連接池。此實現與中間層事務管理器一起使用,大多數情況下總是與連接池管理器一起使用。
DataSource 對象的屬性在必要時可以修改。例如,如果將數據源移動到另一個伺服器,則可更改與伺服器相關的屬性。其優點在於,由於可以更改數據源的屬性,所以任何訪問該數據源的代碼都無需更改。

通過 DataSource 對象訪問的驅動程序本身不會向 DriverManager 注冊。通過查找操作獲取 DataSource 對象,然後使用該對象創建 Connection 對象。使用基本的實現,通過 DataSource 對象獲取的連接與通過 DriverManager 設施獲取的連接相同。
----------------------------------------------
public class DriverManager extends Object
管理一組 JDBC 驅動程序的基本服務。
註:DataSource 介面是 JDBC 2.0 API 中的新增內容,它提供了連接到數據源的另一種方法。使用 DataSource 對象是連接到數據源的首選方法。

作為初始化的一部分,DriverManager 類會嘗試載入在 "jdbc.drivers" 系統屬性中引用的驅動程序類。這允許用戶定製由他們的應用程序使用的 JDBC Driver。
在調用 getConnection 方法時,DriverManager 會試著從初始化時載入的那些驅動程序以及使用與當前 applet 或應用程序相同的類載入器顯式載入的那些驅動程序中查找合適的驅動程序。
【轉】

㈣ java中DriverManager跟DataSource獲取getConnection有什麼不同

java中DriverManager獲得連接是直接獲取,DataSource獲取getConnection是事先通過DriverManager獲取了一組連接保存在一個集合中!然後調用getConnection獲取連接是直接從該集合中獲取而不是去數據獲取連接,當關閉連接時,也不是將連接真的關閉,而是將連接再放回DataSource保存連接的集合中!

㈤ java配置連接池時不能得到一個DataSource實例,高手請進!

javax.sql.DataSource ds = (javax.sql.DataSource)ctx.lookup("java:comp/env/jdbc/news");
把這句分開寫看看。
Context ic = new InitialContext();
Context env = (Context) ic.lookup("java:comp/env");
DataSource ds = (DataSource) env.lookup("jdbc/news");

㈥ Java相關 Spring的 datasource配置的有關問題

下面的bean是對上面數據源的配置,上面的id是什麼,下面就必須跟上面一樣,上面bean是配置數據源,下面property的name屬性就得一樣

㈦ 如何獲得datasource對象

Java使用JNDI技術獲取DataSource對象
JAVA 2009-10-29 11:42:00 閱讀466 評論0 字型大小:大中小 訂閱

package common;
import java.sql.Connection;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
/**
* 通過JNDI獲取數據源
* @author 周尚武
* 時間:2008年12月8日22:37:09
*/
public class DBConnection {
/**
* 通過JNDI獲取數據源在獲取連接對象
* @return Connection con
*/
public static Connection getCon(){
Connection con = null;
try {
Context ic = new InitialContext();
DataSource source = (DataSource)ic.lookup("java:comp/env/jdbc/books");
con = source.getConnection();
} catch (NamingException e) {
System.out.println("數據源沒找到!");
e.printStackTrace();
} catch (SQLException e) {
System.out.println("獲取數連接對象失敗!");
e.printStackTrace();
}
return con;
}
}
JNDI的配置:

1.context.xml文件的配置:

<Resource name="jdbc/books"
auth="Container" type="javax.sql.DataSource" maxActive="100"
maxIdle="30" maxWait="10000" username="sa" password="123"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost:1433;databasename=books"/>
2.web.xml文件的配置:

<resource-ref>
<res-ref-name> jdbc/books </res-ref-name>
<res-type> javax.sql.DataSource </res-type>
<res-auth> Container </res-auth>
</resource-ref>
3.添加資料庫驅動文件:

通過數據源訪問資料庫,由於數據源由Tomcat 維護,所有必須把JDBC驅動程序復制到Tomcat的common/lib目錄下。

注意:如果要是用的MyEclipce自帶的Tomcat可以從Configure中

選中paths-----》在點擊Add JAR/ZIP-----》載入相應的JDBC驅動,如下圖:

轉自:http://yangchao20020.blog.163.com/blog/static/4838224720099291142093/

㈧ java中DriverManager跟DataSource獲取getConnection有什麼不同

DriverManager獲取到的鏈接一旦關閉就沒了,再鏈接需要重新進行tcpip協議的3次握手建立連接,速度慢
DataSource是資料庫連接池,裡面的鏈接是在程序啟動的時候創建好的,getConnection的時候只是從池中拿一個已經存在的鏈接,close的時候並沒有實際斷開鏈接,而是放回池中,這么做可以大大提高鏈接速度和效率

㈨ java中DataSourceTransactionManager作用是什麼

DataSourceTransactionManager:事務管理器
對JDBC(Java Data Base Connectivity,java資料庫連接)進行事務管理,在spring中是對JdbcTemplate進行事務管理

擴展:
HibernateTransactionManager:是對Hibernate進行事務管理,當在spring中使用HibernateTemplate時,要使用此管理器。

但是當在service的一個方法中同時使用了JdbcTemplate和HibernateTemplate時,就要使用HibernateTransactionManager了,因為當使用DataSourceTransactionManager時,JdbcTemplate和HibernateTemplate獲得的connection並不是同一個,也就沒辦法對service的方法進行事務管理了。

㈩ java datasource什麼模式

先看看JDK中對DataSource的描述:
作為 DriverManager 工具的替代項,DataSource 對象是獲取連接的首選方法。
基本實現 - 生成標準的 Connection 對象
連接池實現 - 生成自動參與連接池的 Connection 對象。此實現與中間層連接池管理器一起使用。
簡單來說,就是獲取資料庫連接的一個通用介面, 常見的dbcp,c3p0,druid,bonecp都是DataSource的實現.

閱讀全文

與javawasdatasource相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:962
phpffmpeg轉碼 瀏覽:671
長沙好玩的解壓項目 瀏覽:144
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:484
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:381
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:349
風翼app為什麼進不去了 瀏覽:778
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:150
伊克塞爾文檔怎麼進行加密 瀏覽:892
app轉賬是什麼 瀏覽:163