小编vrm*_*vrm的帖子

Java"NoSuchMethodError"

我越来越:

NoSuchMethodError: com.foo.SomeService.doSmth()Z
Run Code Online (Sandbox Code Playgroud)

我是否正确理解这'Z'意味着doSmth()方法的返回类型是布尔值?如果为true,那么这种方法确实不存在,因为此方法返回一些Collection.但另一方面,如果我调用此方法,我不会将其返回值赋给任何变量.我只是这样调用这个方法:

service.doSmth();
Run Code Online (Sandbox Code Playgroud)

有什么想法发生这个错误?存在所有必需的JAR文件,并且此类中的所有其他方法似乎都存在.

java nosuchmethoderror

25
推荐指数
3
解决办法
5万
查看次数

在没有wsdl的soapUI中创建MockService

是否有可能在没有wsdl文件的情况下在soapUI中创建模拟服务?我所拥有的只是样品请求和回复.我认为应该可以使用soapUI从请求和响应示例生成WSDL,但我无法找到任何有关它的教程.

soap wsdl web-services soapui

10
推荐指数
2
解决办法
1万
查看次数

Java泛型类型

当我有一个界面

public interface Foo<T> {
    T someMethod();
}
Run Code Online (Sandbox Code Playgroud)

有没有办法确保当某个类实现此接口时,泛型类型是相同的实现类.

例如:

public class Bar implements Foo<Bar>  {
    Bar someMethod() {
        return new Bar();
    }
}
Run Code Online (Sandbox Code Playgroud)

java generics

7
推荐指数
2
解决办法
2644
查看次数

Liquibase放弃约束而不知道它的名字

我们使用liquibase来跟踪我们的数据库更改.首先,changeSet包含以下行:

<column name="SHORT_ID" type="INTEGER">
   <constraints unique="true" />
</column>
Run Code Online (Sandbox Code Playgroud)

基本上它意味着SHORT_ID列具有唯一约束,但此约束的名称可以是任何内容,并且通常每次都不同(我们对H2数据库运行一些集成测试,每次运行测试时都会生成新的基础)

所以..问题是:我无法改变这第一个changeSet但现在我们必须摆脱这个独特的约束.有任何想法如何通过使用liquibase实现这一目标?

java sql constraints h2 liquibase

7
推荐指数
2
解决办法
5781
查看次数

用于将Object转换为数字的Java库(Integer,Long等...)

我需要将对象数组转换为Long/Integer.问题是那些对象有时是BigIntegers,有时是BigDecimals,有时甚至是其他东西.有没有很好的图书馆来完成这个?

例如...

for (Object[] o : result) {
    Long l = SomeClass.convertToLong(o[0]);
    Integer i = SomeClass.convertToInt(o[1]);
}
Run Code Online (Sandbox Code Playgroud)

java type-conversion

5
推荐指数
2
解决办法
1万
查看次数

java泛型和SuppressWarnings

我有课

abstract class A {
    //....
}

class B extends A {
    //....
}

class C extends A {
    //....
}
Run Code Online (Sandbox Code Playgroud)

然后我有

interface Maker<T extends A> {
    SomeClass make(T obj);
}
Run Code Online (Sandbox Code Playgroud)

Maker类的实现

class MakerForB implements Maker<B> { /*... */ }
class MakerForC implements Maker<C> { /*... */ }
Run Code Online (Sandbox Code Playgroud)

和类Factory一个静态方法

class Factory {
    public static SomeClass makeSomeClass(A obj) {
        Maker maker = null;
        if(obj instanceof B) maker = new MakerForB();
        /* ... */
        return maker.make(obj);
    }
}
Run Code Online (Sandbox Code Playgroud)

在那种情况下,当我以这种方式宣布Maker时,我得到Maker是原始类型的警告

Maker<?> maker = …
Run Code Online (Sandbox Code Playgroud)

java generics warnings static-methods

4
推荐指数
1
解决办法
512
查看次数

Elasticsearch 词序

我已经使用标准分析器对文档进行了索引

foo 1 bar
foo 2 bar
foo 3 bar
Run Code Online (Sandbox Code Playgroud)

等等..

当我进行像“ asdf foo 1 bar 2 ”这样的 mach 查询时,尽管查询字符串包含短语“foo 1 bar”,但foo 2 bar的得分高于foo 1 bar

如何构建查询以考虑词序?主要问题是查询字符串可能包含比文档更多的单词。

elasticsearch elasticsearch-6

3
推荐指数
1
解决办法
1176
查看次数

这两段代码中的哪一块更好/更快/使用更少的内存?

哪一个更优或者有什么不同?

String s = methodThatReturnsString();
int i = methodThatReturnsInt();
thirdMethod(s, i);
Run Code Online (Sandbox Code Playgroud)

要么

thirdMethod(methodThatReturnsString(), methodThatReturnsInt());
Run Code Online (Sandbox Code Playgroud)

通过最优,我的意思是在内存使用等方面最优.

java optimization

1
推荐指数
4
解决办法
291
查看次数

Oracle varchar2最小长度

在Oracle db中,我们有一个包含varchar2类型列的表(例如USERNAME).如何为此列设置精确(或至少最小)的长度?因此,插入此表的所有用户名只能是10个(或必须至少10个)字符长.

oracle

1
推荐指数
1
解决办法
7372
查看次数