請教weblogic資料來源使用問題
新手發言,不到之處請多多指點。
使用weblogic自帶的oracle驅動連結oracle8i伺服器。配置資料連結池
和資料來源以後,如何正確使用連線池,以達到效能上的最佳化?
我使用如下的類去獲取資料來源並且獲取連結:
結果發現每次去呼叫的時候都顯得速度非常慢
我測試後發現每次都去lookup了一下資料來源
這個非常浪費時間,不知道有什麼辦法可以不用每次去獲取
資料來源來獲取連結?
此外,如何把獲取的連結歸還給資料連線池?
如果我直接對Statement和Connection進行Close()操作的話
連結是被關閉了還是返回給連線池了?
請指點迷津。不勝感激。
(weblogic8.1 oracle8i jdk1.4.1 ie6.0 )
//////////////原始碼附下///////////////////////////
package com.test.lancer.util;
import java.sql.*;
import javax.sql.*;
import javax.naming.*;
import java.util.Vector;
import java.util.Properties;
public class DBConnectBean{
private static Context ctx = null; //上下文
private static DataSource ds = null; //資料來源
private DBConnectBean()
{
}
public static Connection getConnection() throws Exception {
if (ds == null) {
initDataSource();
}
return ds.getConnection();
}
//初始化資料來源,用於獲取連結
private static void initDataSource() throws Exception {
try {
if (ctx == null) {
initContext();
}
ds = (DataSource) ctx.lookup("lancer_pool");
}
catch (NamingException ex) {
log("there is something wrong when get datasource");
throw new Exception(ex.getMessage());
}
}
//初始化上下文,用於查詢資料來源
private static void initContext() throws Exception
{
String url = "t3://localhost:7001";
String user = null;
String password = null;
Properties properties = null;
try {
properties = new Properties();
properties.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
properties.put(Context.PROVIDER_URL, url);
if (user != null) {
properties.put(Context.SECURITY_PRINCIPAL, user);
properties.put(Context.SECURITY_CREDENTIALS,
password == null ? "" : password);
}
ctx = new InitialContext(properties);
}
catch (Exception e) {
log("Unable to connect to WebLogic server at " + url);
log("Please make sure that the server is running.");
throw e;
}
}
//記錄出錯資訊,可改寫進入日誌檔案
private static void log(String str) {
System.out.println(str);
}
}
使用weblogic自帶的oracle驅動連結oracle8i伺服器。配置資料連結池
和資料來源以後,如何正確使用連線池,以達到效能上的最佳化?
我使用如下的類去獲取資料來源並且獲取連結:
結果發現每次去呼叫的時候都顯得速度非常慢
我測試後發現每次都去lookup了一下資料來源
這個非常浪費時間,不知道有什麼辦法可以不用每次去獲取
資料來源來獲取連結?
此外,如何把獲取的連結歸還給資料連線池?
如果我直接對Statement和Connection進行Close()操作的話
連結是被關閉了還是返回給連線池了?
請指點迷津。不勝感激。
(weblogic8.1 oracle8i jdk1.4.1 ie6.0 )
//////////////原始碼附下///////////////////////////
package com.test.lancer.util;
import java.sql.*;
import javax.sql.*;
import javax.naming.*;
import java.util.Vector;
import java.util.Properties;
public class DBConnectBean{
private static Context ctx = null; //上下文
private static DataSource ds = null; //資料來源
private DBConnectBean()
{
}
public static Connection getConnection() throws Exception {
if (ds == null) {
initDataSource();
}
return ds.getConnection();
}
//初始化資料來源,用於獲取連結
private static void initDataSource() throws Exception {
try {
if (ctx == null) {
initContext();
}
ds = (DataSource) ctx.lookup("lancer_pool");
}
catch (NamingException ex) {
log("there is something wrong when get datasource");
throw new Exception(ex.getMessage());
}
}
//初始化上下文,用於查詢資料來源
private static void initContext() throws Exception
{
String url = "t3://localhost:7001";
String user = null;
String password = null;
Properties properties = null;
try {
properties = new Properties();
properties.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
properties.put(Context.PROVIDER_URL, url);
if (user != null) {
properties.put(Context.SECURITY_PRINCIPAL, user);
properties.put(Context.SECURITY_CREDENTIALS,
password == null ? "" : password);
}
ctx = new InitialContext(properties);
}
catch (Exception e) {
log("Unable to connect to WebLogic server at " + url);
log("Please make sure that the server is running.");
throw e;
}
}
//記錄出錯資訊,可改寫進入日誌檔案
private static void log(String str) {
System.out.println(str);
}
}
相關文章
- weblogic多資料來源故障轉移問題Web
- weblogic配置JDBC資料來源WebJDBC
- weblogic GridLink資料來源配置Web
- Weblogic資料來源配置文件Web
- 請教phpword問題PHP
- sqlhelper整合dynamic多資料來源的分頁問題(非教學向)SQL
- 請教Beego Router 問題Go
- 請教一個問題,
- 如何向大牛請教問題?
- Proxy Authorization Required 問題請教UI
- 請教 TensorFlow 安裝問題
- sbt配置——資料來源問題解決
- 請教個問題執行 httprunner 遇到的問題HTTP
- SpringBoot資料訪問之Druid資料來源的使用Spring BootUI
- springboot+mybatisplus+druid資料來源:SQLException問題Spring BootMyBatisUISQLException
- 請教一個struct tag的問題Struct
- 請教一個演算法問題演算法
- weblogic服務建立資料來源連線測試更新mysql驅動包的問題及解決方法LHQJWebMySql
- Springboot通過AOP整合多資料來源,分析@Transaction切換資料來源不生效問題Spring Boot
- 請教一個go切片引用的問題Go
- 請教個 jmeter 讀取資料庫商品資料,並使用讀取資料的部分欄位作為傳參的問題(感謝)JMeter資料庫
- DataWorksV2.0新增資料來源典型問題場景
- 基於 protobuf 的 websockets 接收伺服器返回資料後,解碼問題請教Web伺服器
- 使用axios post 請求資料無法提交的問題iOS
- 解密JBoss和Weblogic資料來源連線字串和控制檯密碼解密Web字串密碼
- 有關theano配置問題想請教各位大佬
- 請教一個 python 包安裝的問題Python
- springboot 2 Hikari 多資料來源配置問題(dataSourceClassName or jdbcUrl is required)Spring BootJDBCUI
- weblogic控制檯訪問慢問題Web
- 請教一個切片遞迴賦值的問題遞迴賦值
- 後臺許可權設計問題,請教思路
- api 介面欄位規範的問題,請教大家API
- Springboot整合mybatis實現多資料來源所遇到的問題Spring BootMyBatis
- mybatis多資料來源踩坑,資料庫連線經常斷開問題MyBatis資料庫
- DataPipeline「自定義」資料來源,解決複雜請求邏輯外部資料獲取難題API
- MO_or掰泡饃式教學實現多資料來源
- 請教一下,UI 自動化選型問題UI
- 談談12個最常見的資料質量問題及其來源
- Web-請求資料+號丟失問題Web