Java 从客户加载的数据库将数据制成表格的可配置顺序

Java 从客户加载的数据库将数据制成表格的可配置顺序,java,sql-server,spring-mvc,database-schema,tabular,Java,Sql Server,Spring Mvc,Database Schema,Tabular,我遇到了一个我很难回答的问题,并且找不到任何明确的指导 我是一名工程师,负责一个由许多不同客户使用的应用程序。每个客户对其数据都有不同的要求,每个客户都将数据加载到自己的特定数据库中供我们的应用程序使用(相同的表,只是不同的数据库实例) 作为参考,我们使用的技术有:Freemarker、SpringMVC、Java8、内部数据库层(类似于hibernate,但由我们很久以前构建)、MSSQLServer 示例 客户1将数据X、Y和Z加载到客户1数据库实例的表Foo中 客户2将数据Q、R和S加载到

我遇到了一个我很难回答的问题,并且找不到任何明确的指导

我是一名工程师,负责一个由许多不同客户使用的应用程序。每个客户对其数据都有不同的要求,每个客户都将数据加载到自己的特定数据库中供我们的应用程序使用(相同的表,只是不同的数据库实例)

作为参考,我们使用的技术有:Freemarker、SpringMVC、Java8、内部数据库层(类似于hibernate,但由我们很久以前构建)、MSSQLServer

示例

客户1将数据X、Y和Z加载到客户1数据库实例的表Foo中

客户2将数据Q、R和S加载到客户2数据库实例的表Foo中

这些数据以表格格式显示在HTML页面上,无论我们决定以何种顺序将其从数据库中取出,在本例中,让我们说是按字母顺序

客户1

X

Y

Z

客户2

Q

R

问题

客户1来找我们,要求我们更改其显示方式。他们希望它按Y、X和Z的顺序显示,而不是按字母顺序显示。但是我们不想改变Customer 2查看数据的方式,因为他们对数据的显示方式很满意,所以我们不想改变Java代码中的查询

建议的解决方案

在Foo表中添加一个sequence列,赋予客户定义数据显示顺序的权力,因为他们是首先加载数据的人

问题

这是最好的处理方法吗?有没有一种配置方法可以让我们做类似的事情,或者在MSSQL中做一些有帮助的事情

我觉得向表中添加一列来定义显示逻辑是解决此问题的一种糟糕的方法,但我无法找到替代方法

不幸的是,这一要求是不可协商的,所以告诉他们“强硬”是不可能的:)


感谢您的帮助、提示或澄清!这不是最简单的文本概念。

@OrderColumn+Hibernate多租户?我们有一个内部数据库层,已经使用多年了,很遗憾,Hibernate的任何东西都不能解决这个问题。我将在上面的技术列表中添加该澄清。