易截截图软件、单文件、免安装、纯绿色、仅160KB

一篇不错的介绍Java Socket编程的文章

 
事实上网络编程简单的理解就是两台计算机相互通讯数据而已。对于程序员而言,去掌握一种编程接口并使用一种编程模型相对就会显得简单的多了。Java SDK提供一些相对简单的Api来完成这些工作,Socket就是其中之一。
对于Java而言。这些Api存在与Java.net这个包里面。因此只要导入这个包就可以准备网络编程了。网络编程的基本模型就是客户机到服务器模型。简单的说就是两个进程之间相互通讯,然后其中一个必须提供一个固定的位置,而另一个则只需要知道这个固定的位置,并去建立两者之间的联系。然后完成数据的通讯就可以了。这里提供固定位置的通常称为服务器,而建立联系的通常叫做客户端。基于这个简单的模型,就可以进入网络编程。
Java对这个模型的支持有很多种Api。而这里我只想介绍有关Socket的编程接口。对于Java而言已经简化了Socket的编程接口。首先我们来讨论有关提供固定位置的服务方是如何建立的。Java提供了ServerSocket来对其进行支持。事实上当你创建该类的一个实力对象并提供一个端口资源你就建立了一个固定位置可以让其他计算机来访问你。
 
ServerSocket server=new
ServerSocket(6789);
这里稍微要注意的是端口的分配必须是唯一的。因为端口是为了唯一标识每台计算机唯一服务的。另外端口号是从0~65535之间的,前1024个端口已经被Tcp/Ip 作为保留端口,因此你所分配的端口只能是1024个之后的。
好了。我们有了固定位置。现在所需要的就是一根连接线了。该连接线由客户方首先提出要求。因此Java同样提供了一个Socket对象来对其进行支持。只要客户方创建一个Socket的实例对象进行支持就可以了。
 
Socket client=new
Socket(InetAddress.getLocalHost(),5678);
客户机必须知道有关服务器的IP地址。对于着一点Java也提供了一个相关的类InetAddress 该对象的实例必须通过它的静态方法来提供。它的静态方法主要提供了得到本机IP 和通过名字或IP直接得到InetAddress的方法。

 
好了,上面的方法基本可以建立一条连线让两台计算机相互交流了。可是数据是如何传输的呢?事实上I/O操作总是和网络编程息息相关的。因为底层的网络是继续数据的。除非远程调用,处理问题的核心在执行上。
否则数据的交互还是依赖于IO操作的。所以你也必须导入Java。io这个包。Java的IO操作也不复杂。它提供了针对于字节流和Unicode的读者和写者,然后也提供了一个缓冲用于数据的读写。
 
BufferedReader


相关文档:

Java第二次上机(正则表达式)

编写一个程序,判断一个字符串是否是合法的Java标识符;
//create string
import java.util.regex.*;
public class Split {
public static void main (String[] args) {
Pattern pattern = Pattern.compile("[,]");
String[] arrStr = pattern.split("abstract,break,byte,boole ......

ArrayParameters.java (j基 p45)

//传递参数,和c中传地址有点像
public class ArrayParameters {
public static void changeOrNot (int i, double[] x) {
i =-1;
x[0] = -2.0;
double[] y = x;
y[1] = -3.0;
double[] z = {4.0, 4.0, 4.0};
x = z;
}
public static void main (String[] args) {
String s1 = ......

java分页代码用于jsp及java并带有测试方法


import java.util.ArrayList;
import java.util.List;
public class FenYe
{
     static double allpage=0; //总页数
     static double currpage=0; //当前页
     static double pagesize=10; //显示行
     static int sta ......

java获得项目路径

    /**
  * 获取服务器的web地址
  * @return
  */
 private String getWebPath(){ 
  
   String _tempStr = Thread.currentThread().getContextClassLoader().getResource("").toString();
  
   _tempStr=_tempStr.substring ......

JAVA 日期相关(转载)

/**
* 有关日期工具类(extends TimeUtil)
*
* TimeUtil主要功能有:
* 1.各种日期类型(字符,util.Date,sql.Date,Calendar等)转换
* 2.获取指定日期的年份,月份,日份,小时,分,秒,毫秒
* 3.获取当前/系统日期(指定日期格式)
* 4.获取字符日期一个月的天数
* 5.获取指定月份的第一天,最后一天
*
* Date ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号