java
林onetwo
3年工作经验
展开
-
Java原生爬虫Jsoup简单使用
Jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。我们在爬虫采集网页领域,主要作用是 用HttpClient获取到网页后,具体的网页提取需要的信息的时候 ,就用到Jsoup,Jsoup可以使用强大的类似Jquery,css选择器,来获取需要的数据。 <!-- jsoup 依赖 --> <dependency> <groupI原创 2021-03-01 17:57:24 · 264 阅读 · 0 评论 -
Jvm调优随记
Jvm调优随记垃圾回收统计: jsat -gc [pid]生成dump文件 :jmap -dump:file=/data/dump/jvm_en.hprof 20176(使用jdk自带的jvisualvm.exe可分析堆内存使用情况)新生代(-Xmn)为堆大小的1/3左右,老年代大小设置为gc后的OU(old use)大小的3-4倍( -Xms -Xmx)。-XX:SurvivorRatio年轻代和两个Survivor的比值,默认8,代表比值为8:1:1新生代太大或太小都会导致fullGC,太小会原创 2021-02-23 10:29:23 · 279 阅读 · 0 评论 -
synchronize和lock的区别
类型synchronizelock存在层次JAVA关键字,在jvm层面一个类原创 2020-12-10 18:04:50 · 362 阅读 · 0 评论 -
IO流(二)BIO,NIO,IOMultiplexing,AIO(阻塞非阻塞,同步异步区别)
用个小故事简单讲讲他们的区别吧老王有一天要去银行取钱,有四家银行分别叫做,BIO银行,NIO银行,IOMultiplexing银行,AIO银行1.老王去了BIO银行(同步阻塞)老王和柜员说:我要取30w人民币买辆自行车,柜员说:好的,您请坐,请稍等。请实时关注你的账号状态。过了2分钟,老王说:好了吗?老王每隔两分钟一问。10min后老王骂骂咧咧拿走了30w2.第二天老王来了NIO银行(同步非阻塞),老王和柜员说:我要去300w人名币买个厕所,柜员说:好的,先生在等待的时候你先去其他地方逛原创 2020-11-25 10:37:36 · 199 阅读 · 0 评论 -
IO流(一)IO流概述以及字节流使用
IO流(一)IO流概述以及字节流使用IO流的主要作用:主要是为了操作读取计算机中的文件进行读取,操作,写入,生成新的文件。其中根据数据流向分为输入流和输出流。也可根据数据的传输单位分为字节流(InputStream 和OutputStream)和字符流。(Reader和 Writer)字节流的输入流(InputStream)和输出流OutputStream的类继承图字节流直接操作文件本身,没有使用缓冲区(硬盘中所有的文件都是以字节的方式存在的,字符只存在于内存中)最常用的FileInputS原创 2020-11-18 17:30:37 · 273 阅读 · 0 评论 -
Java的类加载机制以及tomcat类加载对比
标题java类加载过程标题加载 ->验证 ->准备 -> 解析 ->初始化加载:将class文件解析成二进制文件进入jvm中验证:校验文件是否符合java规范,是否会侵害jvm准备:为类的静态变量赋值默认初始值(如:int赋0),final修饰的变量直接赋值解析:符号引用(任何形式的字面量,可以定位到目标)解析为直接引用(指针)初始化:为类静态变量赋正确的初始值。类加载器:分为:启动类加载器(c++编写),扩展类加载器(加载jre的中的jar包的类),应用类加载器双亲原创 2020-11-17 16:10:11 · 311 阅读 · 0 评论 -
JVM GC Roots有哪些
day2、GC Roots有哪些?GC Root 指的是(Garbage Collector)垃圾收集器要收集的目标对象1.栈中的对象引用(reference)2.活着的线程\color{red}{2.活着的线程}2.活着的线程3.JNI(javaNativeInertface)\color{red}{3.JNI(javaNativeInertface)}3.JNI(javaNativeInertface)...原创 2020-09-18 23:00:59 · 325 阅读 · 0 评论 -
JVM内存区域划分以及句柄访问和指针访问的区别
1、JVM内存区域有哪些?为什么这么划分?程序计数器,栈,本地方法栈,堆,方法区;各个内存区域存储各种数据,使内存分配占用更加合理,查询效率高;简单说说程序各个内存区域存储了哪些数据:程序计数器:代码运行的行数 无OOM情况的区域\color{red}{无OOM情况的区域}无OOM情况的区域栈:对象的引用 基本数据类型,栈帧,局部变量表,操作数栈,方法出口\color{red}{基本数据类型,栈帧,局部变量表,操作数栈,方法出口}基本数据类型,栈帧,局部变量表,操作数栈,方法出口本地方法:n原创 2020-09-16 18:28:15 · 490 阅读 · 0 评论 -
HashMap学习笔记4(HashMap产生了hash碰撞之后的故事)
HashMap的二倍扩容以及tableSizeFor方法解析为什么HashMap要2倍2倍的扩容而不是3倍或是1.5倍扩容呢?原创 2020-09-16 16:38:04 · 274 阅读 · 0 评论 -
HashMap学习笔记3(HashMap的hash以及putVal方法解析)
HashMap学习笔记3(HashMap的hash以及putVal方法解析)原创 2020-09-14 17:27:30 · 106 阅读 · 0 评论 -
Java8Lamda表达式使用 整理持续更新
Java8Lamda表达式使用 整理持续更新原创 2020-07-08 11:10:09 · 359 阅读 · 0 评论