IDEA debug模式下默认会调用变量的toString()方法

来源:互联网 发布:win10 改Wifi mac地址 编辑:程序博客网 时间:2024/06/05 10:33

在测试hibernate中session的load方法时,发现怎么也没办法跟理论的情况一致。

load(User.class,2) 表示到数据库user表查询主键为2的数据记录,并将其封装到user对象中返回。但是,要等到我们用到user对象的时候才会真正去查询数据库。实现的原理就是代理。

但是在debug的时候,总是运行完load()方法,log中就出现查询数据库的语句。这不就是跟get方法一样了吗。后来发现,idea这些插入代码中显示的东东,其实也是需要去查询数据库才有的。这里idea调用的是变量的toString方法。其实在eclipse中原理也是一样,但是,如果我们不主动去查看变量的值的话,eclipse是不会调用toString方法。


在下面的设置中,可以将该功能关掉。



原创粉丝点击