文章分类 -  java基础

探索CAS无锁技术
摘要:关于同步,很多人都知道synchronized,Reentrantlock等加锁技术,这种方式也很好理解,是在线程访问的临界区资源上建立一个阻塞机制,需要线程等待其它线程释放了锁,它才能运行。这种方式很显然是奏效的,但是它却带来一个很大的问题:程序的运行效率。线程的上下文切换是非常耗费资源的,而等待 阅读全文

posted @ 2019-01-10 23:21 bijian1013 阅读(163) 评论(0) 推荐(0) 编辑

锁与CAS介绍
摘要:Java在JDK1.5之前都是靠synchronized关键字保证同步的,这种通过使用一致的锁定协议来协调对共享状态的访问,可以确保无论哪个线程持有守护变量的锁,都采用独占的方式来访问这些变量。 一.锁1.锁机制存在的问题 (1)在多线程竞争下,加锁、释放锁会导致比较多的上下文切换和调度延时,引起性 阅读全文

posted @ 2019-01-10 23:02 bijian1013 阅读(290) 评论(1) 推荐(0) 编辑

java中的Scanner
摘要:在运行一个java程序的时候,可能我们需要在运行的时候传递一些参数进去,怎么办呢? 一.java提供了一个Scanner类,利用这个类,我们可以很方便的获取键盘输入的参数 Scanner是一个基于正则表达式的文本扫描器,可以从文件,输入流,字符串中解析出基本类型和字符串类型的值。Scanner类提供 阅读全文

posted @ 2018-12-24 21:28 bijian1013 阅读(373) 评论(0) 推荐(0) 编辑

Java中获取键盘输入值的三种方法
摘要:Java程序开发过程中,需要从键盘获取输入值是常有的事,但Java它偏偏就没有像c语言给我们提供的scanf(),C++给我们提供的cin()获取键盘输入值的现成函数!Java没有提供这样的函数也不代表遇到这种情况我们就束手无策,请你看以下三种解决方法。一.从控制台接收一个字符,然后将其打印出来 虽 阅读全文

posted @ 2018-12-24 21:02 bijian1013 阅读(300) 评论(0) 推荐(0) 编辑

java如何将char类型的数字转换成int型的数字
摘要:如何把char '3'转为int 3, 大家应该知道,不能直接转化,那样得到是'3'的Ascii. 如下面: 输出结果如下: 那如果要把char '3'转为int 3该怎么做呢,查了一点资料,发现了一个最简单的方法: 直接在numChar后面减去'0'即可,输出结果如下: 逻辑分析:它这样解决是利用 阅读全文

posted @ 2018-12-24 20:57 bijian1013 阅读(636) 评论(0) 推荐(0) 编辑

HttpClient在传参和返回结果的中文乱码问题
摘要:我实例化一个StringEntiry,将json字符串写入请求体中。然后无论我以哪种编码方式输出StringEntity中的content,其中的中文均为乱码“???”。 这是怎么回事? 总结:就是在传递的参数中设置,这个很重要 今天用httpclient传输json数据,服务端接受数据是中文乱码, 阅读全文

posted @ 2018-12-24 16:10 bijian1013 阅读(6880) 评论(0) 推荐(0) 编辑

理解try-with-resources语句及示例
摘要:原文链接:http://javapapers.com/core-java/try-with-resources/ 概述 Java 7 gave us try-with-resources, a nice feature on exception handling. This tutorial is 阅读全文

posted @ 2018-12-20 22:41 bijian1013 阅读(1260) 评论(0) 推荐(0) 编辑

Linux与JVM的内存关系分析
摘要:引言 在一些物理内存为8g的服务器上,主要运行一个Java服务,系统内存分配如下:Java服务的JVM堆大小设置为6g,一个监控进程占用大约 600m,Linux自身使用大约800m。从表面上,物理内存应该是足够使用的;但实际运行的情况是,会发生大量使用SWAP(说明物理内存不够使用 了),如下图所 阅读全文

posted @ 2018-12-20 17:22 bijian1013 阅读(128) 评论(0) 推荐(0) 编辑

【异常处理】Incorrect string value: '\xF0\x90\x8D\x83...' for column... Emoji表情字符过滤的Java实现
摘要:Emoji表情字符现在在APP已经广泛支持了。但是Mysql的UTF8编码对Emoji字符的支持却不是那么好。所以我们经常会遇到这样的异常: 原因是Mysql里UTF8编码最多只能支持3个字节,而Emoji表情字符使用的UTF8编码,很多都是4个字节,有些甚至是6个字节。 解决的方案有两种: 1.使 阅读全文

posted @ 2018-10-21 17:24 bijian1013 阅读(515) 评论(0) 推荐(0) 编辑

java中byte转换int时为何与0xff进行与运算
摘要:在剖析该问题前请看如下代码 上面是将byte[]转化十六进制的字符串,注意这里b[ i ] & 0xFF将一个byte和 0xFF进行了与运算,然后使用Integer.toHexString取得了十六进制字符串,可以看出b[ i ] & 0xFF运算后得出的仍然是个int,那么为何要和 0xFF进行 阅读全文

