JSP
ページのエンコーディングが のページがありますISO-8859-1
。この JSP ページは質問回答ブログにあります。Q/A 投稿時に特殊文字を含めたいです。
問題は、からUTF-8
に変更しても JSP がエンコードをサポートしていないことです。これらの文字 ( 、、、)が問題を引き起こしています。これらの文字を個別に、または任意の文字の組み合わせで投稿すると、データベースに保存され、アプリケーションの投稿中にこれらの文字を削除すると正常に動作します。ISO-8859-1
UTF-8
~
%
&
+
null
誰か解決策を提案してもらえますか?
ベストアンサー1
あなたは同じエンコーディングの上すべてのレイヤーこの問題を回避するには、アプリケーションにフィルターエンコーディングを設定するには:
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain) throws ServletException {
request.setCharacterEncoding("UTF-8");
chain.doFilter(request, response);
}
JSP ページのエンコードのみを設定するには、次の行を追加します。
<%@ page contentType="text/html; charset=UTF-8" %>
同じ文字エンコーディングを使用するようにデータベースを構成します。
文字列のエンコーディングを変換する必要がある場合は、以下を参照してください。
HTML エンコードされたテキストをデータベースに保存することはお勧めしません。たとえば、PDF (または HTML 以外のもの) を生成する必要がある場合は、まず HTML エンコードを変換する必要があります。