使用JBPM4.4+MySql5实现工作流引擎,发现如果在流程定义里面使用了中文,将流程定义部署后,Mysql数据库里面存储的就是乱码,由于持久化代码是JBPM处理的.不能进行干预.经过一番研究发现,MySql默认使用的字符集体是latin1,而我们是在windows上进行部署,此时的字符集一定是GBK,如此肯定会出现乱码,由于不想动JBPM,所以考虑将修改MySql字符集为utf8,如此与部署时候的字符集一致,应该就没有乱码问题了。
修改MYsql字符集,在网上查询了一番,按以下步骤进行了修改
1、修改MySQL字符集
SET character_set_client = utf8;
SET character_set_connection = utf8;
SET character_set_database = utf8;
SET character_set_results = utf8;
SET character_set_server = utf8;
2、将数据库建好后(由于数据库默认使用MySql默认字符集latin1),使用命令
alter database 数据库名 charset utf8;
将建立的数据库字符修改为utf8
3、建表(此处注意如果已经有表存在数据库也需要Drop后重建,直接修改表的字符集类型也不行)
4、在连接数据库的URL上加入characterEncoding=utf8
修改MYsql字符集,在网上查询了一番,按以下步骤进行了修改
1、修改MySQL字符集
SET character_set_client = utf8;
SET character_set_connection = utf8;
SET character_set_database = utf8;
SET character_set_results = utf8;
SET character_set_server = utf8;
2、将数据库建好后(由于数据库默认使用MySql默认字符集latin1),使用命令
alter database 数据库名 charset utf8;
将建立的数据库字符修改为utf8
3、建表(此处注意如果已经有表存在数据库也需要Drop后重建,直接修改表的字符集类型也不行)
4、在连接数据库的URL上加入characterEncoding=utf8