当前位置 : 主页 > 编程语言 > java >

访问查询参数的方法JSP,JSTL,Javascript

来源:互联网 收集:自由互联 发布时间:2021-06-25
我一直使用以下3种方式来访问URL中的查询参数。 JSP String success = request.getParameter("success");if(success!=null) {//do something} JSTL c:if test="${not empty param.success}"//do something/c:if JavaScript function getQ
我一直使用以下3种方式来访问URL中的查询参数。

JSP

String success = request.getParameter("success");
if(success!=null) {
//do something
}

JSTL

<c:if test="${not empty param.success}">
//do something
</c:if>

JavaScript

function getQueryParameter ( parameterName ) {
  var queryString = window.top.location.search.substring(1);
  var parameterName = parameterName + "=";
  if ( queryString.length > 0 ) {
    begin = queryString.indexOf ( parameterName );
    if ( begin != -1 ) {
      begin += parameterName.length;
      end = queryString.indexOf ( "&" , begin );
        if ( end == -1 ) {
        end = queryString.length
      }
      return unescape ( queryString.substring ( begin, end ) );
    }
  }
  return "null";
}

所有3这些为我工作,但我想知道,如果有任何这些有任何问题,哪一个是首选?

在第一种方法中,你使用Scriptlets访问请求参数,肯定是可行的,但是你必须另外检查null。因此,总是避免Scriptlet。

在使用JSTL的第二种方法中,它比第一种方法更好,相对于scriptlet的精简版本为您提供更多的灵活性和鲁棒性。所以,这是我们永远鼓励。这是三者的最佳方法。

在最后一种方法中,使用Javascript,虽然另一种方法;但从未鼓励。它涉及额外的谨慎处理params仔细,你有更好的选择,做同样的工作。不是一个理想的任务,JavaScript处理!

网友评论