Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何为URLStreamHandler提供上下文?_Java_Url - Fatal编程技术网

Java 如何为URLStreamHandler提供上下文?

Java 如何为URLStreamHandler提供上下文?,java,url,Java,Url,我们的应用程序定义了一个URL方案,其解析是上下文敏感的:URL的内容取决于正在进行的数据库事务的状态。因此,要检索内容,例如,我无法打开新的数据库连接。但是,我看不到从URLStreamHandler实例获取外部上下文的方法 文档也有点误导:我在站点上检查过,它指出(在实现URLStreamHandlerFactory部分中)URL类将接受URLStreamHandlerFactory实例,但1.5 JDK表明URL在构建URL时只接受URLStreamHandler 所以,我的问题是,使用上

我们的应用程序定义了一个URL方案,其解析是上下文敏感的:URL的内容取决于正在进行的数据库事务的状态。因此,要检索内容,例如,我无法打开新的数据库连接。但是,我看不到从
URLStreamHandler
实例获取外部上下文的方法

文档也有点误导:我在站点上检查过,它指出(在实现URLStreamHandlerFactory部分中)URL类将接受
URLStreamHandlerFactory
实例,但1.5 JDK表明URL在构建URL时只接受
URLStreamHandler

所以,我的问题是,使用上下文相关URL解析的最佳方法是什么?有没有比在调用之前在我的
URLStreamHandler
实现中设置
ThreadLocal
类变量更好的方法

这是一种静态方法,并且:

设置应用程序的 URLStreamHandlerFactory。这种方法 在给定时间内最多只能调用一次 Java虚拟机


事实证明,至少就我们的目的而言,线程本地上下文对象工作得最好