1

現在、Eclipseを使用してJAVA Dynamic Webプロジェクトを開発しています。また、JSPを使用して、いくつかのユニバーサル文字(日本語/中国語など)をバッキングBeanに送信し、次にデータベースに送信したいと考えています。私はオンラインでいくつかの解決策を探してきましたが、残念ながらそれらのどれも私のために働きません。(参考までに、文字の表示はうまく機能しています)

  • Webページの見出しの変更を行いました。

    <?xml version="1.0" encoding="UTF-8" ?>
    <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
    
  • web.xmlの変更を行いました。

    <url-pattern>*.jsp</url-pattern>
    <page-encoding>UTF-8</page-encoding>
    
  • persistence.xmlで、次の変更を行いました。

    property name="javax.persistence.jdbc.url" 
    value="jdbc:mysql://localhost:3306/test?useUnicode=true&amp;characterEncoding=UTF-8"
    
  • tomcat server.xmlで、次の変更を行いました。

    URIEncoding="UTF-8"
    
  • Beanのプロパティとデータベース列についても、utf-8に設定し、動作することがテストされています。

これらすべての変更が実際に問題を解決するわけではありません。JSPから、「哈」のように入力<h:inputText>したところ、バッキングBeanとバッキングBeanに「&#2 1 7 0 4;」(文字の実際のutfコードであると思われる)が表示されていることがわかりました。データベースに表示されます。

強制などの他の方法もいくつか見ましたがresponse.setContentType("text/html; charset=utf-8")、JSPをバッキングBeanに直接リンクしているため、これは私の場合には当てはまりません。

4

0 に答える 0