1、使用Hibernate的时候,想让Hiberante根据domain object对象生成对应的数据库表,配置hibernate.cfg.xml中的属性hbm2ddl.auto为update,运行之后,没有生成对应的数据库表同时没有提示错误。
解决方法:因为之前的domain object是根据数据库表自动生成,在<class/>中有个属性catalog="hibernate",hibernate为当时我建的数据库,而我在新项目中新建了一个数据库为school,jdbc:mysql://127.0.0.1:3306/school?useUnicode=true&characterEncoding=UTF-8,连个数据库不一样,导致表创建不成功,去掉catalog="hibernate"之后,数据库表创建成功。
2、在使用OSCache的时候,会报Caused by: java.lang.ClassNotFoundException:org.apache.commons.logging.LogFactory的错误,原因是OSCache用到了log4j,导入MyEclipse中的Hibernate Capabilities也没有用,原因是还差一个jar包,common-logging.jar。
3、在使用Junit4对struts2的action进行测试时,抛出Caused by: java.lang.ClassNotFoundException: userAction这个错误。
对spring和struts2集进行测试时,test用例必须继承StrutsSpringTestCase类,并且需要有文件名为applicationContext.xml的配置文件,因为默认是加载这个文件的,如果没有会报Caused by: java.lang.ClassNotFoundException: userAction这个错误。
还有一种方法是通过覆盖父类中的protected java.lang.String getContextLocations()来指定你的配置文件。