JAVA
文章平均质量分 82
java 相关知识点
KeepTing
java开发工程师
展开
-
【java基础系列】之垃圾回收器及回收算法
本章和大家聊一下jvm的垃圾收集器以及对应的垃圾收集算法,可能大部分同学对于GC方面的了解程度还停留在面试那一级别,如果问起什么三色标记算法,可能有些同学就不知道啦,下面就和大家一起整体了解下GC和它的一些延伸知识点你懂的越多,你不懂的越多垃圾收集算法本章大概介绍几个常见的垃圾收集算法:复制算法、标记-清除、标记-整理、分代回收标记-清除算法算法分为"标记"和“清除”两个阶段:首先扫描所有对象标记出需要回收的对象,在标记完成后扫描回收所有被标记的对象,所以需要扫描两遍。回收效率略低,如果大部分.原创 2020-12-10 14:39:46 · 544 阅读 · 0 评论 -
JDK8中的HashMap实现原理及源码分析
本篇所述源码基于JDK1.8.0_121在写上一篇线性表的文章的时候,笔者看的是Android源码中support24中的Java代码,当时发现这个ArrayList和LinkedList的源码和Java官方的没有什么区别,然而在阅读HashMap源码的时候,却发现Android中的Java与官方版的出入略大,遂不得不转而用Eclipse导入jdk源码阅读,这里不得不吐槽一句,用惯了IDEA的...转载 2018-11-15 09:21:54 · 3269 阅读 · 6 评论 -
Vert.x架构学习之Reactor模式
前言学习Vert.x之前,我们首先需要了解一下几个概念,Reactor设计模式就是其中一个。一、Reactor模式简介我们知道对于应用服务器,通常会涉及到对文件系统、数据库系统或者网络进行IO操作,由于cpu的运行速度远大于IO的速度,所以会发生这种情况:CPU可能会因为IO的操作而阻塞。我们当然不希望这种情况的发生,因为这大大降低了CPU的效率,因此,引进了多现程或多进程进行处理,即多...原创 2018-11-10 09:29:48 · 1084 阅读 · 0 评论 -
Hystrix线程隔离技术解析-线程池
认识HystrixHystrix是Netflix开源的一款容错框架,包含常用的容错方法:线程隔离、信号量隔离、降级策略、熔断技术。在高并发访问下,系统所依赖的服务的稳定性对系统的影响非常大,依赖有很多不可控的因素,比如网络连接变慢,资源突然繁忙,暂时不可用,服务脱机等。我们要构建稳定、可靠的分布式系统,就必须要有这样一套容错方法。本文主要讨论线程隔离技术。为什么要做线程隔离比如我们现在有...转载 2018-10-25 12:10:05 · 1329 阅读 · 0 评论 -
mvn deploy 上传jar到Nexus私服
最近用shiro做了个权限系统,大概包括两个组件:认证中心、客户端过滤器。主要流程是子系统接入过滤器jar包,拦截请求并获取token,然后拿token去认证中心进行登录校验或鉴权,然后返回相应的鉴权结果,等等之类的吧!!!...原创 2018-09-04 15:26:47 · 1759 阅读 · 0 评论 -
SLF4J+Logback 日志框架使用
声明:部分内容摘自网络注:使用logback和log4j十分相似, log4j的属性配置文件可以通过工具http://logback.qos.ch/translator/转换为logback的配置文件放到类路径里面去,另外再将logback的类库logback-core,logback-classic加入到类路径中去就搞定了。一、下载组件:slf4j:http://www.slf4j.org/dow转载 2017-11-24 11:12:22 · 458 阅读 · 0 评论 -
解决关于selenium 获取新页面元素失败的问题
当我们使用selenium 实现模拟登陆时,获取到登陆按钮元素后,直接调用它的click()方法就能实现登陆跳转,并且此时的webDriver 也是指向当前的页面,这个是没问题的,不过需要注意的是因为页面加载速度一般小于程序运行速度,所以在获取登陆后页面的元素之前,可以通过Thread.sleep()让程序睡眠一会(暂时只知道这种方法,亲测用while循环貌似不好使), 但是博主要说的重点是如原创 2017-08-07 11:01:50 · 8626 阅读 · 0 评论 -
spring常用的一些注解以及注解注入总结
转载自:http://blog.csdn.net/ailan_/article/details/47682069常用的spring注解有如下几种:@Controller@Service@Autowired@RequestMapping@RequestParam@ModelAttribute@Cacheable@CacheFlush@Resource转载 2017-03-06 08:45:28 · 454 阅读 · 0 评论 -
SpringMVC之返回页面数据
1. HttpServletRequest request 直接使用request.setAttribute(Key, Value);jsp页面: 账号: 密码: ${user }Controller:@RequestMapping(value="/add1.do") public String add(HttpServletRequest request){原创 2017-02-13 10:47:50 · 690 阅读 · 0 评论 -
SpringMVC之参数传递
1. 通过设置HttpServletRequest request 来获取数据jsp页面: 账号: 密码: 后台代码:@RequestMapping(value="/add1.do") public String add(HttpServletRequest request){ String userNumber = request.getParamete原创 2017-02-11 14:28:20 · 251 阅读 · 0 评论 -
Maven中pom.xml解析
pom.xml常用元素modelVersion 指定了当前pom版本groupId 反写的公司网址+项目名artifactId 项目名+模块名version 版本号 第一个0表示大版本号;第二个0表示分支版本号;第三个0表示小版本号;如:0.0.1SNAPSHOT快照(snapshot:快照;alpha:内部测试;beta:公测;Release:稳定;GA:正式发布)原创 2017-02-18 11:13:16 · 434 阅读 · 0 评论 -
Json串与List<Bean>、Bean之间的转换,处理类中List<Bean>属性的序列化问题
在UDP通信协议中,服务器和客户端之间通过用DatagramPacket构建数据包进行通信,在发送数据包之前,需要对封装好的消息对象进行序列化,使其成为Byte类型,而在Java中,只有实现了Serializable接口的类才能实现序列化,但是在学习过程中遇到一个问题,就是当实现了Serializable接口的类中有List属性时,那么在对这个类进行序列化时,List不会被序列化,网上说,Li原创 2016-12-26 20:24:17 · 2736 阅读 · 0 评论 -
Netty框架(一)————BIO编程
从这篇文章开始,将一步步探索Netty框架,从入门到精通,再到实际应用,我会把学到的总结下来,并与大家分享,如果有理解错误的地方,还请诸位大神予以纠正,希望与大家相互学习,共同进步,,还是那句话--“千里之行,始于足下”。一、BIO编程 1、首先了解传统的BIO编程,我们所学的JAVA网络编程的基本模型是client/server模型,也就是两个进程之间进行相互通信,具体步骤是服务器原创 2016-11-08 20:34:46 · 1679 阅读 · 0 评论 -
NIO编程之ServerSocketChannel用法详解
之前一直看不懂NIO中的ServerSocketChannel和SocketChannel的区别,看了这篇博文,感觉通俗易懂,于是决定分享一下。。。。在用nio通讯的过程我用以下情景给你模拟: 1. 学校(ServerSocketChannel) 2。 学校教务处(Selector) 3。 老师 (ServerSocket ) 4。 学生 (SocketChan转载 2016-11-18 08:42:14 · 10363 阅读 · 1 评论 -
Netty框架(二)————NIO编程
之前提到的同步阻塞I/O模型存在很多弊端,为了解决这些弊端,我们引进了非阻塞I/O模型,即NIO模型,相比与之前的Serversocket和Socket,NIO提供了ServerSocketChannel和SocketChannel两种套接字通道实现,下面介绍一下NIO的几个关键技术,NIO工作原理 1、缓冲区(Buffer)在NIO库中原创 2016-11-11 09:56:55 · 744 阅读 · 0 评论 -
Hibernate开发基本步骤
1、编写配置文档hibernate.cfg.xml2、编写实体类(例如Students.java)3、生成对应实体类的配置文件并添加到配置文档中(例如Students.hbm.xml)4、调用Hibernate API进行测试(@Before @Test @After)原创 2016-08-11 16:39:48 · 335 阅读 · 0 评论 -
Hibernate常用工具类
package com.imooc.util;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.boot.registry.StandardServiceRegistry;import org.hibernate.boot.registry.StandardServi原创 2016-08-20 08:04:08 · 723 阅读 · 0 评论 -
HDU 1250 Hat's Fibonacci (JAVA大数)
Problem DescriptionA Fibonacci sequence is calculated by adding the previous two members the sequence, with the first two members being both 1.F(1) = 1, F(2) = 1, F(3) = 1,F(4) = 1, F(n>4) = F(n -原创 2016-03-10 17:01:26 · 373 阅读 · 0 评论 -
HDU 1002 A + B Problem II (JAVA大数)
Problem DescriptionI have a very simple problem for you. Given two integers A and B, your job is to calculate the Sum of A + B.InputThe first line of the input contains an integer T(1<=T<=20原创 2016-03-11 17:43:11 · 370 阅读 · 0 评论