- 浏览: 45659 次
- 性别:
- 来自: 南京
最新评论
-
youjianbo_han_87:
没有说明,如何处理半包啊。解码的时候,判断解码是否成功?不成功 ...
Java网络编程(五)socket的半包,粘包与分包的问题 -
bin_1715575332:
好文章,为何没人顶?
Java网络编程(一) TCP/IP,http,socket,长连接,短连接
文章列表
定义
反射平时只管拿来用用,真的要给其下个定义,我还真总结不好,不过之前到看到一个比较好的定义:反射就是把java类中的各个成分映射成相应的java类。
谈到类,我们说java中类的概念本身就是为了让我们更好的去模拟现实社会,比如说模拟人,我们会写出Person类;车我们会写出Car类……。那我们有没有想过,这么多我们写出来的类,我们应该用什么类来表示哪? 这样就很容易的引出了Class这个类。
看看两种类型的对比:
普通类(Person,Car) :new 类名();这个时候JVM为对象分配堆内存中。
Class类:Class.forname(“类名”),将编译好的二进制文件存储到方法区 ...
Linux+Apache+Mysql+Php部署
- 博客分类:
- PHP
一.apache的部署
上传:httpd-2.2.22.tar.gz
解压:tar xzvf httpd-2.2.22.tar.gz
进入解压后的文件目录,进行注册初始化操作: ./configure --enable-dav --enable-so --prefix=[apache安装目录]
make
make install
进入[apache安装目录]/bin目录 启动服务器 ./a ...
首先看两个概念:
短连接:
连接->传输数据->关闭连接
HTTP是无状态的,浏览器和服务器每进行一次HTTP操作,就建立一次连接,但任务结束就中断连接。
也可以这样说:短连接是指SOCKET连接后发送后接收完数据后马 ...
java位操作和逻辑操作
- 博客分类:
- Java
1.java的位运算符
/**
* 计算机对有符号数(包括浮点数)的表示有三种方法:原码、反码和补码, 补码=反码+1。 在 二进制里,是用 0 和 1
* 来表示正负的,最高位为符号位,最高位为 1 代表负数,最高位为 0 代表正数。
*
* @author Administrator
*
*/
public class ShiftOperator {
public static void main(String[] args) {
leftMove();
rightMove();
unSignRightMove();
}
...
1.设置高亮显示的颜色:
Window-->preferences-->General-->Editors-->Text Editors-->Annotations-->右边选择点击Occurrences-->设置Color
2.相同变量都变色显示
Window-->preferences-->Java-->Editor-->Mark Occurrences"复选框勾选
Mysql对于字符集的支持细化到四个层次:
1、服务器级(server);
2、数据库级(database);
3、数据表级(table);
4、字段级(column);
注:前三种均为默认设置,并不代码你的字段最终会使用这个字符集设置。以低层次为主。MySQL中关于连接环境的字符集设置有 Client端,connection, results 通过这些参数,MySQL就知道你的客户端工具用的是什么字符集,结果集应该是什么字符集。这样MySQL就会做必要的翻译,一旦这些参数有误,自然会导致字符串在转输过程中的转换错误。基本上99%的乱码由些造成。
...
AVD(android virtual device)路径设置
问题:
AVD的默认路劲在D:/我的文档/.android目录下(可能每台电脑的路径不一样)
而真正在运行AVD的时候会到C:\Documents and Settings\用户名\.android这个目录下去加载
此时我们需要将默认路径下的.android文件夹拷贝到 C:\Documents and Settings\用户名 这个目录下,但是我们每次添加一个AVD,都需要
重新将.android文件拷贝到 C:\Documents and Settings\用户名 这个目录下,十分麻烦。
解决办法:
1.打开系统属性-- ...
在高性能的I/O设计中,有两个比较著名的模式Reactor和Proactor模式,其中Reactor模式用于同步I/O,而Proactor运用于异步I/O操作。
同步和异步
同步和异步是针对应用程序和内核的交互而言的,同步指的是用户进程触发IO操作并等待或者轮询的去查看IO操作是否就绪,而异步是指用户进程触发IO操作以后便开始做自己的事情,而当IO操作已经完成的时候会得到IO完成的通知。
阻塞和非阻塞
阻塞方式下读取或者写入函数将一直等待,而非阻塞方式下,读取或者写入函数会立即返回一个状态值。
I/O模型可以分为:同步阻塞,同步非阻塞,异步阻塞,异步非阻塞IO
1.同步阻塞
用户 ...
在 Java 的早期,JVM 在解释字节码时往往很少或没有运行时优化。这就意味着,Java 程序往往拖得很长,其运行速率大大低于本地编译代码,因而对操作系统I/O 子系统的要求并不太高。 如今在运行时优化方面,JVM 已然前 ...
common-logging+log4j日志应用
- 博客分类:
- Java
1. Apache通用日志接口(commons-logging.jar)介绍
Apache Commons包中的一个,包含了日志功能,必须使用的jar包。这个包本身包含了一个Simple Logger,但是功能很弱。在运行的时候它会先在CLASSPATH找log4j,如果有,就使用log4j,如果没有,就 ...
Ant打包Java Project
- 博客分类:
- Java
最近做了一个服务器端项目,要把一个Java Project打成可运行jar发送到linux服务器上去运行,但是每次都要替换那么几个文件(因为本地运行和真实环境下配置文件需要改),感觉很麻烦,就想到了用ant来打包,但是通过写好的build.xml文件不能很好的将jar包打进去(能打进去,但是运行的时候又问题)。最后发现在Eclipse生成可运行jar时也可以生成build.xml文件。
如下所示:
这样的话我们只需要在生成的build.xml文件中做适当的修改就可以了,如下面一个简单的例子:
<?xml version="1.0" encoding=&qu ...
Spring的那些配置(事务和日志)
- 博客分类:
- Spring
Spring整合Ibatis典型的配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
xmlns ...
根据传输数据的方式这里把I/O流分为:
1.基于磁盘操作的I/O接口:File
2.基于网络操作的I/O接口:socket
下面看一个典型的socket连接实例
服务器端:
public class ThreadSocketServer {
/** 服务器端口 **/
public static final int PORT = 8189;
public static void main(String[] args) {
int i = 1;
try {
ServerSocket s = new ServerSocket(PORT);
Sys ...
TCP/IP
TCP/IP是个协议组,可分为三个层次:网络层、传输层和应用层。 在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。 在传输层中有TCP协议与UDP协议。 在应用层有:TCP包括FTP、HTTP、TELNET、SMTP等协议
UDP包括DNS、TFTP等协议
http保持状态的实现方式
- 博客分类:
- JavaWeb
http保持状态的实现方式:
1.通过cookie来实现(persistent cookie)
Cookie是通过客户端保持状态的解决方案。从定义上来说,Cookie就是由服务器发给客户端的特殊信息,而这些信息以文本文件的方式存放在客户端,然后客户端每次向服务器发送请求的时候都会带上这些特殊的信息。让我们说得更具体一些:当用户使用浏览器访问一个支持Cookie的网站的时候,用户会提供包括用户名在内的个人信息并且提交至服务器;接着,服务器在向客户端回传相应的超文本的同时也会发回这些个人信息,当然这些信息并不是存放在HTTP响应体(Response Body)中的,而是存放于HTTP响应 ...