文章目录
一、警告
警告: [SetContextPropertiesRule]{Context} Setting property ‘source’ to ‘org.eclipse.jst.jee.server:web03_login’ did not find a matching property.
org.apache.tomcat.util.digester.SetPropertiesRule begin
警告: [SetPropertiesRule]{Context/Loader} Setting property ‘useSystemClassLoaderAsParent’ to ‘false’ did not find a matching property.
把servers的tomcat中的web项目移除→点击右键→clean
只是暂时的解决这个问题,再一次添加项目并运行后,会发现依然会有这两个问题,不过不妨碍运行,因此不再深究。
如何修改tomcat中的server location:
把tomcat中的工程去掉,就会发现灰色部分的server location可以修改配置了。
二、Cause: java.sql.SQLException: Unknown initial character set index ‘255’ received from server。
问题产生原因:MySQL与eclipse 的编码规范不匹配
更准确的说:是MySQL的编码方式与eclipse的mysql连接工具的编码方式不匹配。
环境:MySQL 8.0.18;jdk1.8;
jar包:注意看mysql-connector-java-5.0.8-bin.ar
说明:MySQL连接工具要与MySQL数据库的版本尽可能的相一致。
想要工具的,底下评论,可能是平台问题,资源暂时无法上传。
解决办法:
1.换一个与你MySQL版本尽可能匹配的jar包,这我们后面会讲
2.更改配置方式
(1)若你的配置文件是properties,则在此文件中修改:
String url = “jdbc:mysql://localhost:3306/所连数据库的名称?useUnicode=true&characterEncoding=utf8”;
**注意:**想比与修改之前加的是这一段
?useUnicode=true&characterEncoding=utf8";
(2)若你在javaweb项目中使用了连接池,用到的是c3p0-config.xml,那么修改方式为:
jdbc:mysql://localhost:3306/所连数据库的名称?useUnicode=true&characterEncoding=utf8;
**注意:**这是在xml文件中,"&" 是转义字符 在xml中是 “&”
(3)
①在连接数据库的URL上可以完整写法为:
String url = “jdbc:mysql:/127.0.0.1/localhost:3306/所连数据库的名称?useUnicode=true&characterEncoding=utf8”;
②简写为:
String url = “jdbc:mysql:///所连数据库的名称?useUnicode=true&characterEncoding=utf8”;
注意: localhost:3306是数据库默认的端口,如果没修改可以忽略;
同样127.0.0.1也可以忽略,因为此地址代表的是本机。
三、//MySQL 8.0// java.sql.SQLException: Unknown system variable ‘tx_isolation’
在解决了问题二(编码问题)后,成功摸到了连接数据库的大门…才发现开锁的钥匙拿错了。
个人认为:在连接了c3p0连接池后,对应MySQL8.0,IDE一定要升级连接驱动才可。
准备:MySQL版本:8.0.18 ; mysql连接驱动版本:8.0.17(可用)
将mysql连接工具复制到WebContent/META-INF/lib文件夹下
如果没有lib文件夹,那就创一个。
对你刚复制的连接工工具build path一下
在lib文件夹下找到你刚复制的插件
然后点击OK即可
插件安装成功!
四、timezone问题
The server time zone value ‘�й���ʱ��’ is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
这是因为装的是mysql8.0,时区要和编译环境的一致,因此在配置文件中,将url改为:
jdbc:mysql:///web02_login?useSSL=true&serverTimezone=GMT&useUnicode=true&characterEncoding=utf8
如果是在xml中,怎么改?见问题二。
问题解决了!