Spring那个项目中的出错信息是这样的:
Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/spring/applicationContext.xml]: Initialization of bean failed 在Struts+JDBC的项目中,我是直接用编程的方式创建数据源对象的,还是不行。
ds=new BasicDataSource();
ds.setDriverClassName("org.gjt.mm.mysql.Driver");
ds.setUrl("jdbc:mysql://localhost:3306/wjmw?useUnicode=true&characterEncoding=GBK");
ds.setUsername("root");
ds.setPassword("");
ds.setMaxIdle(2);
ds.setMaxActive(4);
ds.setMaxWait(1000);
Error creating bean with name 'sessionFactory' defined in ServletContext resource [/WEB-INF/spring/applicationContext.xml]: Initialization of bean failed 在Struts+JDBC的项目中,我是直接用编程的方式创建数据源对象的,还是不行。
ds=new BasicDataSource();
ds.setDriverClassName("org.gjt.mm.mysql.Driver");
ds.setUrl("jdbc:mysql://localhost:3306/wjmw?useUnicode=true&characterEncoding=GBK");
ds.setUsername("root");
ds.setPassword("");
ds.setMaxIdle(2);
ds.setMaxActive(4);
ds.setMaxWait(1000);
换成最新的mysql驱动3.1.11和dbcp最新版试试,或者换台机器重装mysql。检查一下是否是防火墙的缘故。
Oracle是SessionFactory未能正确的初始化。 MySQL,好像是因为MySQL不支持事务的缘故。 至于SPring之中,就搞不清楚了! 我紧紧修改了类名,增加了一个destroy方法而已。 现在,我自己写了一个DataSource,可以解决以上问题,但是很奇怪,为什么BasicDataSource会不行呢?
java.sql.SQLException: Communication link failure: Bad handshake
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:659)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:1562)
at com.mysql.jdbc.Connection.<init>(Connection.java:491)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:346)
at java.sql.DriverManager.getConnection(DriverManager.java:512)
这是怎么回事? 刚刚还是正确的呢!