2014-03-28 55 views
1

我有一个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> 

,现在我想更新的特定个人的状态从“NO”这个提交按钮的“等待”的state.On点击的价值。

正在为这个任务做一个新的servlet是一个不错的选择,或者在jsp中做一个更好的代码? 如果我需要创建一个新的servlet,那么jsp页面上的代码是什么?请帮助。

+0

更改'no'和'wait'在数据库中? –

+0

@ Santino'Sonny'Corleone是的,他们在数据库中。 – user3462609

+0

在表单中的隐藏字段中传递诸如'rs.getString(2)'的参数,并将它们发送到servlet并使用这些参数更新数据库。 –

回答

0

首先,在开发Java应用程序时需要了解某些事情。我有几个建议和输入

  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也建议。相反,你应该选择web框架,如Spring MVC,Struts等。请通过link了解有关web框架的回答@BaluC

希望澄清。

+0

只要您描述最佳实践,手写servlet是一个坏主意。 Web框架是一个更可靠和更简单的选择。 – chrylis

+0

由于OP问题与'Servlets'有关,我只是推荐了写它的最好方法。无论如何,先学习servlet然后再转向web frameworks会很好。我会加入这个框架应该被推荐 – Keerthivasan

0

如果您试图通过此项目学习servlet,那么您应该创建一个单独的servlet来执行业务逻辑(例如在Db中添加元素),并且jsp应远离业务逻辑,因为jsp的角色是使输出不会产生输出。

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