posted @ 2018-10-21 17:16 bijian1013 阅读(314) 评论(0) 推荐(0) 编辑

Java中byte与16进制字符串的互相转换
摘要:Java中byte用二进制表示占用8位,而我们知道16进制的每个字符需要用4位二进制位来表示(23 + 22 + 21 + 20 = 15),所以我们就可以把每个byte转换成两个相应的16进制字符,即把byte的高4位和低4位分别转换成相应的16进制字符H和L,并组合起来得到byte转换到16进制 阅读全文

posted @ 2018-10-21 17:11 bijian1013 阅读(249) 评论(0) 推荐(0) 编辑

十分钟搞清字符集和字符编码
摘要:背景:字符集和编码无疑是IT菜鸟甚至是各种大神的头痛问题。当遇到纷繁复杂的字符集,各种火星文和乱码时,问题的定位往往变得非常困难。本文就将会从原理方面对字符集和编码做个简单的科普介绍,同时也会介绍一些通用的乱码故障定位的方法以方便读者以后能够更从容的定位相关问题。在正式介绍之前,先做个小申明:如果你 阅读全文

posted @ 2018-10-21 16:52 bijian1013 阅读(282) 评论(0) 推荐(0) 编辑

UTF-8与UTF-8 BOM
摘要:在我们通常使用的windows系统中,我发现了一个有趣的现象。我新建一个空的文本文档,点击文件-另存为-编码选择UTF-8,然后保存。此时这个文件明明是空的,却占了3字节大小。原因在于:此时保存的编码方式自动会变为UTF-8 BOM。 一.一个汉字在不同的编码方式中占多少字节? 1.在UTF-8中, 阅读全文

posted @ 2018-10-21 15:50 bijian1013 阅读(6875) 评论(2) 推荐(1) 编辑

字符编码简述
摘要:一.基本概念 计算机存储的是二进制数据, 0/1 组成的比特, 我们在屏幕上看到的各种显示字符, 包括字母, 汉字, 数字, 各种符号等等, 都是由一串二进制比特转码之后得到的. 这种转码的规则就叫做字符编码. 例如最常见的 ASCII 规则: 字母'A': 对应二进制 0x41, 10100000 阅读全文

posted @ 2018-10-21 15:32 bijian1013 阅读(435) 评论(0) 推荐(0) 编辑

UTF-8编码占几个字节?
摘要:占2个字节的:带有附加符号的拉丁文、希腊文、西里尔字母、亚美尼亚语、希伯来文、阿拉伯文、叙利亚文及它拿字母则需要二个字节编码 占3个字节的:基本等同于GBK,含21000多个汉字 占4个字节的:中日韩超大字符集里面的汉字,有5万多个 一个utf8数字占1个字节 一个utf8英文字母占1个字节 少数是 阅读全文

posted @ 2018-10-21 13:53 bijian1013 阅读(951) 评论(0) 推荐(0) 编辑

java数组转List
摘要:java中数组转list使用Arrays.asList(T... a)方法,如下示例所示: 运行结果: 这个方法使用起来非常方便,简单易懂。但是需要注意以下两点。 一.不能把基本数据类型转化为列表 仔细观察可以发现asList接受的参数是一个泛型的变长参数,而基本数据类型是无法泛型化的,如下所示: 阅读全文

posted @ 2018-08-11 20:06 bijian1013 阅读(139) 评论(0) 推荐(0) 编辑

Linux下安装jdk步骤详述
摘要:作为Java开发人员,在Linux下安装一些开发工具是必备技能,本文以安装jdk为例,详细记录了每一步的操作命令,以供参考。 1.下载jdk 进入官网,选择对应jdk版本下载。(可在Windows下下载完成后,通过文件夹共享到Linux上) 2.登录Linux,切换到root用户 su root 获 阅读全文

posted @ 2018-06-23 16:01 bijian1013 阅读(118) 评论(0) 推荐(0) 编辑

使用OpenJDK来查看SunJDK不提供的部分源码
摘要:都知道SunJDK(OracleJDK)只提供了java和javax下大部分的源码,其他源码想看却无门。我们可以通过OpenJDK来满足我们的私窥欲。 网上有很多OpenJDK的安装方法,但是请记住,我们只是为了看源码,并不是使用它作为开发环境(我还是喜欢用SunJDK来做开发,以免跑到正式环境上有 阅读全文

posted @ 2018-06-18 18:28 bijian1013 阅读(233) 评论(0) 推荐(0) 编辑

HttpClient4.3实现https请求信任所有证书
摘要:文章来源:http://blog.csdn.net/qq844579582/article/details/54314587 阅读全文

posted @ 2018-02-26 22:28 bijian1013 阅读(1917) 评论(0) 推荐(0) 编辑

Java代码忽略https证书:No subject alternative names present
摘要:做项目提供restful api,本地部署访问http://localhost:8080可以正确访问,当部署到一个高安全性的服务器上时,项目访问路径变成了https://xxx.xxx.xxx.xxx:xxxx,此时再次测试时会报错。 错误猜测为证书问题。因为本身https请求就对证书有要求,于是将 阅读全文

posted @ 2018-02-26 22:26 bijian1013 阅读(2843) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示