Tomcat 6에서 실행되는 웹 응용 프로그램이 있는데 내장 DBCP 연결 풀링을 사용하도록 구성했는데 모두 잘 작동합니다. 그러나 문제가있는 격리 수준에서 실행되고 있습니다. 데이터 베이스. 커밋되지 않은 읽기에서 실행하고 싶습니다만, 커밋 된 읽기로 실행 중이며이를 설정하는 방법을 알지 못합니다. 여기 Tomcat 컨텍스트에서 JDBC 격리 수준을 설정할 수 있습니까?
내 문맥의 XML 파일입니다<?xml version="1.0" encoding="UTF-8"?>
<Context antiResourceLocking="false" privileged="true">
<Resource
name="jdbc/Connection"
auth="Container"
type="javax.sql.DataSource"
maxActive="100"
maxIdle="30"
maxWait="10000"
driverClassName="net.sourceforge.jtds.jdbc.Driver"
url="jdbc:jtds:sqlserver://...etc..."
/>
</Context>
그리고 이것은 데이터베이스 연결을 얻기 위해 사용되는 자바 방법입니다.
public Connection getDatabaseConnection() throws ServletException {
try {
InitialContext cxt = new InitialContext();
if (cxt == null) {
throw new ServletException("ServletContext unavailable.");
}
DataSource ds = (DataSource)cxt.lookup("java:/comp/env/jdbc/Connection");
if (ds == null) {
throw new ServletException("Data source not found!");
}
Connection conn = ds.getConnection();
return conn;
} etc...
내가 수동으로 conn.setIsolationLevel(Connection.TRANSACTION_READ_UNCOMMITTED)
으로 분리 레벨을 설정할 수 있습니다 실현 getDatabaseConnection()
에서 연결을 얻은 데하지만 그것으로 잘못 느낌 중 하나를 자바에 격리 수준을 하드 코딩, 또는에 대한 룩업을 수행하는 것을 포함 새로운 연결이 필요할 때마다 서블릿 컨텍스트.
XML 컨텍스트에서 이것을 어떻게 든 정의 할 수 있습니까, 아니면 잘 모르는 접근법이 있습니까?