当前位置: 首页 > 知识库问答 >
问题:

在Spring JSP Hibernate中传递2列的最佳方法

满才
2023-03-14

寻求关于从表中选择2列(ID,NAME)并将其传递给JSP页面的最佳方法的建议。JSP页面将显示其中一列(NAME)为href,单击后将返回另一列(ID)值到Spring MVC。

技术有:Spring MVC, Hibernate, JSP, JSTL

Employee表中有很多列以及与其他表具有@OneToOne和@OneToMany关系的列。

员工-ID、姓名、年龄、性别、身高、体重、地址(OneToMany)、电话(OneToMany)、收藏夹颜色(OneToOne)

方法1:选择雇员类的所有列。这种方法的问题是不必要的整个数据,包括地址,电话表将从数据库中选择。由于OneTo多关系,将返回多个ID和NAME,我必须在JSP中编写逻辑以避免显示重复的结果。

方法2:创建另一个只有两列(ID和class)的类(EmployeeTrim)。问题是维护两个类执行相同的功能。

方法3:仅从Employee类中选择2列。将它们作为映射传递给JSP。在JSP中显示ID为href的名称。我不确定如何实现JSP部分。

方法4:从Employee类中只选择2列,并将它们作为2个不同的模型传递给JSP。这很容易做到,但我相信如果JSP部分可以实现的话,方法3会更好。

请建议上面的哪种方法可以实施,或者还有其他方法可以实现吗?

共有1个答案

卢普松
2023-03-14

方法2是性能最好的解决方案。当您只对投影感兴趣时,不应选择实体。

使用SQL投影到DTO结果对象是一种方法。

 类似资料:
  • 问题内容: 我正在寻找一种显示3列内容的方法。我找到了一种显示环绕列的方法,但是我不希望在此页面上显示。我正在寻找一种说法 3次,并在彼此之间显示3列。我最好的例子是The Verge(http://www.theverge.com/)。做这个的最好方式是什么? 问题答案: 我建议您使用或CSS。 CSS是更灵活的首选。一个例子是: 使用float:left会使3列相互粘连,并从居中的div“内容

  • 假设我有一个大约有10个字段的应用程序类。在其他一些实用程序类中,我有下面两种方法之一。在这两种方法中,哪一种最好?是传递整个应用程序对象更好,还是只传递实用方法所需的对象更好?请解释原因。

  • 问题内容: 我想在程序执行其他操作时监听服务器,但是从服务器收到消息后,我想对其进行解释。 我知道线程,但是不能完全确定它是如何工作的。如果我有一个线程正在监听服务器,如何将数据传递到主线程进行解释?主线程将数据发送到服务器的最佳方法是什么?同步修饰符的用途是什么? 问题答案: 如果我有一个线程正在监听服务器,如何将数据传递到主线程进行解释?主线程将数据发送到服务器的最佳方法是什么? 我会为此使用

  • 我试图找出在Spark dataframe列中获得最大值的最佳方法。 考虑以下示例: 上面的每一个都给出了正确的答案,但在没有Spark分析工具的情况下,我无法判断哪一个是最好的。 就Spark运行时或资源使用而言,上述哪种方法最有效,或者是否有比上述方法更直接的方法,有任何来自直觉或经验主义的想法?

  • 问题内容: 我有以下格式的多维列表: 如何获得所有子列表的第三个值的最大值。用伪代码: 我知道这可以通过遍历列表并将第三个值提取到新列表中,然后简单地执行来完成,但是我想知道是否可以使用lambda或列表理解来完成? 问题答案: 只需与生成器表达式一起使用: 另外,不要命名您的变量,而是要隐藏类型。

  • 我在Laravel制作我的第一个应用程序,并试图让我的头周围的会话闪存消息。据我所知,在我的控制器操作中,我可以通过以下方式设置闪存消息 对于重定向到另一个路由的情况,或者 在我的主刀片模板中,我有: 正如您可能已经注意到的,我在我的应用程序中使用Bootstrap 3,并希望使用不同的消息类:,,等。 假设在我的控制器中,我知道我正在设置什么类型的消息,那么在视图中传递和显示它的最佳方式是什么?