jsp 指定servive方法提示类型错误及 get参数判断是否 null值的 bug解决

正文

先上错误的jsp代码:

 <%
   	String searchContent = request.getParameter("search-content");

   	if(searchContent == null){
   		searchContent = "";
	}
   ArrayList<ToDoEntity> list = ToDoService.getList(searchContent);
 %>

其中 searchContent 变量需要显示到 input 输入框中去; ToDoService.getList 需要一个String的参数。

报错处理

  1. 代码报错 getList 参数类型不符,修改为如下代码:
 <%
   // 请求参数转换为 string,按道理说本来就是string参数
   String searchContent = String.valueOf(request.getParameter("search-content"));

   if(searchContent == null){
        searchContent = "";
    }
   ArrayList<ToDoEntity> list = ToDoService.getList(searchContent);
 %>

修改完毕后 总是不进入代码段 if(searchContent == null){

  1. 修改代码为下面
 <%
   String searchContent = String.valueOf(request.getParameter("search-content"));
    // 请求参数转换为字符串后,如果参数值为null,就会转换为 “null” 字符串,不可以通过 null == null的方式进行判断了
   if(searchContent == "null"){
       searchContent = "";
    }
    ArrayList<ToDoEntity> list = ToDoService.getList(searchContent);
 %>
posted @ 2021-11-15 15:45  夏秋初  阅读(151)  评论(0编辑  收藏  举报