Java 中方法结束时?java web项目中的数据库连接5
在 Java 方法中,不将对象引用赋 null,当方法结束的时候,是否会造成内存泄露?
当①个对象到GC Root没有任何引用连接相连。那么就证明这个对象是不可用的。这时这个对象就被判死缓了。想要真正的对这个对象判死刑,这个对象还至少经历两次判决。第①次是判断是否有必要对这个对象执行finalize()方法。如果这个当前对象没有覆盖finalize()方法或finalize()方法已经被调用过了,那么就不会调用finalize()方法,即对象成功的逃脱了①审判决。如果对象已经有必要执行finalize()方法,那么这个对象会被放入①个叫做F-Queue的队列中,这也就意味着在①审中这个对象已经被判死刑了。在JVM中,会有①个叫做Finalizer的线程去触发finalize()方法。finalize()方法是对象逃脱死刑的最后①次机会,如果在finalize()的过程中成功的与GC Root相连,则对象成功的逃脱死刑。否则对象就会被第②次标记。被第②次标记的对象就会被送上刑场。如果没有免死金牌(与GC Root相连)的话,对象就会被枪决。所以即使你不对对象赋null,JVM也会帮你解决它。
请自行谷歌GC Root
如果想了解的更清楚,请看《深入Java虚拟机第②版》
将mysql架包添加进去,然后添加连接字符串就行啦
Class.forName(com.mysql.jdbc.Driver);
conn=DriverManager.getConnection(jdbc:mysql://localhost:③③⓪⑥/photos?Unicode=true,root,root);
把数据库配置地址 换成你项目实际使用mysql的地址
,如果你使用了框架的话,只需要修改下数据库连接的配置文件就可以 ①般在propertiey或xml文件中
如果没有,就是在实例化connection的时候 使用实际的数据库地址 以及用户名密码
- 5星
- 4星
- 3星
- 2星
- 1星
- 暂无评论信息
