Ajax做的一个简单国际化例子:
data_en.properties 和 newdata_zh.properties为资源文件
data_en.properties:
hello=hello
newdata_zh.properties:
hello=/u4f60/u597d
html文件:test.htm
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>动态查询显示结果
</title>
<script type="text/javascript">
var xmlHttp;
function createXMLHTTPRequest()
{
if(window.ActiveXObject)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest)
{
xmlHttp=new XMLHttpRequest();
}
}
function startRequest(type)
{
createXMLHTTPRequest();
var url="PostData?type="+type+"&timeStamp="+new Date().getTime();
xmlHttp.onreadystatechange=handleStateChange;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
function handleStateChange()
{
if(xmlHttp.readyState==4)
{
if(xmlHttp.status==200)
{
document.getElementById("selectdata").innerHTML=xmlHttp.responseText;
}
}
}
</script>
</head>
<body>
<input type="button" value="中文" οnclick="startRequest('zh');"/><br><br>
<input type="button" value="英文" οnclick="startRequest('en');"/><br><br>
<div id="selectdata"></div>
</form>
</body>
</html>
java文件:
import java.io.*;
import java.net.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*;
public class PostData extends HttpServlet
{
private ServletContext context;
public void init(ServletConfig config)throws ServletException
{
context=config.getServletContext();
}
protected void doGet(HttpServletRequest req,HttpServletResponse res)throws ServletException,IOException
{
Properties ps_zh;
Properties ps_en;
String responseText;
res.setContentType("text/xml");
req.setCharacterEncoding("gb2312");
res.setCharacterEncoding("gb2312");
String type=req.getParameter("type");
//System.out.println(type);
if(type.equals("en"))
{
ps_en=new Properties();
InputStream in=context.getResourceAsStream("/WEB-INF/data_en.properties");
ps_en.load(in);
responseText=(String)ps_en.get("hello");
}
else
{
ps_zh=new Properties();
InputStream in=context.getResourceAsStream("/WEB-INF/newdata_zh.properties");
ps_zh.load(in);
responseText=(String)ps_zh.get("hello");
}
//System.out.println(responseText);
res.getWriter().print(responseText);
}
protected void doPost(HttpServletRequest req,HttpServletResponse res)throws ServletException,IOException
{
doGet(req,res);
}
}