hibernatesqlQuerymysql别名问题(三)
2015-02-02 13:19:23
·
作者:
·
浏览: 48
framework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.apache.catalina.core.StandardEngineva lve.invoke(StandardEngineva lve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:662)
解救方法:
困扰了我很久 ,找了很多资料,问题很简单,就是驱动不支持别名的问题,这里记录下,为后来人造桥!!! 在连接mysql数据库的时候添加 useOldAliasMetadataBehavior=true 这个参数!!!!
jdbc.url=jdbc\:mysql\://127.0.0.1\:3306/db?useUnicode\=true&characterEncoding\=utf8&useOldAliasMetadataBehavior=true
常用的几个较为重要的参数:
| 参数名称 |
参数说明 |
缺省值 |
最低版本要求 |
| user |
数据库用户名(用于连接数据库) |
|
所有版本 |
| password |
用户密码(用于连接数据库) |
|
所有版本 |
| useUnicode |
是否使用Unicode字符集,如果参数characterEncoding设置为gb2312或gbk |
false |
1.1g |
| characterEncoding |
当useUnicode设置为true时,指定字符编码。比如可设置为gb2312或gbk |
false |
1.1g |
| autoReconnect |
当数据库连接异常中断时,是否自动重新连接 |
false |
1.1 |
| autoReconnectForPools |
是否使用针对数据库连接池的重连策略 |
false |
3.1.3 |
| failOverReadOnly |
自动重连成功后,连接是否设置为只读 |
true |
3.0.12 |
| maxReconnects |
autoReconnect设置为true时,重试连接的次数 |
3 |
1.1 |
| initialTimeout |
autoReconnect设置为true时,两次重连之间的时间间隔,单位:秒 |
2 |
1.1 |
| connectTimeout |
和数据库服务器建立socket连接时的超时,单位:毫秒,0表示永不超时,适用于JDK 1.4及更高版本 |
0 |
3.0.1 |
| socketTimeout |
socket操作(读写)超时,单位:毫秒。 0表示永不超时 |
0 |
3.0.1 |
??