gpt4 book ai didi

java - 如何将 NewProxyConnection 类型转换为 AS400JDBCConnection

转载 作者:行者123 更新时间:2023-12-02 08:11:39 25 4
gpt4 key购买 nike

我是 Spring 新手。我在 Spring 中使用 ComboPooledDataSource 进行连接池。我正在使用 AS400 进行连接。我的问题是,当我使用此连接并尝试对其进行类型转换时AS400JDBCConnection as400Conn = (AS400JDBCConnection)conn;它给出了 ClassCastCastException,因为 ComboPooledDataSource 返回的连接对象是 NewProxyConnection 类型,我如何将其类型转换为 AS400JDBCConnection。

最佳答案

您不应该转换为 AS400JDBCConnection。所有相关方法都应可通过 Connection 接口(interface)使用。

您正在处理的不是实际的连接对象(AS400JDBCConnection),而是包装在它周围并管理对原始连接对象的访问的代理对象。 Understanding AOP Proxies 中解释了不同的代理机制。

更新回应评论:访问方法AS400JDBCConnection.getServerJobIdentifier()是需要的。然后您必须切换到 CGLib 代理(解释 here )。

关于java - 如何将 NewProxyConnection 类型转换为 AS400JDBCConnection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7305317/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com