コンソール書き込みを使用すると、オブジェクトはSystemクラスを介してアクセスされますが、サーブレットを使用している間は、 PrintStreamクラス オブジェクトの代わりに printWriter オブジェクトが使用されますか?
3 に答える
コンソールへの書き込みと Web ブラウザへの書き込みには違いがあるためです。
応答オブジェクトにアタッチされたライター、
文字テキストをクライアントに送信できる PrintWriter オブジェクトを返します。PrintWriter は、 getCharacterEncoding() によって返される文字エンコーディングを使用します。応答の文字エンコーディングが getCharacterEncoding で説明されているように指定されていない場合 (つまり、メソッドがデフォルト値の ISO-8859-1 を返すだけの場合)、getWriter はそれを ISO-8859-1 に更新します。
システムが接続されているため、writer
Unicode 文字変換が正しく行われません。
私たちはウェブページに書いているのではなくSystem
、ウェブページに書いているからです。これがjavadocの言うことです
印刷ライター
PrintStream クラスとは異なり、自動フラッシュが有効になっている場合、改行文字が出力されるたびにではなく、println、printf、または format メソッドのいずれかが呼び出されたときにのみ行われます。これらのメソッドは、改行文字ではなく、プラットフォーム独自の行区切りの概念を使用します。