Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用hibernate将阿拉伯语插入mysql_Java_Mysql_Hibernate_Jsp_Arabic - Fatal编程技术网

Java 使用hibernate将阿拉伯语插入mysql

Java 使用hibernate将阿拉伯语插入mysql,java,mysql,hibernate,jsp,arabic,Java,Mysql,Hibernate,Jsp,Arabic,我正在尝试将阿拉伯语值插入mysql数据库。我的web应用程序是使用hibernate构建的,基于MVC模式。 在我尝试了很多东西之后,我会问: Mysql: 我已更改了数据库、表和列以接受UTF-8。 现在,我可以使用mysql接口插入阿拉伯语文本 TomCat: 我添加了URIEncoding=“UTF-8” JSP:我将放在所有JSP中 问题是,我可以在jsp中显示阿拉伯语文本,但无法插入数据库。当我打印它时,我得到Ù?Ø?Ù?我得到了当我这样打印时System.out.println(新

我正在尝试将阿拉伯语值插入mysql数据库。我的web应用程序是使用hibernate构建的,基于MVC模式。 在我尝试了很多东西之后,我会问:

Mysql:
我已更改了数据库、表和列以接受
UTF-8。
现在,我可以使用mysql接口插入阿拉伯语文本

TomCat: 我添加了
URIEncoding=“UTF-8”

JSP:我将
放在所有JSP中

问题是,我可以在jsp中显示阿拉伯语文本,但无法插入数据库。当我打印它时,我得到
Ù?Ø?Ù?我得到了
当我这样打印时
System.out.println(新字符串(obj.getName().getBytes(),“UTF-8”)

当我打印
System.out.println(新字符串(“لكلحف”).getBytes(),“UTF-8”)我明白了

是否可能是由于多重编码

编辑:

我是在从tomcat 9迁移到tomcat 8后得到的,但我得到了
é而不是
é

这个怎么样?我添加了
hibernate.connection.characterEncoding=UTF-8 hibernate.connection.useUnicode=true hibernate.connection.encoding.force=true
问题是当信息从jsp传递到我的服务器时。但是我看不出我做错了什么,在获取请求时,您是否将使用正确编码的setCharacterEncoding作为第一件事?是的,
@Override protected Filter[]getServletFilters(){CharacterEncoding Filter CharacterEncoding Filter=new CharacterEncoding Filter();CharacterEncoding Filter.setEncoding(“UTF-8”);characterEncodingFilter.setForceEncoding(true);返回新筛选器[]{characterEncodingFilter};}
这是怎么回事?我添加了
hibernate.connection.characterEncoding=UTF-8 hibernate.connection.useUnicode=true hibernate.connection.encoding.force=true
问题是当信息从jsp传递到我的服务器时。但我看不出我做错了什么,在获取过程中是否使用正确的编码设置了characterEncoding请求作为您正在做的第一件事?是的,
@覆盖受保护的筛选器[]getServletFilters(){CharacterEncodingFilter CharacterEncodingFilter=new CharacterEncodingFilter();CharacterEncodingFilter.setEncoding(“UTF-8”);CharacterEncodingFilter.setForceEncoding(true);返回新筛选器[]{characterEncodingFilter};}