草庐IT

唯一性

全部标签

java - 查找数据库表的唯一约束

我正在尝试使用Java查找表的唯一约束(在Oracle数据库上,但这应该没有什么区别)。感谢DatabaseMetaData的getPrimaryKeys(....),我找到了一种发现表主键的方法;但是我无法找到表的唯一约束,并且Internet无法帮助我,因此我在这里结束问我的问题:)是否有一种干净的方法来查找表的唯一约束(或者,更确切地说,对于一个表必须是唯一的列的名称......好吧,你明白了,嘿嘿)?最好的问候,尼尔斯 最佳答案 可以查询数据字典:SQL>SELECTcc.*2FROMall_constraintsc3JOI

java - 在列表中查找重复的字符串并使它们唯一

我有一个包含重复字符串值的ArrayList,我想通过附加一个计数来使重复值唯一。publicstaticvoidmain(String[]args){Listlist=newArrayList();list.add("a");list.add("b");list.add("c");list.add("d");list.add("b");list.add("c");list.add("a");list.add("a");list.add("a");HashSetset=newHashSet();ListduplicateList=newArrayList();for(Stringite

java - 在小于 O(n) 的时间内从排序数组中查找唯一数字

我有一个面试,有以下问题:FinduniquenumbersfromsortedarrayinlessthanO(n)time.Ex:11155591010Output:15910我给出了解决方案,但那是O(n)。编辑:排序后的数组大小约为200亿,唯一编号约为1000。 最佳答案 分而治之:查看已排序序列的第一个和最后一个元素(初始序列为data[0]..data[data.length-1])。如果两者相等,则序列中唯一的元素是第一个(无论序列有多长)。如果不同,则划分序列并对每个子序列重复。在平均情况下在O(log(n))中求

java - 从 0-9 获得四个唯一随机数的最佳方法是什么?

这个问题在这里已经有了答案:GeneratingUniqueRandomNumbersinJava(21个回答)GenerateRandomNumbersinArray[duplicate](1个回答)关闭5年前。我想生成0到9范围内的四个随机数。使用JavaRandom类很容易生成四个随机数。Randomrandom=newRandom();intnumbers[]=newint[4];for(inti=0;i有了这个,我可以很容易地得到一个包含四个数字的数组,比如9369、4702等。在这种情况下,一个数字可能会以四个数字重复,我不希望这样的数字重复。在这里,我想让上面数组中的所有

java - 父类中@Id 和基类中唯一序列的正确 JPA 映射是什么

我有一个类层次结构:abstractDomainObject{...@Id@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="SEQ")@SequenceGenerator(name="SEQ",sequenceName="SEQ_DB_NAME")@Column(name="id",updatable=false,nullable=false)privateLongid;...}BaseClassextendsDomainObject{...//Fillinblankherewherethisclass's@Idwi

java - 使用 Spring KeyGenerator 生成唯一的缓存 key 不起作用

当我的缓存键在Spring中使用@Cacheable注释发生冲突时,我遇到了问题。例如,使用以下两种方法:@Cacheable("doOneThing")publicvoiddoOneThing(Stringname){//dosomethingwithname}@Cacheable("doAnotherThing")publicvoiddoAnotherThing(Stringname){//dosomeotherthingwithname}这是我的缓存配置,我在其中添加了一个keyGenerator和一个cacheManagerbean:@Configuration@EnableC

java - 为什么 final 是 Java 中局部变量的唯一修饰符?

classTest{publicstaticvoidmain(String[]args){privateintx=10;publicinty=20;protectedintz=30;staticintw=40;finalinti=50;}}此处唯一适用的修饰符是final;对于其他修饰符,程序给出编译器错误。这是为什么?请详细说明。 最佳答案 简而言之-在这种情况下,其他修饰符都没有意义。说一个变量是public、private、protected或static在上下文中根本没有意义一旦方法退出,将超出范围(并被垃圾收集)的局部变量

java - 从数组中选择随机元素,但唯一

我有很多国家。我想从数组列表中随机选择5个国家,但我希望它们是独一无二的。这是我目前所拥有的:StringallCountries[]={"Finland","Latvia","Poland","Afghanistan","Albania","Algeria"};Stringcountry1=(allCountries[newRandom().nextInt(allCountries.length)]);Stringcountry2=(allCountries[newRandom().nextInt(allCountries.length)]);Stringcountry3=(allC

java - 如何使用 EclipseLink 在列中找到具有唯一值的值?

您可以使用EntityManager.find(ClassentityClass,ObjectprimaryKey)方法来查找具有主键的特定行。但是我如何在一个只有唯一值而不是主键的列中找到一个值呢? 最佳答案 您可以将适当的JPQL与TypedQuery结合使用.try{TypedQuerytq=em.createQuery("fromBeanWHEREcolumn=?",Bean.class);Beanresult=tq.setParameter(1,"uniqueKey").getSingleResult();}catch(N

java - Java 中用于唯一 ID 的序列生成器

我打算写一个序列生成器,它将被使用在发布期间在我的REST资源实现类中生成唯一身份。由于每个发布请求都由单独的线程处理,我使变量volatile和方法同步。我没有选择使用序列或其他东西传统的RDBMS提供。publicclassSequenceGen{volatilestaticintn=0;publicsynchronizedintnextNum(){returnn++;}}这是我目前所拥有的,并计划创建一个变量我的REST实现中的SequenceGen。我的实际问题是它在什么地方坏了?我测试了两个线程,但我没有看到任何重复的值。 最佳答案