`
haoningabc
  • 浏览: 1476588 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java socket备份

    博客分类:
  • java
 
阅读更多
package org.hao;

import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;

public class SocketClient {

	public static void main(String args[]) {
		test1();
	}
	public static void test1(){
		try{
			String str="cmd=update&key=124&data1=101&data2=123&data3=1233&data4=111&table=testhao";//修改好使
			ByteArrayInputStream innstream = new ByteArrayInputStream(str.getBytes());
			//Socket socket=new Socket("127.0.0.1",4700);
			//192.168.229.129
			//Socket socket=new Socket("192.168.229.129", 19111);
			Socket socket=new Socket("192.168.229.129", 19111);
			//BufferedReader sin=new BufferedReader(new InputStreamReader(System.in));
			BufferedReader sin=new BufferedReader(new InputStreamReader(innstream));
			PrintWriter os=new PrintWriter(socket.getOutputStream());
			//由Socket对象得到输出流,并构造PrintWriter对象
			BufferedReader is=new BufferedReader(new InputStreamReader(socket.getInputStream()));
			//由Socket对象得到输入流,并构造相应的BufferedReader对象
			String readline;
			os.println(sin.readLine());//将从系统标准输入读入的字符串输出到Server
			os.flush();//刷新输出流,使Server马上收到该字符串
			readline=is.readLine(); //从系统标准输入读入一字符串
			//while(!readline.equals("bye")){//若从标准输入读入的字符串为 "bye"则停止循环
			while(readline!=null){
				//System.out.println("Client:"+readline);//在系统标准输出上打印读入的字符串
				System.out.println("from Server:"+readline);//从Server读入一字符串,并打印到标准输出上
				System.out.println("from Server:"+is.readLine());
				readline=is.readLine(); //从系统标准输入读入一字符串
			} //继续循环
			os.close(); //关闭Socket输出流
			is.close(); //关闭Socket输入流
			socket.close(); //关闭Socket
		}catch(Exception e) {
			e.printStackTrace();
			//System.out.println("Error"+e); //出错,则打印出错信息
		}
	}
	public static void test(){
		try{
			//String str="cmd=clearall&table=testhao";//清空好使,会换log文件
			//String str="cmd=createtable&field=key_data1_data2_data3_data4&tablename=testhao";//建空好使
			//String str="cmd=insert&key=124&data1=12&data2=123&data3=1233&data4=123&table=testhao";//好使
			String str="cmd=update&key=124&data1=101&data2=123&data3=1233&data4=111&table=testhao";//修改好使
			ByteArrayInputStream innstream = new ByteArrayInputStream(str.getBytes());
			//Socket socket=new Socket("127.0.0.1",4700);
			//192.168.229.129
			//Socket socket=new Socket("192.168.229.129", 19111);
			Socket socket=new Socket("10.10.83.225", 19111);
			//BufferedReader sin=new BufferedReader(new InputStreamReader(System.in));
			BufferedReader sin=new BufferedReader(new InputStreamReader(innstream));
			PrintWriter os=new PrintWriter(socket.getOutputStream());
			//由Socket对象得到输出流,并构造PrintWriter对象
			BufferedReader is=new BufferedReader(new InputStreamReader(socket.getInputStream()));
			//由Socket对象得到输入流,并构造相应的BufferedReader对象
			String readline;
			readline=sin.readLine(); //从系统标准输入读入一字符串
			//while(!readline.equals("bye")){//若从标准输入读入的字符串为 "bye"则停止循环
			while(readline!=null){
				os.println(readline);//将从系统标准输入读入的字符串输出到Server
				os.flush();//刷新输出流,使Server马上收到该字符串
				System.out.println("Client:"+readline);//在系统标准输出上打印读入的字符串
				System.out.println("Server:"+is.readLine());//从Server读入一字符串,并打印到标准输出上
				System.out.println("Server:"+is.readLine());
				readline=sin.readLine(); //从系统标准输入读入一字符串
			} //继续循环
			os.close(); //关闭Socket输出流
			is.close(); //关闭Socket输入流
			socket.close(); //关闭Socket
		}catch(Exception e) {
			e.printStackTrace();
			//System.out.println("Error"+e); //出错,则打印出错信息
		}
	}

}

package org.hao;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;

public class SocketServer {
	public static void main(String[] args) {
		try {
			ServerSocket server = null;
			try {
				server = new ServerSocket(4700);
				// 创建一个ServerSocket在端口4700监听客户请求
			} catch (Exception e) {
				System.out.println("can not listen to:" + e);
				// 出错,打印出错信息
			}
			Socket socket = null;
			try {
				socket = server.accept();
				// 使用accept()阻塞等待客户请求,有客户
				// 请求到来则产生一个Socket对象,并继续执行
			} catch (Exception e) {
				System.out.println("Error." + e);
				// 出错,打印出错信息
			}
			String line;
			BufferedReader is = new BufferedReader(new InputStreamReader(
					socket.getInputStream()));
			// 由Socket对象得到输入流,并构造相应的BufferedReader对象
			PrintWriter os = new PrintWriter(socket.getOutputStream());
			// 由Socket对象得到输出流,并构造PrintWriter对象
			BufferedReader sin = new BufferedReader(new InputStreamReader(
					System.in));
			// 由系统标准输入设备构造BufferedReader对象
			System.out.println("Client:" + is.readLine());
			// 在标准输出上打印从客户端读入的字符串
			line = sin.readLine();
			// 从标准输入读入一字符串
			while (!line.equals("bye")) {
				// 如果该字符串为 "bye",则停止循环
				os.println(line);
				// 向客户端输出该字符串
				os.flush();
				// 刷新输出流,使Client马上收到该字符串
				System.out.println("Server:" + line);
				// 在系统标准输出上打印读入的字符串
				System.out.println("Client:" + is.readLine());
				// 从Client读入一字符串,并打印到标准输出上
				line = sin.readLine();
				// 从系统标准输入读入一字符串
			} // 继续循环
			os.close(); // 关闭Socket输出流
			is.close(); // 关闭Socket输入流
			socket.close(); // 关闭Socket
			server.close(); // 关闭ServerSocket
		} catch (Exception e) {
			System.out.println("Error:" + e);
			// 出错,打印出错信息
		}
	}

}
分享到:
评论

相关推荐

    基于socket编程实现文件备份

    本项目"基于socket编程实现文件备份"就是利用Java的Socket API来实现实时或定期的文件备份功能,尤其是在异地备份的情况下,确保数据的安全性和完整性。 首先,我们来看"Java Socket"。Java Socket是Java提供的网络...

    java考试系统(java Socket考试系统|java在线考试系统)

    socket考试系统,超漂亮软件界面设计 功能:实现多人同时在线考试,学生端向服务器提取试卷,服务器对学生的成绩,学生的试卷实现备份,有选择题,操作题,选择题会向服务器保存学生的试卷备份,同时以.rar格式保存学生的操作...

    java socket在线考试系统(java多人socket在线考试)

    功能:实现多人同时在线考试,学生端向服务器提取试卷,服务器对学生的成绩,学生的试卷实现备份,有选择题,操作题,选择题会向服务器保存学生的试卷备份,同时以.rar格式保存学生的操作题 软件界面请登陆...

    基于socket的用户注册,登录,文件上传

    1. **Java Socket**: Java Socket是Java提供的网络通信接口,它允许两个网络应用程序通过TCP/IP协议进行通信。在本项目中,Socket用于建立客户端与服务器端的连接,实现数据的双向传输。客户端通过创建Socket对象...

    基于Socket的公司员工管理系统

    总的来说,这个基于Socket的公司员工管理系统充分展示了Java技术在企业管理软件中的应用,通过Swing提供友好的用户交互,用Socket实现客户端与服务器的高效通信,采用多线程处理并发请求,结合数据库备份确保数据...

    JAVA实现远程文件读取

    在JAVA中,Socket是最基本的网络编程接口,用于建立客户端和服务器端之间的连接。RemoteFileClient类使用Socket连接到RemoteFileServer,以便读取远程文件。Socket编程可以分为两个部分:客户端编程和服务器端编程。...

    socket传输文件(java)

    Socket编程在IT领域中是网络通信的基础,尤其是在Java编程中,它是实现客户端-服务器通信的核心工具。...通过理解Socket的工作机制和实践文件传输的步骤,你能够创建自己的文件共享服务或实现远程文件备份等功能。

    android 安卓手机与电脑socket通信

    - 提供的Java服务器源码可能是用于监听和处理客户端连接的服务器程序,而手机App源码则包含了客户端的Socket连接和数据交互逻辑。这些代码会涉及到线程管理、异常处理以及数据序列化/反序列化等技术。 通过以上...

    java的基于Socket的文件传输服务

    Java中的基于Socket的...通过学习和实践基于Socket的文件传输服务,开发者可以深入理解网络编程的核心原理,并能构建自己的文件共享或备份系统。同时,这也为其他高级网络应用,如聊天服务器、分布式系统等打下基础。

    java 操作数据库备份(csdn)————程序.pdf

    【Java 操作数据库备份】 在Java编程中,对数据库进行备份是常见的操作,尤其是在系统维护和数据保护方面。本文将详细讲解如何使用Java实现数据库的备份功能,主要涉及线程处理、配置文件读取和数据库操作等技术。 ...

    基于socket异步传输的选课系统

    在Java中,这可以通过创建Socket对象,指定服务器的IP地址和端口号来实现。一旦连接建立,客户端就能通过Socket的输入输出流进行数据的读写。 服务器端(server.rar)则需要监听特定端口,等待客户端的连接请求。当...

    基于socket的简单聊天程序

    Java中的Socket类代表网络上的一个端点,ServerSocket类则用于监听特定端口的连接请求。在聊天程序中,服务器端创建ServerSocket监听客户端的连接,当有新的客户端连接时,ServerSocket会创建一个新的Socket对象...

    java多线程和网络编程结合

    Java多线程与网络编程是两个重要的编程领域,它们在构建高效、响应迅速的应用程序时起...这种设计模式在许多实时系统和服务中都有应用,如监控系统、自动备份服务等,充分展示了Java在构建复杂网络应用方面的强大能力。

    基于JAVA的TTMS剧院管理系统

    7. **系统设置**:包括权限管理、数据库备份恢复、系统参数配置等功能,确保系统的安全和正常运行。 这个系统的设计和实施体现了Java跨平台的优势,无论是在Windows、Mac还是Linux操作系统上,都能稳定运行。通过...

    基于java文件传输示例

    基于Java的Socket文件传输,不仅体现了网络通信的基本原理,也是实现远程文件共享、备份等服务的关键技术之一。通过上述分析与示例,相信读者对于如何利用Java进行高效、可靠的文件传输有了更深入的理解。在未来的...

    android socket

    Android Socket基于Java的Socket API,它提供了基于TCP/IP协议的网络通信能力。Socket分为ServerSocket和Socket两种类型,ServerSocket用于监听客户端连接,Socket则用于建立与服务器的连接并进行数据交换。 2. ...

    Java Tcp 文件传输

    在Java中,TCP通信主要通过`java.net.Socket`和`java.net.ServerSocket`类来实现。 2. **ServerSocket类**:服务器端使用`ServerSocket`创建一个监听特定端口的套接字。这个端口是服务器等待客户端连接的地方。一旦...

    java 图书馆管理系统 mysql

    这包括对用户输入数据的验证、使用HTTPS协议加密传输、设置合理的权限控制以及定期备份数据库等措施。 7. 系统测试与优化 开发完成后,系统需进行功能测试、性能测试和压力测试,确保所有模块正常运行且满足性能...

    纯java 网络硬盘

    1. **Java网络编程**:Java中的Socket编程是实现网络通信的基础,通过ServerSocket类创建服务器端监听端口,Socket类建立客户端连接,实现数据的收发。 2. **HTTP协议**:通常,网络硬盘会采用HTTP或HTTPS协议与...

    Java collection_java_控制服务器_服务器_

    在服务器控制中,可能需要列出目录内容、移动或复制文件以实现数据备份或迁移。 除了上述知识点,还可能涉及到并发处理(如使用ConcurrentHashMap进行线程安全的集合操作)、序列化(将对象转换为字节流,以便在...

Global site tag (gtag.js) - Google Analytics