Validation 带UTF-8的Scandic信函在JSF MYSQL PrimeFaces软件中不起作用?
我在外面就像冬天的雪人。我设置了alterschemaValidation 带UTF-8的Scandic信函在JSF MYSQL PrimeFaces软件中不起作用?,validation,utf-8,character-encoding,Validation,Utf 8,Character Encoding,我在外面就像冬天的雪人。我设置了alterschemahappyend默认字符集utf8;我的MySQL数据库 在我的xhtml页面中: <?xml version='1.0' encoding='UTF-8' ?> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 我对像ÄÖÅ这样的丑闻信件有意见。如果我直接将它们插入数据库,那么即使我在web浏览器的表单中看到该属性,一切都
happyend
默认字符集utf8;我的MySQL数据库
在我的xhtml页面中:
<?xml version='1.0' encoding='UTF-8' ?>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
我对像ÄÖÅ这样的丑闻信件有意见。如果我直接将它们插入数据库,那么即使我在web浏览器的表单中看到该属性,一切都正常。但如果在web浏览器中编辑属性,则它们是这样的:ÃÃÃÃÃ。这是与验证有关的东西还是在做什么。我两天前就想弄明白了,现在我已经不知道了。请尝试下面的代码在数据库中插入数据 使用“创建数据库数据库名称默认字符集utf8 collate utf8\U bin;”创建数据库
它肯定会起作用。对不起,这里没有足够的信息。看起来有点像UTF8 mojibake;例如,当被视为拉丁语-1时,对ä的UTF8编码为Ã,而öisÃ。它是什么意思?我完全明白你说的。我在我的过滤器中添加了一行代码,现在它可以工作了,但我仍然不知道是什么原因造成的,有什么想法吗?嗨!谢谢你的回答。我还没有尝试过,但我在我的过滤器中添加了一行代码,告诉每个请求使用UTF-8,它正在工作。DB当时工作正常,我想驱动程序也正常,所以我仍然不知道是什么导致了这种情况:)httpRequest.setCharacterEncoding(“UTF-8”);
String unicode= "?useUnicode=yes&characterEncoding=UTF-8";
Class.forName("com.mysql.jdbc.Driver");
PreparedStatement p1=null;
cn=DriverManager.getConnection("jdbc:mysql://localhost:3306/jsfdb"+unicode, "root", "root");