`

网络编程总结java

阅读更多

网络编程重点知识点
1、 http向服务器发起请求的几种方式
1.1 get
1.2 post
1.3 get与post的区别
在FORM提交的时候,如果不指定Method,则默认为GET请求(.net默认是POST),Form中提交的数据将会附加在url之后,以?分开与url分开。字母数字字符原样发送,但空格转换为“+”号,其它符号转换为%XX,其中XX为该符号以16进制表示的ASCII(或ISO Latin-1)值。GET请求请提交的数据放置在HTTP请求协议头中,而POST提交的数据则放在实体数据中;GET方式提交的数据最多只能有2048字节,而POST则没有此限制。POST传递的参数在doc里,也就http协议所传递的文本,接受时再解析参数部分。获得参数。一般用POST比较好。POST提交数据是隐式的,GET是通过在url里面传递的,用来传递一些不需要保密的数据,GET是通过在URL里传递参数,POST不是。
2、 servlet、servlet容器和web服务器
当客户端向web服务器发送http请求时,web服务器判断请求内容的类型,如果是静态html网页数据,则web服务器将自行处理,然后产生响应信息;如果涉及动态的servlet请求,web服务器会将http请求转交给servlet容器处理,servlet容器通过调用servlet类产生响应信息,结果交给web服务器,再由web服务器回送给客户端。
servlet容器和servlet如何处理http请求:web服务器启动后,servlet容器会实例化一个servlet实体。当web服务器接收到一个动态http请求时,它会把请求转交给servlet容器。此时servlet容器会启动一个线程,代表该请求;当接收到第二次请求时,servlet容器再产生第二个线程代表该请求。因此,servlet容器是以多线程的方式来执行servlet服务的。
3、 servlet如何处理http请求
3.1 java servlet API
  javax.servlet包:定义了servlet、web应用程序、web容器之间的契约。
  javax.servlet.http包:对javax.servlet包进行扩充,专用于对http协议的支持。
3.2 servlet的生命周期
其中3个方法代表了Servlet的生命周期:
1、init方法:负责初始化Servlet对象,并且传递一个servletConfig对象给它。
2、service方法:负责响应客户的请求。
3、destroy方法:当Servlet对象退出生命周期时,负责释放占用的资源。
创建Servlet对象的时机
1、Servlet容器启动时:读取web.xml配置文件中的信息,构造指定的Servlet对象,创建ServletConfig对象,同时将ServletConfig对象作为参数来调用Servlet对象的init方法。
2、在Servlet容器启动后:客户首次向Servlet发出请求,Servlet容器会判断内存中是否存在指定的Servlet对象,如果没有则创建它,然后根据客户的请求创建HttpRequest、 HttpResponse对象,从而调用Servlet
对象的service方法。
3、Servlet的类文件被更新后,重新创建Servlet
Servlet容器在启动时自动创建Servlet,这是由在web.xml文件中为Servlet设置的<load-on-startup>属性决定的。从中能看到同一个类型的Servlet对象在Servlet容器中以单例的形式存在。
3.3 HttpServlet类处理http请求的过程
Servlet的请求可能包含多个数据项。当Web容器接收到某个对Servlet的请求时,它把它封装成一个HttpServletRequest对象,然后把此对象传给Servlet的对应的服务方法。服务方法通常是doGet()和doPost()方法。另外HttpServlet也提供了一些高级的处理方法,它们有doPut、doTrace和doDelete。
public void doGet(HttpServletRequest request,HttpServletResponse response)throws IOException,ServletException{}
   3.4 获取客户端请求信息
     3.4.1 用于获取请求参数的方法
      通过HttpServletRequest对象的三种方法来获取用户请求参数
public String getParameter(String name)
public Enumeration getParameterNames()
public String[] getParameterValues(String name)


   3.4.2 在请求中使用属性
      public void setAttribute(String name,Object 0)
      public Object getAttribute(String name)
      public Enumeration getAttributeNames()
      public void removeAttribute(String name)
     注:attribute与parameter的区别:parameter是由用户设置传递给服务器的,attribute是由servlet在同一请求的不同地方设置和读取的。
  3.5 发送响应
    3.5.1 设置重定向
       response.setRedirect(String location)
      这句代码其实内部做了两件事:1、将响应码设置为302; 2、将响应头中的Location的值设置为我们指定的网址
定时刷新/跳转
response.setHeader("Refresh", "5;URL=跳转到的网址"); 等待5秒,自动跳转到我们制定的网址上。
   3.5.2 发送响应信息
       //常用的一个响应头的设置
response.setCharacterEncoding("GBK"); 告诉容器,以GBK编码的形式发送数据
response.setContentType("application/vnd.ms-excel"); 告诉客户端,当前发送到数据是什么格式,客户端就可以进行相应的处理
audio/x-midi *.mid *.midi MIDI-Dateien
audio/x-mpeg *.mp2 MPEG-Dateien
audio/x-wav *.wav Wav-Dateien
image/gif *.gif GIF-Dateien
image/jpeg *.jpeg *.jpg *.jpe JPEG-Dateien
image/x-windowdump *.xwd X-Windows Dump
text/css *.css CSS Stylesheet-Dateien
text/html *.htm *.html *.shtml -Dateien
text/java****** *.js Java******-Dateien
text/plain *.txt reine Textdateien
video/mpeg *.mpeg *.mpg *.mpe MPEG-Dateien
      在servlet中,我们可以选择对两种类型的数据发送使用不同的类。
(1)字符型用PrintWriter
PrintWriter pw = response.getWriter();
pw.println("数据");
(2)字节型用ServletOutputStream
ServletOutputStream sos = response.getOutputStream();
sos.write(bytes,0,length);
3.6 web应用程序的结构与部署
   3.6.1 WEB-INF目录
    每一个Web应用程序都必须有一个WEB-INF目录
    WEB-INF目录主要分为:
(1) classes:主要存放类文件
(2) lib:主要包含类库jar文件,在web应用程序运行时,servlet容器会自动将WEB-INF/lib目录下的jar或zip文件装载到CLASSPATH路径下。
(3) web.xml部署描述符文件:包含servlet定义、url映射、连接超时等
  3.6.2 web应用打包(war)文件
4、 ServletContext对象
  WEB容器在启动时,它会为每个WEB应用程序都创建一个对应的ServletContext对象,它代表当前web应用。
  由于一个WEB应用中的所有Servlet共享同一个ServletContext对象,因此Servlet对象之间可以通过ServletContext对象来实现通讯。ServletContext对象通常也被称之为context域对象。
4.1 设置web应用程序上下文初始化参数
<context-param>
<param-name>url</param-name>
<param-value>jdbc:mysql://localhost:8080/</param-value>
</context-param>
/*获取ServletContext对象*/
ServletContext context = this.getServletContext();
或者ServletConfig config=getServletConfig();
ServletContext context = config.getServletContext();
/*获取初始化参数*/
//获取指定名称的初始化参数
String url = context.getInitParameter("url");
/*与属性设置相关的方法*/
public void setAttribute(String name,Object object);
public Object getAttribute(String name)
public void removeAttribute(String name)
/*读取文件真实路径*/
String path =context.getRealPath("WEB-INF/classes/db.properties");
5、 与ServletContext对象相关的侦听器和事件
5.1 ServletContextListener接口
//ServletContext对象进入初始化阶段
public void contextInitialized(ServletContextEvent sce){}
//ServletContext对象进入销毁阶段
public void contextDestoryed(ServletContextEvent sce){}
部署
web.xml ->  <listener><listener-class></listener-class></listener>
5.2 ServletContextAttributeLIstener接口
public void AttributeAdded(ServletContextArributeEvent sce){}
public void AttributeRemoved(ServletContextArributeEvent sce){}
public void AttributeReplaced(ServletContextArributeEvent sce){}

6、 过滤器Filter
6.1 Filter接口的3个方法
public void init(FilterConfig filterConfig)throws ServletException
public void doFilter(ServletRequest request,ServletResponse
response,FilterChain chain)throws java.io.IOException,ServletException
public void destroy()
6.2部署过滤器
在<filter>元素内,<description>、<display-name>、<icon>元素和以往servlet的配置中的相同。<filter-name>用于为过滤器指定一个名字,该元素的内容不能为空。<filter-class>元素用于指定过滤器的完整的限定类名。<init-param>元素用于为过滤器指定初始化参数,它的子元素<param-name>指定参数的名字,<param-value>指定参数的值。在过滤器中,可以使用FilterConfig接口对象来访问初始化参数。
<filter-mapping>元素用于指定过滤器关联的url样式或者Servlet。
其中<filter-name>子元素的值必须是在<filter>元素中声明过的过滤器的名字。<url-pattern>元素和<servlet-name>元素可以选择一个;<url-pattern>元素指定过滤器关联的URL样式;<servlet-name>元素指定过滤器对应的Servlet。用户在访问<url-pattern>元素指定的URL上的资源或<servlet-name>元素指定的Servlet时,该过滤器才会被容器调用。<filter-mapping>元素还可以包含0到4个<dispatcher>,指定过滤器对应的请求方式,可以是REQUEST,INCLUDE,FORWARD和ERROR之一,默认REQUEST.
注意点:
chain.doFilter(request,response);//本句前只能处理请求信息,本句后只能处理响应信息。
<filter-mapping>标记有先后顺序,它的声明顺序说明容器是如何形成过滤器链的。
7、 维护会话session
默认情况下大多数web容器靠cookie来建立会话,如果客户关闭了浏览器的cookie功能,则使用url重写技术
7.1 URl重写技术
  URL重写式在标明Web请求地址的URL中加入会话标识,如在网址后面加上会话ID来实现。
7.2 cookie技术
  利用cookie跟踪维护客户信息的工作机制:
(1) 当客户首次访问网站时,服务器产生一个唯一的ID号,同时产生用于存放该客户会话信息的小表。
(2) 服务器同时维护一张保存所有客户信息的大表,将新生成的ID号和存放会话信息的小表也存放在里面,以ID号作为查找的依据。
(3) 服务器生产一个cookie,以ID号作为cookie的值发送给客户端
(4) 客户端浏览器存储该cookie,并在后续的访问中发回该cookie
(5) 在后续的访问中服务器根据客户发回的cookie取出ID值并以此为依据从大表中取出对应的该客户的会话信息。
HttpServletResponse向客户发送cookie
public void addCookie(Cookie cookie)
   7.3 使用隐藏表单
      <input type=”hidden” name=”” value=””>
8、 使用HttpSession对象维护会话
8.1 getSession()方法的两种形式
getSession() 返回与当前请求相关联的会话,如果当前请求没有一个相关联的会话,就创建一个并返回。
getSession(boolean create)返回与当前请求相关联的会话,如果当前请求没有一个相关联的会话,create为true时,则创建一个并返回,为false时,则返回null。
8.2 原理
  当用户第一次发出请求时,servlet容器会建立一个HttpSession对象,并自动分配一个web应用范围内唯一的sessionID与之对应。
  当用户第二次发出请求时,用户的请求信息中包含servlet容器传给它的sessionID。servlet容器就会根据传回的sessionID将原来建立的HttpSession对象将请求关联起来。所以,对于同一个用户,调用getSession()返回的将是同一个Httpsession对象。
8.3 终止HTTP会话
(1)session.invalidate();
  (2)session.setMaxInactiveInterval(600)//设置http会话超时时间,单位秒
(3)web.xml 单位分钟
<session-config><session-timeout>30</session-timeout></session-config>
8.4 监听会话对象
(1)HttpSessionListener接口
(2)HttpSessionAttributeListener接口
9、JSP语法
  9.1 元素和模板数据
Jsp网页主要分为元素与模板数据两部分
jsp元素:指令元素、脚本元素、操作元素
  9.2 注释
   (1)客户端可以看到的注释
      <!-- -->
(2)开发程序员专用注释
  <%-- comment --%>
  <%/** comment */%>
  9.3 转义规则
   ‘ -> \’  ,  “ -> \”  ,  \  -> \\  ,<%  ->  &lt;% ,  %>  ->  %&gt;
  9.4 脚本元素
   (1)声明
     <%!  %>
   (2)小脚本
<% java代码 %>
(3)表达式
<%=expression%>
  9.5 指令元素
   (1)page指令
      <%@ page language="java" contentType="text/html; charset=GBK"%>
   (2)include指令
     <%@ include file=”” %>
      静态包含其他文件,file不能为一个变量URL
(3) taglib指令
<%@taglib uri=”” prefix=””%>
让用户使用第三方标签
10、 jsp操作元素
10.1 <jsp:include>
   <jsp:include page=”” flush=””/> <jsp:param name=”” value=””/>
   包含动态或静态文件
10.2 <jsp:forward>
   <jsp:forwad page=””> <jsp:param name=”” value=””/>
   将客户端所发出的请求,从一个jsp网页转交给另一个jsp网页
10.3 <jsp:param>
   <jsp:param name=”” value=””/>
   通常与<jsp:include>,<jsp:forward>搭配使用
11、 JSP中的9大隐含对象
一、page 对象
page对象代表JSP本身,更准确地说它代表JSP被转译后的Servlet,它可以调用Servlet类所定义的方法。
二、config 对象
config 对象里存放着一些Servlet 初始的数据结构。
config 对象实现于javax.servlet.ServletConfig 接口,它共有下列四种方法:
1. public String getInitParameter(name)
2. public java.util.Enumeration getInitParameterNames( )
3. public ServletContext getServletContext( )
4. public Sring getServletName( )
三、request 对象
request 对象包含所有请求的信息,如:请求的来源、标头、cookies和请求相关的参数值等等。
request 对象实现javax.servlet.http.HttpServletRequest接口的,所提供的方法可以将它分为四大类:
1.储存和取得属性方法;
1. void setAttribute(String name, Object value)设定name属性的值为value
2. Enumeration getAttributeNamesInScope(int scope)取得所有scope 范围的属性
3. Object getAttribute(String name)取得name 属性的值
4. void removeAttribute(String name)移除name 属性的值
2.取得请求参数的方法
1. String getParameter(String name) 取得name 的参数值Enumeration
2. getParameterNames( ) 取得所有的参数名称String[]
3. getParameterValues(String name) 取得所有name 的参数值
4. Map getParameterMap( )取得一个要求参数的Map
3.能够取得请求HTTP 标头的方法
1. String getHeader(String name)取得name 的标头
2. Enumeration getHeaderNames()取得所有的标头名称
3. Enumeration getHeaders(String name)取得所有name 的标头
4. int getIntHeader(String name)取得整数类型name 的标头
5. long getDateHeader(String name) 取得日期类型name 的标头
6. Cookie [] getCookies( ) 取得与请求有关的cookies
4.其他的方法
1. String getContextPath( )取得Context 路径(即站台名称)
2. String getMethod( )取得HTTP 的方法(GET、POST)
3. String getProtocol( )取得使用的协议 HTTP/1.1、HTTP/1.0 )
4. String getQueryString( )取得请求的参数字符串,不过,HTTP的方法必须为GET
5. String getRequestedSessionId( ) 取得用户端的Session ID
6. String getRequestURI( )取得请求的URL,但是不包括请求的参数字符串
7. String getRemoteAddr( )取得用户的IP 地址
8. String getRemoteHost( )取得用户的主机名称
9. int getRemotePort( )取得用户的主机端口
10. String getRemoteUser( ) 取得用户的名称
11. void etCharacterEncoding(String encoding)设定编码格式,用来解决窗体传递中文的问题
四、response 对象
response 对象主要将JSP 处理数据后的结果传回到客户端。
response 对象是实现javax.servlet.http.HttpServletResponse 接口。response对象所提供的方法。
1.设定表头的方法
1. void addCookie(Cookie cookie)新增cookie
2. void addDateHeader(String name, long date)新增long类型的值到name标头
3. void addHeader(String name, String value)新增String类型的值到name标头
4. void addIntHeader(String name, int value)新增int类型的值到name标头
5. void setDateHeader(String name, long date)指定long类型的值到name标头
6. void setHeader(String name, String value)指定String类型的值到name标头
7. void setIntHeader(String name, int value)指定int类型的值到name标头
2.设定响应状态码的方法
1. void sendError(int sc)传送状态码(status code)
2. void sendError(int sc, String msg)传送状态码和错误信息
3. void setStatus(int sc)设定状态码
3.用来URL 重写(rewriting)的方法
1. String encodeRedirectURL(String url)对使用sendRedirect( )方法的URL予以编码
五、out 对象
out 对象能把结果输出到网页上。
out主要是用来控制管理输出的缓冲区(buffer)和输出流(output stream)。
1. void clear( )清除输出缓冲区的内容
2. void clearBuffer( )清除输出缓冲区的内容
3. void close( )关闭输出流,清除所有的内容
4. int getBufferSize( )取得目前缓冲区的大小(KB)
5. int getRemaining( )取得目前使用后还剩下的缓冲区大小(KB)
6. boolean isAutoFlush( )回传true表示缓冲区满时会自动清除;false表示不会自动清除并且产生异常处理
六、session 对象
session对象表示目前个别用户的会话(session)状况。
session对象实现javax.servlet.http.HttpSession接口,HttpSession接口所提供的方法
1. long getCreationTime()取得session产生的时间,单位是毫秒
2. String getId()取得session 的ID
3. long getLastAccessedTime()取得用户最后通过这个session送出请求的时间
4. long getMaxInactiveInterval()取得最大session不活动的时间,若超过这时间,session 将会失效
5. void invalidate()取消session 对象,并将对象存放的内容完全抛弃
6. boolean isNew()判断session 是否为"新"的
7. void setMaxInactiveInterval(int interval)设定最大session不活动的时间,若超过这时间,session 将会失效
七、application对象
application对象最常被使用在存取环境的信息。
因为环境的信息通常都储存在ServletContext中,所以常利用application对象来存取ServletContext中的信息。
application 对象实现javax.servlet.ServletContext 接口,ServletContext接口容器所提供的方法
1. int getMajorVersion( )取得Container主要的Servlet API版本
2. int getMinorVersion( )取得Container次要的Servlet API 版本
3. String getServerInfo( )取得Container的名称和版本
4. String getMimeType(String file)取得指定文件的MIME 类型
5. ServletContext getContext(String uripath)取得指定Local URL的Application context
6. String getRealPath(String path)取得本地端path的绝对路径
7. void log(String message)将信息写入log文件中
8. void log(String message, Throwable throwable)将stack trace 所产生的异常信息写入log文件中
八、pageContext对象
pageContext对象能够存取其他隐含对象。
1.pageContext对象存取其他隐含对象属性的方法,此时需要指定范围的参数。
1. Object getAttribute(String name, int scope)
2. Enumeration getAttributeNamesInScope(int scope)
3. void removeAttribute(String name, int scope)
4. void setAttribute(String name, Object value, int scope)
范围参数有四个,分别代表四种范围:PAGE_SCOPE、REQUEST_SCOPE、SESSION_SCOPE、APPLICATION_SCOPE
2.PageContext对象取得其他隐含对象的方法
Exception getException( )回传目前网页的异常,不过此网页要为error page,
JspWriter getOut( )回传目前网页的输出流,例如:out
Object getPage( )回传目前网页的Servlet 实体(instance),例如:page
ServletRequest getRequest( )回传目前网页的请求,例如:request
ServletResponse getResponse( )回传目前网页的响应,例如:response
ServletConfig getServletConfig( )回传目前此网页的ServletConfig 对象,例如:config
ServletContext getServletContext( ) 回传目前此网页的执行环境(context),例如:application
HttpSession getSession( )回传和目前网页有联系的会话(session),例如:session
3.PageContext对象提供取得属性的方法
Object getAttribute(String name, int scope)回传name 属性,范围为scope的属性对象,回传类型为Object
Enumeration getAttributeNamesInScope(int scope)回传所有属性范围为scope 的属性名称,回传类型为Enumeration
int getAttributesScope(String name)回传属性名称为name 的属性范围
void removeAttribute(String name)移除属性名称为name 的属性对象
void removeAttribute(String name, int scope)移除属性名称为name,范围为scope 的属性对象
void setAttribute(String name, Object value, int scope)指定属性对象的名称为name、值为value、范围为scope
Object findAttribute(String name)寻找在所有范围中属性名称为name 的属性对象
九、exception对象
若要使用exception 对象时,必须在page 指令中设定(isErrorPage=”true”)。才能使用。
exception提供的三个方法:
getMessage( )
getLocalizedMessage( )、
printStackTrace(new java.io.PrintWriter(out))
12、 javaBean的概念
(1) bean类必须有一个零参数构造函数
(2) bean类不该有public的实例变量
(3) 通过访问方法getXxx和setXxx来访问属性值
13、 在JSP中使用JavaBean
13.1 <jsp:useBean>
  用于在jsp页面中实例化一个javaBean组件
<jsp:useBean id=”name” class=”className” scope=”page|request|session|application”/>
13.2 <jsp:setProperty>
(1)<jsp:setProperty name=”name” property=”property” value=”stringValue”/>
(2)<jsp:setProperty id=”name” property=”*”/>
jsp引擎将用户请求参数与javabean进行自动匹配
13.3<jsp:getProperty>
<jsp:getProperty name=”beanName” Property=”prop”/>
14、 JDBC
向数据库系统发出请求建立连接
向数据库系统发送SQL语句
为返回的结果集中的数据确定相应的数据类型
查询和处理结果集
处理数据库异常
关闭连接
15、 JDBC API
java.sql.DriverManager//用于加载驱动,数据库连接的建立
java.sql.Connection//用于处理特定的数据库连接
java.sql.Statement//处理数据库连接中的SQL语句
java.sql.Result//用于处理数据库操作的结果集
java.sql.PreparedStatement//用于处理带有参数的SQL语句
java.sql.CallableStatement//用于处理数据库存储过程
16、 连接数据库
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn=DriverManager.getConnection("jdbc:odbc:db1");
Statement st=conn.createStatement();
ResultSet rs=st.executeQuery("select * from student");
while(rs.next())
{
sno=rs.getString("sno");
sname=rs.getString("sname");
}
rs.close();
st.close();
conn.close();


分享到:
评论

相关推荐

    java网络编程总结

    java的网络编程总结,包含TCP/UDP协议,还有控制台聊天室的实现,每个内容都有详细的解释。

    Java中的网络编程学习总结

    Java中的网络编程学习总结Java中的网络编程学习总结

    java网络编程详解(牛人总结)

    java网络编程技术详解,绝对通俗易懂,牛人亲手总结

    Java网络编程-JavaSocket编程总结

    Java网络编程 基于Socket的编程

    Java网络编程总结

    NULL 博文链接:https://newtime.iteye.com/blog/432449

    Java网络高级编程

    本书第1-3章介绍了网络进程通信的主要技术。其中,第1章介绍网络进程通信的基础类...本书可作为高校计算机应用、网络信息、电子商务技术等专业级学生及研究生的教材,也可以作为Java网络编程爱好者的自学参考书。

    java网络编程课件.zip

    一个完美的java网络编程课件,详细总结了java的网络相关知识。

    java网络编程http通信

    通过java网络编程深入理解http非阻塞通信和阻塞通信,以及http协议在网络中的应用 源码包每一行都有注释,在代码里面每一个类都有详细的注释来解释这个类的功能这个方法的功能,调用哪一个类的哪一个功能等等。 压缩...

    总结java_socket编程.doc

    一个是如何准确的定位网络上一台或多台主机,另一个就是找到主机后如何可靠高效的进行数据传输。

    Java后端核心知识总结700页

    Java后端核心知识总结:并发编程篇 Java后端核心知识总结:MySQL篇 Java后端核心知识总结:Redis Java后端核心知识总结:RabbitMQ Java后端核心知识总结:Kafak Java后端核心知识总结:Dubbo篇 Java后端核心知识总结...

    java网络编程复习资料

    网络编程复习资料。 ppt。老师总结的。 需呀偶的同学可以借鉴借鉴一下。

    Java 网络编程实验报告 含实验总结

    I/O操作 线程实验 基本聊天室代码 各种实验代码 标准报告

    java网络编程TCP/IP协议

    通过java网络编程初步理解TCP/IP协议 源码包每一行都有注释,在代码里面每一个类都有详细的注释来解释这个类的功能这个方法的功能,调用哪一个类的哪一个功能等等。 压缩包包含实验报告(实验原理、实验环境、实验...

    一部分网络编程笔记总结

    渣渣英语学java网络编程一部分

    coejava网络编程学习总结.pdf

    (十)网络编程学习总结.pdfcoejava网络编程学习总结.pdfcoejava网络编程学习总结.pdfcoejava网络编程学习总结.pdfcoejava网络编程学习总结.pdfcoejava网络编程学习总结.pdfcoejava网络编程学习总结.pdf

    总结java_socket编程

    java关于socket的编程,如何建立连接,如何通信之类的简短介绍

    Java基础编程异常总结

    Java基础编程异常总结

    java 网络编程入门实例总结

    java 网络编程入门,含有UDP通信源码DatagramSocket,TCP通信源码Socket ServerSocket,多个带注释的实例,方便入门学习

    编程实践:Java进阶100例

    中文名: 编程实践:Java进阶100例 原名: 编程实践:Java进阶100例 别名: Java 作者: 李相国等. 译者: 李相国等. 图书分类: 软件 ...Java行业是一直被业界看重的既有前景又有钱景的行业,越来越...第十五章:网络编程

    Java2游戏编程.pdf

    13.1 Java网络编程概述 13.2 基于连接的网络和无连接网络之间的比较 使用TCP实现基于连接的网络 13.3 使用UDP实现无连接网络 13.4 总结 13.5 练习 第14章 Nodez!游戏简介 14.1 Beefheart上尉和他的Magic引擎 Magic...

Global site tag (gtag.js) - Google Analytics