java基础
文章平均质量分 90
@summer@
这个作者很懒,什么都没留下…
展开
-
Java Nio(六)Java Nio实现高性能HTTP/HTTPS客户端
由以前的文章得知,http本质上是TCP连接,然后发送http约定的字节。我们知道系统用一个4四元组来唯一标识一个TCP连接:{local ip, local port,remote ip,remote port}原创 2021-06-21 18:39:54 · 850 阅读 · 0 评论 -
为什么1个字节的取值范围是-128~127
计算机,用补码的方式,保持数据。正数的补码就是本身。负数的补码是除符号位之外,取反,再加1.1个字节,取值范围是-128~127.那么,为什么是-128~127呢?因为计算机补码机制,计算机中的数值是按照补码来存储的,正数的补码是他自身,负数的补码是符号位以外取反+1.所以,正数的最大补码:01111111,即127.负数的最大补码10000000,原码为100000000,即...原创 2019-08-15 09:24:55 · 5417 阅读 · 11 评论 -
深入剖析ThreadLocal
status = txManager.getTransaction(new DefaultTransactionDefinition()); // 获得事务状态 对于这一行代码是不是会些疑问,为什么这样就开启事务了,为什么在接下来的sqlMap做数据库的操作时没用到这个status,还能完成事务的统一?众所周知要想事务一致,那么开启事务con.setAuto...转载 2019-06-11 16:49:28 · 123 阅读 · 0 评论 -
java AQS框架
概述AbstractQueuedSynchronizer,即队列同步器。它是构建锁或者其他同步组件的基础框架(如ReentrantLock、ReentrantReadWriteLock、Semaphore等),JUC并发包的作者(Doug Lea)期望它能够成为实现大部分同步需求的基础。它是JUC并发包中的核心基础组件。设计AQS的基本设计思想并不复杂:获取锁:while (s...转载 2019-06-14 09:08:47 · 186 阅读 · 0 评论 -
0x,左移,右移
0x代表的是十六进制,表示的是补码,默认为int类型,即32位,不足高位补0。如:0xff=0x000000ff,每一位代表一个十六进制,-2表示的补码为1111 1111 1111 1111 1111 1111 1111 1110。十六进制为 0xfffffffejava 的>>为有符号又移,有符号右移就是右移之后,左边的补上符号位,正数补0,负数补1>&...原创 2019-05-08 10:47:41 · 7096 阅读 · 0 评论 -
db2添加用户及权限
net user cjcadmin 123456 /adddb2 grant connect on database to user cjcadmin 这里可以授予的数据库级特权有:CREATETAB: 用户可以在数据库中创建表。 BINDADD: 用户可以使用 BIND 命令在数据库中创建包。 CONNECT: 用户可以连接数据库。原创 2017-09-12 18:03:35 · 2058 阅读 · 0 评论 -
socket中文乱码
如果在对读取到的信息进行编码转换没用的话可以试试在流上进行装换BufferedReader re=new BufferedReader(new InputStreamReader(is,"GB2312"));原创 2017-09-04 15:56:19 · 21279 阅读 · 0 评论 -
java 浮点类型加减有误
在java中 double b=0.0002;double b2=0.0001;System.out.println(b+b2);会出现什么?0.0003?不不不,会出现3.0000000000000003E-4这是因为计算机是通过二进制操作的,10进制转换成2进制的时候小数位精度会丢失,会出现无限小数,类似于10进制的 1/3 会出现0.333333333333333原创 2017-05-23 16:59:27 · 398 阅读 · 0 评论 -
遍历map
为什么不能直接对map进行遍历,而是要对map.entrySet()进行遍历,是因为map的子项是一个个逻辑对应关系,并不是一个真实的对象,所以根本没有对象接收子项。所以不能像list一样,可以用int接受。所以要用entrySet集合,这里面是Entry的集合,即map的键=值(a=1);foreach和interator实际上都是对map的entrySet()操作。Hash原创 2017-02-23 15:37:12 · 213 阅读 · 0 评论 -
org.apache.xalan.processor.transformerfactoryImpl not found的异常
是由于jdk 与 tomcat之间的关于 TransformerFactoryImpl 类的冲突造成的。tomcat-5.0.28\common\endorsed下有两个jar包:xercesImpl.jar和xml-apis.jar,其中的类 javax.xml.transform.TransformerFactory 与jdk1.5中的类org.apache.xalan.processor原创 2017-02-10 17:45:25 · 667 阅读 · 0 评论 -
时间戳
时间戳(timestamp),通常是一个字符序列,唯一地标识某一刻的时间。数字时间戳技术是数字签名技术一种变种的应用。System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于Java.lang包。currentTimeMillis方法public static long currentTimeMillis()该方法的作用是返回当原创 2016-12-24 17:34:28 · 245 阅读 · 0 评论