在使用JSF和EclipseLink JPA到MySQL数据库的Web应用程序中,我遇到了很大的问题.
当我从数据库中读取数据时,JSF以UTF-8读取和写入我的字符串.但在数据库中字符很糟糕.
fe:输入字符:"żźćółzxcv",写在数据库中:"????? zxcv".但是如果我手动将数据写入数据库,例如:"żźćółzxcv",那么在JSF中读取是完美的.
我从这里尝试了一切:通过PrimeFaces输入组件检索的Unicode输入被破坏
我发现JSF中的编码很好,但问题出在java中,因为如果我手动设置的话
current.setUwagiZ("???ó??????ó???? TE");
getFacade().edit(current);
Run Code Online (Sandbox Code Playgroud)
在数据库记录中是错误的: ???ó??????ó???? TE
我在JDBC Resource中设置了characterEncoding和useUnicode.此外,当NetBeans编码中的某些工具执行命令正常并且MySQL中的数据为UTF-8时,连接似乎很好.
所以问题是java,但我完全不知道如何解决这个问题:(