好久不见的近期小结,这个系列我觉得还是得坚持更新啊…
1)windows mysql中文入库乱码问题。
在确定服务端的中文编码是UTF-8无误后,就需要考虑mysql的编码设置问题了。用sql语句查看下:
SHOW VARIABLES LIKE '%char%'
要确保character_set_server/system/server/results等都为utf8,默认情况下,character_set_server可能为latain,解决办法:
找到mysql server的安装路径,在bin目录下找到MySQLInstanceConfig.exe,一路点击到字符编码那里,选择utf8,再finish。
然后重启mysql服务,再次执行上述sql语句,确保结果如下:
再次尝试,可发现中文正常insert了。
2)hibernate save中文字段乱码
在用Hibernate保存字段时,之前出现了一个困惑我很长时间的问题。有一个“描述”的字段,为了简便,我先使用了explain, 再使用了desc。。但是因为恰好他们都是mysql的关键字,造成入库保存的时候报错:
check the manual that corresponds to your MySQL server version for the right syntax to use near 'explain='æ–°å¢æˆ·å·¥ä½œæ—¥', general=2.0, invest_incr=2.0, is_new_customer=0, i' at line 1,
Caused by: java.sql.BatchUpdateException:
就觉得很郁闷,为什么explain这个字段会乱码,明明debug的时候是没有乱码的,一直百思不得其解,被困惑将近一天时间后,被同事提醒对表的字段命名和mysql的关键字撞了。遂改之,就再也没有出现这个错误了!记录下,以示警醒!
3)启动tomcat下的项目报内存溢出
双击tomcat server, 在界面中打开open launch configuration,然后切换至Arguments标签页,在VM arguments里加入:
-Xms512M -Xmx1024M -XX:PermSize=256m -XX:MaxPermSize=512m
再重启看看。
4)js获取项目url
function getbaseUrl () {
var location = document.location;
return location.protocol+"//"+location.host+"/项目名";
}