0

このシナリオを見てみましょう。ユーザーが任意の種類のテキスト (UTF8 または中国語またはアラビア語の文字) をコピーできるテキストボックスがあり、そのテキストを MySQL DB に挿入するための [送信] ボタンがあります。

通常、私は使用URLEncoder.encode(text,"UTF-8")しており、私のアプリは非常に安定して動作します。テキストがエンコードされているため、ユーザーが特殊文字を挿入したかどうかは心配していなかったので、テキストを読んだときにデコードしただけで、テキストは以前とまったく同じようになりました.

しかし、MySQLやTomcatサーバーなどでUTF8を設定できるのでエンコードする必要がないという人もいますが、このソリューションには構成が必要であり、あまり健全なソリューションではないため、構成が嫌いです。

さらに、ユーザーはジャンク コードを入力して DB をハッキングすることもできます。

では、Java と MYSQL では、テキストを DB に挿入するときにテキストをエンコードすることをお勧めしますか?

他のフォーラムの一部の人々は、エンコードされたテキストを DB に保存するのは非常に悪いと述べていますが、なぜ悪いのかについては述べていません。

したがって、この質問は、Java と MySQL の経験が豊富な人に向けたものです。

4

2 に答える 2