Mybatis中的DataSource配置

2021-09-08 07:32:10 字數 1310 閱讀 5916

datasource 的型別可以配置成其內建型別之一,如 unpooled,pooled,jndi。

1、如果將型別設定成 unpooled,mybatis 會為每乙個資料庫操作建立乙個新的連線,並關閉它。該方式

適用於只有小規模數量併發使用者的簡單應用程式上。

2、 如果將屬性設定成 pooled,mybatis 會建立乙個資料庫連線池,連線池中的乙個連線將會被用作資料

庫操作。一旦資料庫操作完成,mybatis 會將此連線返回給連線池。在開發或測試環境中,經常使用此

種方式。

3、如果將型別設定成 jndi,mybatis 從在應用伺服器向配置好的 jndi 資料來源 datasource 獲取資料庫

連線。在生產環境中,優先考慮這種方式。

資料來源(datasource)

datasource 元素使用標準的 jdbc 資料來源介面來配置 jdbc 連線物件的資源。

有三種內建的資料來源型別(也就是 type=」[unpooled|pooled|jndi]」):

unpooled– 這個資料來源的實現只是每次被請求時開啟和關閉連線。雖然有點慢,但對於在資料庫連線可用性方面沒有太高要求的簡單應用程式來說,是乙個很好的選擇。 不同的資料庫在效能方面的表現也是不一樣的,對於某些資料庫來說,使用連線池並不重要,這個配置就很適合這種情形。unpooled 型別的資料來源僅僅需要配置以下 5 種屬性:

作為可選項,你也可以傳遞屬性給資料庫驅動。要這樣做,屬性的字首為「driver.」,例如:

這將通過 drivermanager.getconnection(url,driverproperties) 方法傳遞值為 utf8 的 encoding 屬性給資料庫驅動。

pooled– 這種資料來源的實現利用「池」的概念將 jdbc 連線物件組織起來,避免了建立新的連線例項時所必需的初始化和認證時間。 這是一種使得併發 web 應用快速響應請求的流行處理方式。

jndi– 這個資料來源的實現是為了能在如 ejb 或應用伺服器這類容器中使用,容器可以集中或在外部配置資料來源,然後放置乙個 jndi 上下文的引用。這種資料來源配置只需要兩個屬性:

和其他資料來源配置類似,可以通過新增字首「env.」直接把屬性傳遞給初始上下文。比如:

這就會在初始上下文(initialcontext)例項化時往它的構造方法傳遞值為 utf8 的 encoding 屬性。

posted @

2018-10-14 19:18

韋邦槓 閱讀(

...)

編輯收藏

mybatis中的說明

1.prefix 在trim標籤內sql語句加上字首。suffix 在trim標籤內sql語句加上字尾。suffixoverrides 指定去除多餘的字尾內容,如 suffixoverrides 去除trim標籤內sql語句多餘的字尾 prefixoverrides 指定去除多餘的字首內容 inse...

MyBatis中的快取

mybatis作為持久化框架,提供了非常強大的快取特性。一般在提到mybatis快取的時候,指的都是二級快取。一級快取,即本地快取,缺省會啟用並且不能控制,可能會導致一些難以發現的錯誤。一 一級快取 public void testl1cache finally system.out.println...

Mybatis中的statementType使用

select base column list from finance user new acct where 1 1 andid between and 如果使用了 statementtype statement 的 就不能用了 需要換成 偷笑 update withholding bank c...