将java编写的socket程序运行于linux服务器上
2016-02-24 19:39
489 查看
1.使用eclipse编写一个简单的服务器程序
MyserverSocket.java
package com.serverSocket.main; //服务器程序,连接服务器后会接收到welcome,在没对他发送一组数据后,将返回OK,并且在控制台显示 public class MyserverSocket { public static void main(String[] args) { new ServerListener().start(); //建立实时监听客服端 } }
ServerListener.java
package com.serverSocket.main; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; import javax.swing.JOptionPane; //该类用于等待客服端连接 public class ServerListener extends Thread { @Override public void run() { try { ServerSocket serverSocket = new ServerSocket(23457); //端口 while(true){ //每当有一个客服端连接就有一个socket Socket socket = serverSocket.accept();//阻塞 // JOptionPane.showMessageDialog(null, "有客服端连接到本地的23457端口"); // 获得输入流 InputStream inputStream = socket.getInputStream(); //获得输出流 OutputStream os=socket.getOutputStream(); PrintWriter pw=new PrintWriter(os); //进入时输入显示welcome String reply="welcome"; pw.write(reply); pw.flush(); //读取用户信息 byte buffer[] = new byte[1024 * 4]; int temp = 0; // 没接收到一段数据将其显示在控制台,并且返回OK while ((temp = inputStream.read(buffer)) != -1) { System.out.println(new String(buffer, 0, temp)); pw.write("OK!"); pw.flush(); } //5.关闭资源 pw.close(); os.close(); // br.close(); inputStream.close(); socket.close(); serverSocket.close(); } } catch (IOException e) { e.printStackTrace(); } } }
这里由于accept方法将阻塞线程,我于是新建立了一个线程来监听端口
工程下载
2.将程序导出为jar包
点击eclipse 左上角 File - > Export,选择java栏里面的jarnext,选择你需要打包的工程,选择放置位置后再next
最后选择程序的入口
3.将包上传到服务器
这里可以直接在服务器里面使用代码上传,也可以使用winscp软件上传我这里使用了后者,因为方面嘛
建立连接
拖拽放入文件
4.运行
笔者使用的是cenos系统,首先测试是否安装java,如果没有可以输入yum -y list java* //查看java包 yum -y install java-1.7.0-openjdk* //安装java包
之后可以使用运行代码
java -jar xxxx.jar
相关文章推荐
- Linux netstat 命令
- centos6.5下vsftpd服务的安装及配置并通过pam认证实现虚拟用户文件共享
- centos6.5下vsftpd服务的安装及配置并通过pam认证实现虚拟用户文件共享
- linux c Makefile 文件制作(由简至繁)
- linux 安装sysstat使用iostat、mpstat、sar、sa
- Linux中操作SVN
- linux下perl及cgi.pm的安装(perl-5.22.1)
- Linux系统中xorg.conf文件简介
- linux图形界面基本知识(X、X11、Xfree86、Xorg、GNOME、KDE之间的关系)
- Linux内核分析:实验一
- CentOS 6.5 英文提示修改为中文提示的方法
- 用DNW工具在ARM-Cortex-A8开发板烧写Linux系统详细讲解
- Linuxc编译和ARM程序编译过程详解
- arm9+linux fl2440 led 驱动 plat_led.c
- Centos7搭建LNMP环境
- centos 6.5 搭建ftp服务器
- centos6.3(64位) 安装apr
- centos 6.5 搭建php
- 在VMware8.0.4安装centos6.3出现蓝屏,显示“anaconda: Fatal IO error 104 (Connection reset by peer) on X server :1.0. install exited abnormally [1/1]”?
- linux常用命令大全