将MongoDB结果集数据从servlet传递到JSP

时间:2017-10-02 15:39:31

标签: java mongodb jsp servlets mongodb-query

我的servlet下面从jsp获取参数“name”,并在MongoDB中执行搜索以获取基于该名称的记录。

protected void doPost(HttpServletRequest request,HttpServletResponse response)抛出ServletException,IOException {

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

// Create Mongo connection to the DB
MongoClient mongoClient = new MongoClient( "localhost", 27017);

// Select the DB
MongoDatabase database = mongoClient.getDatabase("myDatabase");

// Select the collection
MongoCollection<Document> collection = database.getCollection("myCollection");


 Block<Document> printBlock = new Block<Document>() {
    @Override
    public void apply(final Document document) {
        System.out.println(document.toJson());
    }
};
 collection.find(eq("name", name)).forEach(printBlock);
 }

我只想要那些与“name”匹配的记录。我成功到达这里。接下来我如何将它们从servlet传递给jsp以及它们是如何在JSP中接收的?

以下是我的简单JSP页面,它只取用户的“名称”。我需要以表格形式将从servlet传递的结果打印到此JSP。

提前致谢

1 个答案:

答案 0 :(得分:1)

看起来你想“从头开始”实现MVC2模式(即你不使用像Struts或Spring MVC这样的MVC框架)。您需要做三件事:

  1. 使用request.setAttribute(collection)
  2. 将对象附加到请求
  3. 将控制转移到JSP(使用requestDispatcher
  4. 在JSP中,使用表达式语言来检索集合