java - 如何更改 EclipseLink 中的连接

标签 java connection-pooling eclipselink

我在我的应用程序中使用 EclipseLink。 EclipseLink 使用一些连接池。我使用 EclipseLink 内部之一。连接池在需要时创建连接,然后保留它以供将来使用。

创建每个连接时,我需要对其进行一次特定的 SQL 调用,但只需一次。我需要做的是授予用户在 oracle 上的特定角色。为了安全起见,该用户具有此角色,但被禁用,需要启用它。

我不想每次从池中获取连接时都执行此操作,而是仅在创建连接时执行此操作。

我该怎么做?

最佳答案

EclipseLink 无法开箱即用地执行此操作。您必须创建一个扩展 org.eclipse.persistence.sessions.server.ConnectionPool 的新类并重写方法 buildConnection()。创建新连接时将调用此方法。

关于java - 如何更改 EclipseLink 中的连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1439468/

相关文章:

java - 如果我们使用 Collections.synchronizedList(Collection c) 同步遍历 block 的目的是什么?

activemq - ActiveMQ的连接池

sql - 当连接关闭时,未提交的事务会发生什么?

java - EclipseLink 如何检测首次访问以进行延迟抓取?

java - 对理解程序输出感到困惑

java - 在 Java 中用对象调用静态方法会出什么问题?

Java - 内存管理/数据库连接问题

postgresql - JPQL EclipseLink 分页

hibernate - 在 JPA 条件中具有复合主键的 IN 子句

java - DefaultMessageListenerContainer 不会停止