繁体   English   中英

如何从外部Java应用程序连接到glassfish中配置的数据库?

[英]How to connect to a database configured in glassfish from an external java application?

标题几乎说明了一切,但这是一些背景。

我们有一个在glassfish中配置的数据库,可以通过在glassfish上部署的网站访问该数据库,我们也可以从外部Java应用程序访问该数据库,我想到这可能效率不高,因为我们从外部应用程序打开了到数据库的许多连接。 所以我想知道我们是否可以通过glassfish的连接池访问他的数据库?

提前致谢。

码头

仅当您的外部应用程序与glassfish在同一VM中运行时,这才有可能。 “外部”一词说:不,不可能。

请注意,数据库旨在处理大量连接。 这就是它们存在的主要原因之一:允许多个程序同时处理相同的数据。

如果您的程序未在Glassfish上运行,我认为您无法访问该池。 与数据库的一些连接应该没有太大关系,至少如果不是经常创建和销毁它们的话。 如果是这种情况,您也可以在外部应用程序中建立一个池。

您必须尝试一下。

http://javahowto.blogspot.com/2006/08/access-glassfish-datasource-remotely.html建议可以从独立客户端通过JNDI查找连接池。 实际的客户端代码示例在http://javahowto.blogspot.com/2006/08/access-jboss-datasource-remotely-from.html#client中给出

好吧,我正在回答自己的问题,这不是一个很好的答案,但确实可以满足我的问题的要求。

您可以做的是从外部Java应用程序连接到EJB,如果Bean提供对数据库的访问,那么通过使用它,您将利用glassfish提供的连接池。

您可以找到有关如何执行此操作的信息

此处-https://glassfish.dev.java.net/javaee5/ejb/EJB_FAQ.html

在效率方面,我不确定这是否是一个好主意,因为它可能会对您的Web应用程序造成过多的负担,在我最初的想法中,我正在考虑完全绕过Webapp并直接与glassfish通信,对此的任何评论都是赞赏。

另一个选择是将Web服务添加到Glassfish数据访问对象。

然后,您可以使用SOAP或REST调用访问数据库。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM