服务端测试代码如下
package com.sun.server;import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;public class QCJChargeServerTest extends Thread{
private Socket server;
public QCJChargeServerTest(Socket s){
this.server=s;
}
/**
* @param args
*/
public static void main(String[] args) {
try {
ServerSocket serverSocket=new ServerSocket(1234);
Socket server=serverSocket.accept();
QCJChargeServerTest test=new QCJChargeServerTest(server);
test.start();
} catch (Exception e) {
e.printStackTrace();
}
}
private String getXML() throws Exception{
File file=new File("C:/Users/Administrator/Desktop/QCJChargeRes.xml");
String XMLMessage="";
InputStreamReader isr=new InputStreamReader(new FileInputStream(file), "utf8");
BufferedReader read=new BufferedReader(isr);
String temp;
while((temp=read.readLine())!=null){
XMLMessage=XMLMessage+temp;
}
return XMLMessage;
}
public void run(){
try {
DataInputStream dis=new DataInputStream(server.getInputStream());
//BufferedReader in=new BufferedReader(new InputStreamReader(server.getInputStream()));
//System.out.println(in.readLine());
System.out.println(dis.readUTF());
//dis.close();
String tcpHead="000A000100201311151311140100725F69D089A5FAD16DFE079940FFCCA1DD5";
String TCPMessage=tcpHead+this.getXML();
DataOutputStream dos=new DataOutputStream(server.getOutputStream());
dos.writeUTF(TCPMessage);
dos.flush();
//System.out.println(TCPMessage);
//System.out.println(TCPMessage);
} catch (Exception e) {
e.printStackTrace();
}
}}客户端代码如下package com.sun.client;import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;public class QCJChargeMain extends Thread {
/**
* 构造方法
* @param ip
* @param port
*/
private String ip;
private int port;
private Socket client;
public QCJChargeMain(String ip,int port){
this.ip=ip;
this.port=port;
}
/**
* 初始化客户端
* @param ip
* @param port
*/
private void InitClient(String ip,int port){
try {
client=new Socket(ip,port);
} catch (Exception e) {
}
}
/**
* 连接server端
*/
public void run(){
this.InitClient(ip, port);
try {
this.upload(client);
this.download(client);
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
//client.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
private void upload(Socket client){
DataOutputStream dos = null;
try {
dos=new DataOutputStream(client.getOutputStream());
QCJChargeUpload upload=new QCJChargeUpload();
String TCPMessage=upload.QCJChargeUpload();
dos.writeUTF(TCPMessage);
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
dos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
private void download(Socket client){
DataInputStream dis=null;
try {
dis=new DataInputStream(client.getInputStream());
String TCPMessage=dis.readUTF();
QCJChargeDownload download=new QCJChargeDownload(TCPMessage);
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
QCJChargeMain main=new QCJChargeMain("127.0.0.1",1234);
main.start();
}}
socketjava
package com.sun.server;import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;public class QCJChargeServerTest extends Thread{
private Socket server;
public QCJChargeServerTest(Socket s){
this.server=s;
}
/**
* @param args
*/
public static void main(String[] args) {
try {
ServerSocket serverSocket=new ServerSocket(1234);
Socket server=serverSocket.accept();
QCJChargeServerTest test=new QCJChargeServerTest(server);
test.start();
} catch (Exception e) {
e.printStackTrace();
}
}
private String getXML() throws Exception{
File file=new File("C:/Users/Administrator/Desktop/QCJChargeRes.xml");
String XMLMessage="";
InputStreamReader isr=new InputStreamReader(new FileInputStream(file), "utf8");
BufferedReader read=new BufferedReader(isr);
String temp;
while((temp=read.readLine())!=null){
XMLMessage=XMLMessage+temp;
}
return XMLMessage;
}
public void run(){
try {
DataInputStream dis=new DataInputStream(server.getInputStream());
//BufferedReader in=new BufferedReader(new InputStreamReader(server.getInputStream()));
//System.out.println(in.readLine());
System.out.println(dis.readUTF());
//dis.close();
String tcpHead="000A000100201311151311140100725F69D089A5FAD16DFE079940FFCCA1DD5";
String TCPMessage=tcpHead+this.getXML();
DataOutputStream dos=new DataOutputStream(server.getOutputStream());
dos.writeUTF(TCPMessage);
dos.flush();
//System.out.println(TCPMessage);
//System.out.println(TCPMessage);
} catch (Exception e) {
e.printStackTrace();
}
}}客户端代码如下package com.sun.client;import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;public class QCJChargeMain extends Thread {
/**
* 构造方法
* @param ip
* @param port
*/
private String ip;
private int port;
private Socket client;
public QCJChargeMain(String ip,int port){
this.ip=ip;
this.port=port;
}
/**
* 初始化客户端
* @param ip
* @param port
*/
private void InitClient(String ip,int port){
try {
client=new Socket(ip,port);
} catch (Exception e) {
}
}
/**
* 连接server端
*/
public void run(){
this.InitClient(ip, port);
try {
this.upload(client);
this.download(client);
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
//client.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
private void upload(Socket client){
DataOutputStream dos = null;
try {
dos=new DataOutputStream(client.getOutputStream());
QCJChargeUpload upload=new QCJChargeUpload();
String TCPMessage=upload.QCJChargeUpload();
dos.writeUTF(TCPMessage);
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
dos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
private void download(Socket client){
DataInputStream dis=null;
try {
dis=new DataInputStream(client.getInputStream());
String TCPMessage=dis.readUTF();
QCJChargeDownload download=new QCJChargeDownload(TCPMessage);
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
QCJChargeMain main=new QCJChargeMain("127.0.0.1",1234);
main.start();
}}
socketjava
解决方案 »
- java调用.Net Web Service传输数据,传输格式利用XML来传输,但XML不支持Unicode编码的字符串,该怎么办?
- jdbc连接sqlserver 2008没有反应,驱动jar包有,该有的一切都有。就是没反应.
- myeclipse6.0编译不了
- SSH三大框架开发为什么要独立写Dao层?
- 在线请教,Java调用wsdl报错
- 请问jfreechart怎么画股票图
- 常看人家提到 Hibernate 本身有分页功能,我想知道如何可以将 Hibernate 的分页功能在 JSF 中的 dataTable 上实现?
- 求一个java写的文本编辑器
- 急需一个daemon的例程,只能能对ip的报文读取就可以拉---100分
- 查看到用struts2标签的<s:iterator 在表格里循环一个集合 谁能给个例子用<s:iterator 在<option里循环一个集合呢
- Tapestry PropertySelection组件的问题!(急等)
- Weblogic8.1下的部署问题
java.net.SocketException: Socket is closed
at java.net.Socket.getInputStream(Socket.java:788)
at com.sun.client.QCJChargeMain.download(QCJChargeMain.java:75)
at com.sun.client.QCJChargeMain.run(QCJChargeMain.java:39)