我已经看到了很多方法来排序一个工作正常的对象列表,如果你知道传入的键或至少传入的键数.在我的情况下问题我不知道用户是否会发送1或10个密钥.
目前我对每个键的数量都有一个巨大的switch语句,但显然它的扩展程度非常大.它只是把一堆'thenComparing'连在一起.
我在这里找到了一个示例,看起来有点帮助,但我不知道如何构建比较器流.
寻找链接或真正的任何信息将填补如何做到这一点的空白.
这一切都来自用户调用webservice,他们会称之为
https://host.com/path?sort=[{"attribute1": "ASC"}, {"attribute2": "DESC"}]
Run Code Online (Sandbox Code Playgroud) 我想在创建过程中向我的表添加一个唯一约束。我认为这样的事情会起作用,但似乎什么也没做。
<createTable tableName="MY_TABLE">
<column name="MY_TABLE_ID" type="SMALLINT" autoIncrement="true">
<constraints primaryKey="true" nullable="false"/>
</column>
<column name="TABLE_FIELD" type="SMALLINT">
<constraints nullable="false" uniqueConstraintName="TABLE_FIELD_ix1"/>
</column>
<column name="TABLE_FIELD_TWO" type="SMALLINT">
<constraints nullable="false" uniqueConstraintName="TABLE_FIELD_ix1"/>
</column>
</createTable>
Run Code Online (Sandbox Code Playgroud)
我知道我可以在创建表后使用 addUniqueConstraint 标记(并已成功使用它),但我想知道这是否可以避免。
基本上我想这样做,但在创建表部分
<addUniqueConstraint tableName="MY_TABLE"
columnNames="TABLE_FIELD, TABLE_FIELD_TWO"
constraintName="TABLE_FIELD_ix1"/>
Run Code Online (Sandbox Code Playgroud)