【问题标题】:Should I use Servlet for Database access and Display results in JSP using JSTL?我应该使用 Servlet 进行数据库访问并使用 JSTL 在 JSP 中显示结果吗?
【发布时间】:2015-02-12 01:17:29
【问题描述】:

我学习 Java 已经超过 6 个月了。我正在开发一个网络应用程序并通过构建它来学习。我正在使用 Glassfish 服务器和 MySql。没有框架。使用 Servlet、JSP 和 EJB。

现在我正在通过 JSP 页面查询数据库并显示结果。这是最好的方法吗?还是应该使用 servlet 查询数据库并在 JSP 中显示结果?

我想只显示结果集对象的一部分,如果用户想看到它,则显示剩余的部分。那么我可以单独使用jsp来实现吗?

【问题讨论】:

    标签: database jsp jakarta-ee servlets design-patterns


    【解决方案1】:

    您应该避免在 JSP 中编写业务逻辑代码。将您的应用程序分成多个层,看看MVC design pattern

    • 模型:这些是您的数据库事务和业务逻辑发生的普通 POJO 类。

    • 控制器:这是您的 servlet 所在的位置。这些类接受用户请求,调用适当的模型类并向视图发送响应。

    • 查看:这是您的 JSP,向用户显示数据。避免在 Jsps 中使用 Scriptlet。使用JSTLEL

    快速查看this 示例 MVC 应用程序,并在 MVC 上进行自己的搜索。希望它可以帮助您入门。

    【讨论】:

      【解决方案2】:

      通过 JSP 页面查询数据库并不是最好的方法。而且因为你没有使用任何框架绝对不是最好的学习方式。在学习时,您需要尝试尽可能多的框架,以找出可以使用或不使用的框架。您还需要学习构建 Java EE 应用程序的模式。

      我应该使用servlet来查询数据库并在jsp中显示结果吗?

      这种方法要好得多,但还不够,因为数据库代码与 servlet 代码相耦合。

      我想只显示结果集对象的一部分,如果用户想要查看它,则显示剩余部分。那么我可以单独使用jsp来实现吗?

      您要显示的内容应该在 servlet 中编码。

      【讨论】:

      • "但还不够,因为数据库代码与 servlet 代码耦合。"那我该怎么办呢?
      • 我该怎么办? 不知道你在做什么?开始做某事,然后如果你有一个具体的问题回来并发布一个问题。如果你运气好,那么有人会发布答案。
      • 不,我在问是否有任何其他方法可以查询数据库并显示它。除了在 servlet 和 jsp 中做吗?
      • 您第一次要求使用 servlet 查询数据库,因为您是在 JSP 中进行的。不知道你问什么,可能是JPA?
      【解决方案3】:

      我建议使用您的 Servlet 仅处理数据库连接,并可能对连接的使用进行一些记录。该逻辑最好单独在 JSP 中实现,因为您可以更好地维护它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-05-06
        • 1970-01-01
        • 2016-01-29
        • 2015-05-20
        • 2013-01-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多