我們正在使用Java/Spring/Ibatis/MySql。有沒有辦法用這些技術來管理應用程序級別的只讀連接。我正在尋找在具有隻讀MySql用戶的基礎上增加一層額外的安全措施。如果BasicDataSource或SqlMapClientTemplate爲只讀連接提供配置將會很好。否則,看起來我只剩下MySql讀取用戶,並且只使用讀取方法強制實現接口。如何管理應用程序級別的只讀數據庫連接
感謝
我們正在使用Java/Spring/Ibatis/MySql。有沒有辦法用這些技術來管理應用程序級別的只讀連接。我正在尋找在具有隻讀MySql用戶的基礎上增加一層額外的安全措施。如果BasicDataSource或SqlMapClientTemplate爲只讀連接提供配置將會很好。否則,看起來我只剩下MySql讀取用戶,並且只使用讀取方法強制實現接口。如何管理應用程序級別的只讀數據庫連接
感謝
例如Connection#CreateStatement可以接受參數
statement = connection.createStatement
(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
試圖讓底層java.sql.Connection
對象和setReadOnly(true)
。
BasicDataSource有一個名爲defaultReadOnly屬性的屬性將其設置爲只讀。你可以使用它。
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="org.postgresql.Driver"/>
<property name="url" value="jdbc:postgresql://${db.host}:5432/${db.name}"/>
<property name="username" value="${db.username}"/>
<property name="password" value="${db.password}"/>
<property name="defaultReadOnly" value="true"/>
</bean>
http://commons.apache.org/dbcp/apidocs/org/apache/commons/dbcp/BasicDataSource.html