【问题标题】:Update the database from submit option从提交选项更新数据库
【发布时间】:2014-05-07 09:24:30
【问题描述】:

我有一个 jsp 页面,其中有一个“提交”选项供输入。单击它时,我想更新一个名为 tbIndividual 的表的值。最好的方法是什么?

在 jsp 页面上我有这样的东西:

User Name : <%=rs.getString(2)%>
First Name : <%=rs.getString(4)%> 
Last Name : <%=rs.getString(5)%>
Email Id : <%=rs.getString(6)%>
Contact : <%=rs.getString(7)%>
<input type="submit" value="ADD"></input>

现在我想将该特定个人的状态值从“否”更新为“等待”状态。单击此提交按钮。

为这项任务制作新的 servlet 是一个不错的选择,还是在 jsp 中编写代码是一个更好的选择? 如果我需要制作一个新的 servlet,那么 jsp 页面上的代码是什么?请帮忙。

【问题讨论】:

  • nowait 的变化是否在数据库中?
  • @Santino'Sonny'Corleone 是的,他们在数据库中。
  • 在表单的隐藏字段中传递您的参数,如 rs.getString(2),并将它们发送到 servlet 并使用这些参数更新您的数据库..

标签: java jsp servlets


【解决方案1】:

如果您想通过这个项目学习 servlet,那么您应该创建一个单独的 servlet,您将在其中执行您的业务逻辑(例如在 Db 中添加元素),并且 jsp 应该远离业务逻辑,因为 jsp 的作用是渲染输出不产生输出。

如果这是一个用于生产目的的项目,那么你应该(IMO 你必须)选择一些网络框架。由于框架将减少您的工作量、头痛并提高生产力。

【讨论】:

    【解决方案2】:

    首先,在使用 Java 开发 Web 应用程序时,您需要了解一些事情。我有一些建议和意见

    1. 请不要使用Scriptlets。 Scriptlet 已被弃用,它们使您的代码变得笨拙并且难以维护。使用JSTL
    2. 您需要在您的html 中创建一个form,以便在单击submit 按钮时将一组变量推送到服务器。该表单将有一个action 属性,其中包含应发送请求的URL
    3. 创建一个Servlet 并使用action URL 映射并编写doPost 方法,该方法可以接收表单参数并执行业务逻辑,无论将状态从NO 更改为WAIT 或其他任何东西李>
    4. 请注意,您需要有Session 变量才能在来自同一客户端的请求之间存储数据。例如浏览器。

    为这项任务制作新的 servlet 是一个不错的选择,还是在 jsp 中编写代码更好?

    编写一个新的 servlet 是一个不错的选择,而不是在 jsp 页面中执行业务逻辑。 jsp 用于演示,仅用于查看。它们不应该用于执行业务逻辑

    如果我需要创建一个新的 servlet,那么 jsp 页面上的代码是什么?

    JSP 应该只具有所有必要的 html 元素和属性,如表单、动作属性等。将请求中的参数发布到动作 URL。请注意表单的方法属性。您应该使用 HTTP POST 方法将表单参数发布到服务器

    注意:最后,也不推荐编写 Servlet。相反,您应该选择Spring MVC、Struts 等网络框架。请通过link 了解@BaluC 回答的网络框架

    希望这可以澄清。

    【讨论】:

    • 只要您在描述最佳实践,手写 servlet 就是个坏主意。 Web 框架是一种更可靠、更简单的选择。
    • 由于OP问题与Servlets有关,所以我只是推荐了最好的写法。无论如何,最好先学习 servlet,然后再学习 web 框架。我将添加应该推荐的框架
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-10
    • 1970-01-01
    • 2015-06-27
    • 2018-06-08
    • 1970-01-01
    • 2021-11-19
    • 1970-01-01
    相关资源
    最近更新 更多