这是一个很好的做法&;选择:从Javaservlet向jsp发送哈希映射对象或JSON?

这是一个很好的做法&;选择:从Javaservlet向jsp发送哈希映射对象或JSON?,java,mongodb,jsp,servlets,Java,Mongodb,Jsp,Servlets,我正在用MongoDB开发一个java web应用程序。在这个应用程序中,我从Javaservlet查询Monogo数据库。我只是不知道是将查询结果转换为Json还是HashMap并将其发送到JSP,还是有其他方法来实现这一点,在JSP文件中,我可以获取HashMap数据并将其发送到同一文件中的javascript。(我需要使用javascript中的数据) 我的问题是: 将包含大量数据(目前大约在300000到700000条记录范围内)的HashMap从servlet发送到JSP是一种好的做法

我正在用MongoDB开发一个java web应用程序。在这个应用程序中,我从Javaservlet查询Monogo数据库。我只是不知道是将查询结果转换为Json还是HashMap并将其发送到JSP,还是有其他方法来实现这一点,在JSP文件中,我可以获取HashMap数据并将其发送到同一文件中的javascript。(我需要使用javascript中的数据)

我的问题是:

  • 将包含大量数据(目前大约在300000到700000条记录范围内)的HashMap从servlet发送到JSP是一种好的做法

  • 或者我应该使用相同的数据量在servlet中创建JSON并将其发送到JSP文件,然后在JSP中解析JSON并以某种方式访问javascript代码中解析的JSON

  • 我可以想到的另一种方法是直接将JSON从servlet发送到javascript,并用javascript本身解析JSON

  • 在安全性、性能和可靠性方面,哪一个是好的解决方案


    我对整个web应用程序都是新手,但我确实需要帮助来消除心中的疑虑。另外,如果你们能为我的web应用程序提供一些优化代码的链接/提示,那将是一个巨大的帮助。

    一定要继续使用HashMap

    从HashMap到JSON再到JSON的串行化非常昂贵,而且只有在“跨线路”将数据传输到浏览器或数据库时才应该使用

    传递HashMap时,您正在共享一个简单指针,该指针将HashMap从servlet引用到JSP页面


    这两个选项在安全性方面没有任何区别,但在性能方面,有几个数量级的区别。

    如果我将JSON从servlet发送到jsp的Javascript,完全避免HashMap,那么如果您将其发送到Javascript,这将是一个很好的选项,而Javascript实际上是在客户端浏览器上执行的。在这种情况下,您需要将其作为JSON发送。“在客户端浏览器上解析JSON”是否会影响性能it的速度较慢,但如果您希望发送javascript使用的数据,这是必要的。JavaScript在客户端的浏览器上执行,因此您可以通过网络发送它。