20170304-java

UDP编程     1、UDP协议(用户数据协议)是无连接、不可靠的、无序的,速度比较快     2、UDP以数据报作为传输的载体:进行数据传输时,将数据封装成数据报(Datagram),在数据报             中标识数据所要到达的目的地Socket(主机地址和端口号),然后将数据报传输出去。     3、相关操作类:              DatagramPacket:表示数据报包,表述UDP通信的数据单元              DatagramSocket:进行端到端通信的类,实现基于UDP的Socket通信     4、服务端实现步骤:              (1) 在服务器端创建DatagramSockt,同时指定端口号              (2) 创建DatagramPackt               (3) 接受客户端发送的数据信息              (4) 读取数据          客户端实现步骤:              (1) 定义发送信息:发送的服务器地址、端口号、以及内容              (2) 创建DatagramPackt,包含将要发送的信息              (3) 创建DatagramSocket              (4) 发送数据 Socket总结:     1、多线程的优先级:未设置优先级可能会导致运行时速度慢,可降低优先级                thread.setPRiority(4);//设置线程优先级,范围为[1,10],默认为5.     2、关闭输入流和输出流                对于同一个socket,如果关闭了输出流,则与该输出流关联的socket也会关闭,所以一般不用               关闭流,直接关闭socket即可     3、使用TCP通信传输对象----课后练习     4、socket编程传递文件----课后练习 综合练习:使用JDBC+IO+Socket编写一个文件上传器,实现文件上传功能     主要功能:用户注册、用户登陆、上传文件 项目分析:     1、业务分析:              (1) 用户注册:客户端选择用户注册,提示输入用户名、密码、确认密码、校验成功后将用户信                                  息保存到数据库中,并提示用户注册成功。              (2) 用户登录:客户端选择用户登录,提示输入用户名和密码,验证成功则提示上传文件,验证                                  失败则给出提示信息,并可以重新登陆              (3) 文件上传:客户端输入上传文件的路径,并读取文件数据,通过输出流发送到服务器端,服                                  务器接受后将上传文件保存到数据库中 java多线程     1、进程与线程:              进程:程序(任务)的执行过程,持有资源(共享内存,共享文件)和线程,是资源和线程的载体              线程:是系统中最小的执行单元,同一个进程中有多个线程,线程共享进程的资源     2、java语言对线程的支持              Thread类              Runnable接口     3、正确停止java线程              stop()是不正确的方法              用while循环停止线程