Java JSP、GET和POST参数
我被要求用JSP做一些小任务;由于对JSP非常陌生,我想知道是否有可能从HTTP请求中仅获取get或POST参数Java JSP、GET和POST参数,java,jsp,servlets,Java,Jsp,Servlets,我被要求用JSP做一些小任务;由于对JSP非常陌生,我想知道是否有可能从HTTP请求中仅获取get或POST参数 我见过(和alikes),但这些方法似乎同时获得get和POST参数。有没有一种方法可以只获取其中一个,而不用自己解析URL或请求体?如果没有,是否有任何优先规则可以覆盖哪些值(如POST参数总是覆盖GET参数)?通常,请求最好在servlet中处理。他们有doGet(请求,响应)和doPost(请求,响应)方法来区分两者 如果您确实坚持在JSP中执行此操作,则可以使用来区分方法。它
我见过(和alikes),但这些方法似乎同时获得get和POST参数。有没有一种方法可以只获取其中一个,而不用自己解析URL或请求体?如果没有,是否有任何优先规则可以覆盖哪些值(如POST参数总是覆盖GET参数)?通常,请求最好在servlet中处理。他们有
doGet(请求,响应)
和doPost(请求,响应)
方法来区分两者
如果您确实坚持在JSP中执行此操作,则可以使用来区分方法。它将返回GET
或POST
既然这是家庭作业,我想重点是学习如何使用servlet及其doX
方法,所以就这样做吧
更新:您可以获取查询字符串(),这只是get参数,并对其进行解析,但我不认为这是一种常见的好做法。在JSP中,您可以查看请求对象以确定它是哪种请求(get或POST),但只有一个参数映射。试试[Servlet+JSP]。在Servlet中,您可以选择doPost()或doGet()这实际上是一种代码味道。功能要求是什么?为什么不给“获取”和“发布”一个不同的名称呢?@BalusC:这实际上是一个安全问题。要求特定参数仅作为POST参数发送(或分别作为GET发送)可以提高最终用户的安全性。我不想盲目地接受任何类型的参数,因为在我之前创建web应用程序的几年中,我已经学会了如何避免这种情况。然后,确定请求方法或实现一个servlet,它使您能够仅在某个方法上执行代码。请看Bozho的答案。好的,请看我对这个答案的评论。是的,但请记住,您可以在帖子中包含URL参数,因此关于优先级和来源的问题仍然适用,即使是在servlet中(当然,这就是JSP的形式);不,不要仅仅因为这是家庭作业就暗示它背后的原因。本课程只是随机介绍新技术,并希望我们在不给出之前说明的情况下使用它。是的,正如T.J.Crowder所说,您仍然可以在POST请求中设置GET参数。在MVC环境中,建议通过充当控制器的servlet处理请求。JSP基本上是视图。