在 Java Web 应用程序中将 DataSource 资源存储在哪里?

发布于 2024-09-01 03:47:59 字数 226 浏览 1 评论 0原文

这是一个菜鸟问题。 最佳位置是什么

@Resource
private DataSource ds;

放置 Web 应用程序的 ?我是否将其放在 servlet、上下文侦听器中,或者也许有更好的地方? 另外,我是否应该在 doGet()/doPost() 中创建一个新的 Connection 对象,还是应该在其他地方创建它? 对于这样的事情,最佳实践是什么? 谢谢你!

This is a rookie question. What's the best place to put

@Resource
private DataSource ds;

in a web application? Do I put it in a servlet, context listener or maybe there's a better place for it?
Also, do I create a new Connection object in my doGet()/doPost() or should I do it somewhere else?
What's the best practice for stuff like this?
Thank you!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

单挑你×的.吻 2024-09-08 03:47:59

在 Web 应用程序中放置 @Resource DataSource 的最佳位置是什么?我是否将其放在 servlet、上下文侦听器中,或者也许有更好的地方?

在您想要调用 DataSource#getConnection() 的同一类中。

此外,我是否在 doGet()/doPost() 中创建一个新的 Connection 对象,还是应该在其他地方创建它?

您通常在 DAO 类的方法中执行此操作,在该方法中您希望与数据库进行交互,在 try 块中关闭 Connection (和 finally 块中的 StatementResultSet(如果有)。

在更抽象和灵活的设置中,您还可以在 DAO 管理器类或事务管理器类中执行 DataSource#getConnection()

What's the best place to put @Resource DataSource in a web application? Do I put it in a servlet, context listener or maybe there's a better place for it?

In the very same class where you'd like to call DataSource#getConnection().

Also, do I create a new Connection object in my doGet()/doPost() or should I do it somewhere else?

You usually do that in a method of a DAO class where you'd like to interact with the DB, in a try block where you close the Connection (and Statement and ResultSet, if any) in the finally block.

In a more abstracted and flexible setup, you could also do DataSource#getConnection() in a DAO manager class or a transaction manager class.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文