月度存档: 5 月 2013

dbcp内存泄漏解决方案

tomcat 6.0.24以上版本关闭时报以下错误:

严重: The web application [/igame] registered the JDBC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.

这是因为dbcp的一个小小的内存泄漏,你可以无视它,也可以去解决它。

更多关于这个问题的讨论:

http://stackoverflow.com/questions/3320400/to-prevent-a-memory-leak-the-jdbc-driver-has-been-forcibly-unregistered

我采用的是改为使用tomcat jdbc pool。

tomcat也使用大篇幅来描述tomcat-jdbc比dbcp好的优点:

http://people.apache.org/~fhanik/jdbc-pool/jdbc-pool.html

注意:并不是所有的tomcat版本都包含了tomcat-jdbc.jar,如果发现tomcat_home/lib下没有这个包,自己手工添加上。可能mysql-connector包也需要手工加上。

另一种方法:手动注销driver:

实现ServletContextListener,在contextDestroyed添加:

Enumeration<Driver> drivers = DriverManager.getDrivers();
while (drivers.hasMoreElements()) {
Driver driver = drivers.nextElement();
try {
log.info(“deregister driver :” + driver);
DriverManager.deregisterDriver(driver);
} catch (SQLException e) {
log.error(“deregister dirver error:”, e);
}
}

win7下的创建软连接工具

windows下没有linux下的ln命令,在开发造成不小的麻烦。

幸好在win7下发现了mklink这个命令,可以像ln命令一样创建软连接。

 

D:\workspace\ccb2>mklink
创建符号链接。

MKLINK [[/D] | [/H] | [/J]] Link Target

/D      创建目录符号链接。默认为文件
符号链接。
/H      创建硬链接,而不是符号链接。
/J      创建目录联接。
Link    指定新的符号链接名称。
Target  指定新链接引用的路径
(相对或绝对)。

收集cocos2dx开发中用的第三方工具

  • UI编辑器

  1. cocosbuilder
  • 粒子编辑器

  1. Particle Designer
  2. ParticleCreator(暂未尝试)
  • 骨骼动画编辑器

  1. spine
  • 艺术字体

  1. Glyph Designer
  2. BMFont (Windows) (这4种暂未使用过)
    Fonteditor
    Hiero
    LabelAtlasCreator