当前位置: 技术问答>java相关
Applet和Servlet如何通讯?
来源: 互联网 发布时间:2015-09-15
本文导语: 我想从数据库里取得数据,然后用Applet画图。用Servlet取数后和Applet如何通讯。问问大家有何好的方法没?最好有代码提示。 | **** Applet *************************************** try{ System.out.println("**** ...
我想从数据库里取得数据,然后用Applet画图。用Servlet取数后和Applet如何通讯。问问大家有何好的方法没?最好有代码提示。
|
**** Applet ***************************************
try{
System.out.println("**** START ****");
java.net.URL url = new java.net.URL("http://サーバー/servlet/クラス");
String req = "name=" + java.net.URLEncoder.encode(name);
java.net.URLConnection ucon = url.openConnection();
ucon.setDoOutput(true);
ucon.setDoInput(true);
java.io.DataOutputStream dos = new
java.io.DataOutputStream(ucon.getOutputStream());
dos.writeBytes(req);
System.out.println("dos.writeBytes");
dos.close();
System.out.println("dos.close");
java.io.DataInputStream dis = new
java.io.DataInputStream(ucon.getInputStream());
String temp = dis.readUTF();
System.out.println("dis.readUTF");
System.out.println("ReadUTF : " + temp);
dis.close();
} catch (Exception e){
e.printStackTrace();
}
**** Servlet ***************************************
public void doPost(javax.servlet.http.HttpServletRequest req,
javax.servlet.http.HttpServletResponse res)
throws javax.servlet.ServletException, java.io.IOException {
String[] name = req.getParameterValues("name");
if(name[0].equals("")){
name[0] = "no name";
}
res.setContentType("text/plain");
res.setHeader("Pragma", "no-cache"); // キャッシュしない
java.io.DataOutputStream dos = new
java.io.DataOutputStream(res.getOutputStream());
dos.writeUTF("name : " + name[0]);
dos.flush();
dos.close();
}
try{
System.out.println("**** START ****");
java.net.URL url = new java.net.URL("http://サーバー/servlet/クラス");
String req = "name=" + java.net.URLEncoder.encode(name);
java.net.URLConnection ucon = url.openConnection();
ucon.setDoOutput(true);
ucon.setDoInput(true);
java.io.DataOutputStream dos = new
java.io.DataOutputStream(ucon.getOutputStream());
dos.writeBytes(req);
System.out.println("dos.writeBytes");
dos.close();
System.out.println("dos.close");
java.io.DataInputStream dis = new
java.io.DataInputStream(ucon.getInputStream());
String temp = dis.readUTF();
System.out.println("dis.readUTF");
System.out.println("ReadUTF : " + temp);
dis.close();
} catch (Exception e){
e.printStackTrace();
}
**** Servlet ***************************************
public void doPost(javax.servlet.http.HttpServletRequest req,
javax.servlet.http.HttpServletResponse res)
throws javax.servlet.ServletException, java.io.IOException {
String[] name = req.getParameterValues("name");
if(name[0].equals("")){
name[0] = "no name";
}
res.setContentType("text/plain");
res.setHeader("Pragma", "no-cache"); // キャッシュしない
java.io.DataOutputStream dos = new
java.io.DataOutputStream(res.getOutputStream());
dos.writeUTF("name : " + name[0]);
dos.flush();
dos.close();
}