【发布时间】:2016-02-04 08:10:56
【问题描述】:
只是一个新手问题,我目前正在开发一个系统,它有一个需要用户填写的表格,
我计划使用使用休眠从数据库中提取的数据填充几个下拉列表。
问题是,我这样做是否明智?假设我有 3-4 个下拉菜单,每个下拉菜单都有来自数据库的 50-100 多个选项。它会遇到性能问题吗?谢谢。
【问题讨论】:
标签: java sql hibernate jsp jpa
只是一个新手问题,我目前正在开发一个系统,它有一个需要用户填写的表格,
我计划使用使用休眠从数据库中提取的数据填充几个下拉列表。
问题是,我这样做是否明智?假设我有 3-4 个下拉菜单,每个下拉菜单都有来自数据库的 50-100 多个选项。它会遇到性能问题吗?谢谢。
【问题讨论】:
标签: java sql hibernate jsp jpa
您最好允许用户在下拉菜单中搜索并在他们输入一定的最少字符数(例如 3 或 4 个)后过滤结果。
有了这么多结果,您可能无论如何都需要过滤,这样做意味着您不会一次加载所有数据,而只是加载需要的数据。
【讨论】:
数据驱动的性能问题并不新鲜,而且大多数时候它与从数据库中查询的数据过多有关。 有大量关于“优化”的好资源。
以下链接概览: 如果您正在使用 ORM、Hibernate 等。在性能方面,有一些基础知识可以让您保持开放:
不要进行显式刷新
不要在映射中禁用延迟加载
不要使用 Session.clear()
休眠性能
Hibernate 基本上承诺提供性能的方式是通过缓存和更改每次获取的数据量。这适用于您使用 Hibernate 的大多数情况。如果没有,您可能只需要执行一些好的旧 SQL。
http://blog.f12.no/wp/2010/02/16/hibernate-performance-and-optimization/
去年我遇到了一个特殊的性能问题,对我有用的是使用 AJAX 将 UI 处理/加载转移到客户端。
【讨论】: