小编And*_*nov的帖子

查找toString()方法的所有用法

我有一个庞大的项目,在这个项目的各个地方都广泛使用.该类定义了toString()输出大量信息的方法.我想定义另一个方法,toShortString()toString()用这个方法调用替换所有调用original的方法.

问题是有很多代码如下所示:

log.debug("Order issued: " + order);
log.debug("Loaded list of orders: " + orders);
Run Code Online (Sandbox Code Playgroud)

其中order是此对象的实例,orders是此类对象的列表.

有没有办法找到所有这些事件?

欢迎任何建议.IDE是IntelliJ Idea,如果重要的话.

java intellij-idea

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

在使用Oracle模式时,H2是否支持PLSQL?

我正在尝试使用H2内存数据库为我们的Java应用程序编写一些功能测试.由于我们使用Oracle作为生产数据库,因此一些代码是用PL/SQL编写的.所以我打开了Oracle兼容模式,现在我的网址看起来像这样:jdbc:h2:mem:test;MODE=Oracle.

我遇到麻烦的实际应用程序代码看起来像这样(注意,序列和表都是在调用之前创建的):

CallableStatement = con.prepareCall(
    " begin insert into profiles(" + PROFILE_FIELDS + ") " +
    " values (sq_profiles.nextval, ?, ?, ?, ?, ?) " + 
    " returning profile_id into ?; end;");
Run Code Online (Sandbox Code Playgroud)

它失败了,我写的这个示例代码测试begin ... end;行为的错误相同:

Connection con = connectionProvider.getConnection()
con.prepareStatement("CREATE TABLE test (id INT NOT NULL)").execute()
con.prepareStatement("INSERT INTO test SELECT 1 FROM dual").execute()
con.prepareStatement("BEGIN INSERT INTO test SELECT 2 FROM dual; END;").execute()
Run Code Online (Sandbox Code Playgroud)

我得到的错误:

Syntax error in SQL statement "BEGIN INSERT[*] INTO TEST …
Run Code Online (Sandbox Code Playgroud)

java oracle plsql h2

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

使用一行中的数组初始化ArrayList

我有一系列的Strings,我希望能够做一些事情

String[] arrayOfStrings = {"this", "is", "an", "array", "of", "strings"};
List<String> listOfStrings = new ArrayList<String>( arrayOfStrings );
Run Code Online (Sandbox Code Playgroud)

要么

List<String> listOfStrings = new ArrayList<String>();
listOfStrings.addAll( arrayOfStrings );
Run Code Online (Sandbox Code Playgroud)

我知道如果我的字符串已经存在于集合中,我可以同时执行这两个操作,并且我可以遍历数组并单独添加它们,但是这个有点混乱.

有没有办法List用数组初始化(或任何集合)?

java arrays list data-structures

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

标签 统计

java ×3

arrays ×1

data-structures ×1

h2 ×1

intellij-idea ×1

list ×1

oracle ×1

plsql ×1