/filesearch/SearchLocalFileWebProj/src/com/searchlocal/servlet/DoSearchServlet.java

http://filesearch.googlecode.com/ · Java · 111 lines · 66 code · 17 blank · 28 comment · 3 complexity · d4e9a62cf5ed9952d81e4db74690d09f MD5 · raw file

  1. package com.web.searchlocal.servlet;
  2. import java.io.IOException;
  3. import java.util.List;
  4. import javax.servlet.RequestDispatcher;
  5. import javax.servlet.ServletContext;
  6. import javax.servlet.ServletException;
  7. import javax.servlet.http.HttpServlet;
  8. import javax.servlet.http.HttpServletRequest;
  9. import javax.servlet.http.HttpServletResponse;
  10. import javax.servlet.http.HttpSession;
  11. import com.web.searchlocal.constants.Constant;
  12. import com.web.searchlocal.entity.PageEntity;
  13. import com.web.searchlocal.exception.LogicException;
  14. import com.web.searchlocal.param.SearchParam;
  15. import com.web.searchlocal.service.SearchService;
  16. import com.web.searchlocal.service.impl.SearchServiceImpl;
  17. import com.web.searchlocal.util.PagerHelper;
  18. import com.web.searchlocal.util.SessionUtil;
  19. import com.web.searchlocal.util.StringUtil;
  20. /**
  21. * ??????
  22. *
  23. * <p>Title: ??????</p>
  24. * <p>Description: </p>
  25. * <p>site: www.slfile.net</p>
  26. * @author changsong:qianjinfu@gmail.com
  27. * @version 1.0
  28. */
  29. public class DoSearchServlet extends HttpServlet {
  30. /** serialVersionUID */
  31. private static final long serialVersionUID = 1L;
  32. /**
  33. * ???
  34. */
  35. public DoSearchServlet() {
  36. }
  37. /**
  38. * ???????
  39. *
  40. * @param request
  41. * @param response
  42. * @throws ServletException
  43. * @throws IOException
  44. */
  45. protected void service(HttpServletRequest request,
  46. HttpServletResponse response) throws ServletException, IOException {
  47. // query
  48. String query = request.getParameter("query");
  49. HttpSession session = SessionUtil.getNewSession(request);
  50. String searchtype = (String) session.getAttribute("searchtype");
  51. // ????
  52. if(StringUtil.isNullString(searchtype)){
  53. searchtype = Constant.ALL;
  54. }
  55. // ????
  56. String id = (String) request.getParameter("id");
  57. if (null == id) {
  58. id = (String) session.getAttribute("id");
  59. }
  60. session.removeAttribute("pageEntity");
  61. // ????
  62. SearchParam param = new SearchParam();
  63. // ???
  64. param.setQuery(query);
  65. // ???
  66. param.setId(id);
  67. param.setSearchtype(searchtype);
  68. // ????????
  69. SearchService searchService = new SearchServiceImpl();
  70. int totalRows = 0;
  71. try {
  72. totalRows = searchService.getCount(param);
  73. } catch (LogicException e1) {
  74. e1.printStackTrace();
  75. }
  76. PageEntity pageEntity = PagerHelper.getPager(null, null, null, totalRows);
  77. param.setStartRow(pageEntity.getStartRow());
  78. param.setEndRow(pageEntity.getEndRow());
  79. List beanList = null;
  80. try {
  81. beanList = searchService.dosearcher(param);
  82. } catch (LogicException e) {
  83. session.setAttribute(Constant.web_error_noresult, e.getMessage());
  84. }
  85. session.setAttribute("pageEntity", pageEntity);
  86. session.setAttribute("query", query);
  87. session.setAttribute("id", id);
  88. session.setAttribute("beanList", beanList);
  89. request.setAttribute("cpageNo", "1");
  90. ServletContext sc = getServletContext();
  91. RequestDispatcher rd = sc.getRequestDispatcher(Constant.WEB_RESULT_JSP);
  92. rd.forward(request, response);
  93. }
  94. }