package com.imooc;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.sf.json.JSONArray;
public class SearchServlet extends HttpServlet {
static List<String> datas=new ArrayList<String>();
static{
//这些是模拟数据
datas.add("ajax");
datas.add("ajax post");
datas.add("becky");
datas.add("bill");
datas.add("james");
datas.add("jerry");
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
//System.out.println("123");
//首先获得客户端发送来的数据keyword
String keyword=request.getParameter("keyword");
//获得关键字之后进行处理,得到关联数据
List<String> listData=getData(keyword);
//返回JSON格式
//System.out.println(JSONArray.fromObject(listData)); //["ajax","ajax post","james"]
response.getWriter().write(JSONArray.fromObject(listData).toString());
}
//获得关联数据的方法
public List<String> getData(String keyword){
List<String> list=new ArrayList<String>();
for(String data:datas){
if(data.contains(keyword)){
list.add(data);
}
}
return list;
}
}
点击查看更多内容
4人点赞
8 评论
共同学习,写下你的评论
qq_最弱的无败_03319877
我还有一个问题if(flag==true){ System.out.println("图书没找到"); } break;这里的break不应该写吧,这样无论图书找没找到都跳出了while,那你while循环不是白写了?
qq_最弱的无败_03319877
我道歉,while和if那里是我学得不够深,对不起!
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
这里也是if(0<=bookNum&&bookNum<books.length){ system.out.println("book:"+books[booknum]);="" flag="false;" }else{="" system.out.println("图书不存在!");="" }="" break;应该把break放在if语句里面,flag="false";的后面吧