responsejava
A. java中如何用response編寫一個刷新頁面,實現每兩秒鍾刷新一次
<%@ page language="java" contentType="text/html;charset=gb2312" import="java.util.*" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<%
response.addIntHeader("Refresh",2);
%>
<h4>2秒刷新一次</h4>
</body>
</html>
B. JavaWeb response使用中造成的中文亂碼問題解決
當使用JavaWeb中的response.getWriter().write()方法向瀏覽器寫入中文數據時,可能會出現中文亂碼問題。原因在於response緩沖區默認使用ISO8859-1編碼,不支持中文,導致中文信息無法被正確識別。為解決此問題,應採用UTF-8編碼。
首先,需更改緩沖區編碼為UTF-8。嘗試向頁面寫入中文數據測試。
盡管緩沖區設置為UTF-8編碼,但問題並未解決。原因是瀏覽器默認解析數據時使用的是GB2312編碼,而非UTF-8,顯示中文亂碼。通過Eclipse查看瀏覽器默認編碼,發現其為GB2312。
若將瀏覽器默認編碼更改為UTF-8,問題得到解決。光設置緩沖區編碼方式是不夠的。
其次,需設置瀏覽器接收內容時的編碼方式為UTF-8。再次嘗試寫入中文數據測試。
此時,中文顯示正常,問題完美解決。
總結注意事項:
1. 設置瀏覽器編碼方式後,緩沖區編碼會自動調整,只需設置瀏覽器編碼。
2. 設置編碼必須在響應體內容寫入之前進行。