环境:jdk8+、oracle12c、ojdbc8、spingmvc、druid
问题分析:
1.数据库连接时有一个参数:oracle.jdbc.v$session.osuser,取值为System.getProperty("user.name")。
2.我的win10系统设置的用户名是中文的。
ojdbc不能很好的兼容中文,导致了这个连接问题。
解决方案:
1、使用ojdbc7替换ojdbc8;
2、启动时增加代码:System.setProperty("user.name", "English Name");修改操作系统用户名为英文名,不要包含中文。
总结:
作为一名程序员,不要使用中文,毕竟程序是外国人发明的,文件路径也不要使用中文和空格,这样对于运行程序而言能解决很多问题