[英]Spring Boot Gradle Plugin 2.x how to use custom launcher layout factory
[英]Spring Boot 2.x Connection Factory
我有下面的類在Spring Boot 1.5.x中運行良好
public ConnectionFactory connectionFactory() {
org.springframework.data.jdbc.config.oracle.AqJmsFactoryBeanFactory f=new AqJmsFactoryBeanFactory();
f.setDataSource(dataSource);
f.setCoordinateWithDataSourceTransactions(true);
f.setNativeJdbcExtractor(new org.springframework.jdbc.support.nativejdbc.Jdbc4NativeJdbcExtractor());
f.setConnectionFactoryType(ConnectionFactoryType.QUEUE_CONNECTION);
try {
return f.getObject();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
我現在已升級到不存在NativeJdbcExtractor的2.0.4版本。 有人可以幫我如何重新配置上面的內容以獲得connectionFactory。
整個nativejdbc層次結構已不存在,因此不再可用,因此不要升級或找出不需要它的方法(jdbc 4可以使用unwrap來獲取實際的基礎連接)。
為了獲得實際的基礎連接,在Connection上有一個unwrap方法。 因此,與connection.unwrap(OracleConnection.class)
類似的東西應該可以為您提供實際的基礎連接。 但是,這可能需要對aq-jms-connection-factory進行額外的升級,我不確定它是否支持Spring 5.0。
我已經使用過類似的方法,可以為您提供幫助:
public OracleConnection getOracleConnection(Connection connection) throws SQLException {
OracleConnection oconn = null;
try {
if (connection.isWrapperFor(oracle.jdbc.OracleConnection.class)) {
oconn = (OracleConnection) connection.unwrap(oracle.jdbc.OracleConnection.class)._getPC();
}
} catch (SQLException e) {
throw e;
}
return oconn;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.