如何显示搜索结果?

时间:2015-01-14 09:25:36

标签: java mysql jsp servlets search

我有很多代码,请访问我的网站 - > http://code-programmersplace.rhcloud.com/

我已决定要添加搜索框。所以我为它创建了一个类:search.java。 现在我想显示一个搜索结果,但问题是我有很多代码。那么如何显示过滤结果?..

我应该从班级中显示html代码,还是只需转到新页面,例如search.jsp

我很困惑!请帮忙!

编辑:

我试图做到这一点:

package com.search;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.*;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class search extends HttpServlet {

    public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{

        String search_name=request.getParameter("search_name");

        PrintWriter out=response.getWriter();

        out.println("<!DOCTYPE>"
                + "<html>"
                + "<head>"
                + "<meta name='viewport' content='width=device-width, initial-scale=1.0'>"
                + "<link href='http://fonts.googleapis.com/css?family=Open+Sans:400,600,700|Pacifico' rel='stylesheet' type='text/css'>"
                + "<title>Search - "+search_name+"</title>"
                + "");
    }
}

我有很多头文件,字体等等。所以我应该只显示一个类...或者我应该为它创建另一个页面?

1 个答案:

答案 0 :(得分:0)

您应该使用MVC方法

简而言之,MVC代表:模型 - 视图 - 控制

所以,你的buissness逻辑进入你的servlet(控制器) 之后,发送

String search_name=request.getParameter("search_name");

进入你的会话对象,例如

req.getSession.setAttribute("Search", search_name);

创建一个新的JSP页面,对于这个例子,我们称之为temp.jsp

然后,调用请求调度程序:

req.getRequestDispatcher("jsp/temp.jsp").forward(req, resp);

在这个阶段,您现在正在使用JSP。

从您的JSP中获取搜索词:

<% String term = (String)session.getAttribute("Search"); %>

从这里,做你想做的任何事情。

如果要查询数据库等,则需要为其创建模型,然后从控制器调用它,然后将其转发到视图 - &gt; JSP。

实施MVC将使您的生活更轻松。

快乐的编码!