
Java
文章平均质量分 88
cblstc
海阔凭鱼跃,天高任鸟飞
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
ThreadLocal解析
123原创 2021-07-30 18:55:46 · 130 阅读 · 1 评论 -
使用零拷贝进行高效数据传输
Many Web applications serve a significant amount of static content, which amounts to reading data off of a disk and writing the exact same data back to the response socket. This activity might appear to require relatively little CPU activity, but it’s some翻译 2020-12-02 17:41:55 · 359 阅读 · 0 评论 -
java stream学习
Stream学习Stream流式操作方便我们对集合进行操作,使用过程中有几个点需要注意,本人踩过坑。首先理解中间操作和最终操作,中间操作是惰性加载的,只有到达最终操作时,才会执行中间操作的代码。用实例来学习stream的用法,这里有一个Boy和一个Girl类,其中Boy类有girlFriends,nickname等属性,这些下面会用到。public class Boy { private String name; private List<String> nickName;原创 2020-12-02 14:28:11 · 202 阅读 · 0 评论 -
Java线程的本质
文章目录序言模拟一个线程Java线程的本质调试JDK源码配置jdk8环境编译openjdk9linux安装clion开始调试java的start方法其他资料vmware设置固定ipcentos安装图形界面xming+xshell打开命令行序言模拟一个线程我们知道,java为我们提供了Thread线程类操作线程,那么我们如何不使用Thread实现线程呢?我们可以手动去调用操作系统的线程方法,操作流程图如下:Created with Raphaël 2.2.0ThreadTest.java#start1原创 2020-10-27 14:16:07 · 388 阅读 · 0 评论 -
HashMap源码解析
文章目录前言Hash解析数据结构构造函数Hash算法定位数组的下标获取元素添加元素删除元素扩容和并发安全问题## 总结前言姗姗来迟的HashMap总结。HashMap有多重要自不必多说,基本算是必问的题目。本人之前断断续续的读了HashMap的源码,也是老了记性差,所以记录下来,方便以后回顾。这次重读HashMap源码,第一感觉就是,源码思路就是那么水到渠成,非常符合程序员的思维习惯。以至于,就算你不看源码,你也能大概说出部分功能的实现流程。好了,废话不多说,进入正题。由于不同版本jdk的HashMa原创 2020-08-13 11:45:09 · 259 阅读 · 0 评论 -
总结JVM的垃圾回收机制
文章目录前言判断对象是否存活引用计数法可达性分析对象引用的类型强引用软引用弱引用虚引用垃圾回收算法标记清除法复制算法标记整理法分代算法垃圾回收器Serial(复制)ParNew(复制)Parallel Scavenge(复制)Serial Old(标记整理)Parallel Old(标记整理)CMS(标记清除)G1前言本文介绍JVM垃圾回收相关的知识。主要内容有:判断对象是否存活、对象引用的类...原创 2020-03-31 21:08:27 · 235 阅读 · 0 评论 -
多线程之CountDownLatch
文章目录背景CountDownLach案例代码和注释背景最近宅家办公,效率低下,总觉得有点失落,哪里也去不了,无奈只能写一篇博客来发泄发泄。刚好最近在优化代码,有个功能需要同时调用三个外部接口,看旧代码是三次调用顺序执行,每次调用超时3s,如果遇到网络渣的情况,整体调用时间可能超过9s,还有很大的压榨价值啊!刚好最近在学多线程,利用学过的一点知识小试牛刀,也不失为人生的一大快事啊!Coun...原创 2020-02-18 16:37:15 · 307 阅读 · 0 评论 -
如何跨域获取一个网页(如:百度)中的源码?
如何跨域获取一个网页(如:百度)中的源码?前言各种尝试山重水复疑无路,柳暗花明又一村总结前言写这篇博文原因有俩:一、快月底了,还没输出一篇博文;二、今天遇到个对我很有启发的问题,记录一下,以飨读者。需求是:在一个页面中嵌入另一个页面,并且自适应高度。各种尝试iframe嵌入html页面正常人接到这个需求马上想到使用iframe,以前的项目也是用iframe,而且没有任何障碍,至于自适应...原创 2019-05-24 15:29:25 · 1557 阅读 · 0 评论 -
Java枚举类学习
Java枚举类学习前言枚举类初探像类一样的枚举神奇的values()前言枚举类对我而言一直是非常神秘的特性,最近学习thinking in Java,将枚举类的特性总结下,只为了加深印象。枚举类初探枚举类的ordinal()表示序号,name()表示名称。比较枚举类的大小可以放心使用==或equals to。valueOf可以在枚举变量中寻找匹配的字符串并返回改变量。enum Sp...原创 2019-03-26 14:56:16 · 444 阅读 · 0 评论 -
堆的新生代和老年代的理解
参考文章:http://www.cnblogs.com/duanxz/p/6076662.html堆被划分为新生代和老年代,新生代又分为eden区和s0、s1区。新创建的对象存放在eden区,当eden区满时,执行gc,将eden中的存活对象存放到s0区中。当eden区再一次满时,执行gc,同时执行复制算法,将eden区和s0区存活对象存放到s1区中,同时交换s0和s1的角色。当对象复制达...原创 2019-02-25 09:33:55 · 1488 阅读 · 0 评论 -
java保存html文件乱码
DiskFileItemFactory factory = new DiskFileItemFactory();ServletFileUpload servletFileUpload = new ServletFileUpload(factory);List&lt;FileItem&gt; fileItems = servletFileUpload.parseRequest(request);...原创 2018-12-08 16:48:06 · 895 阅读 · 0 评论 -
post请求乱码
tomcat默认编码格式是iso-8859-1,前台传来的数据会产生乱码,解决方法:String xxx = new String(xxx.getBytes("iso-8859-1"), "utf-8");// 长期更新,一直跟乱码做斗争...原创 2018-10-19 11:25:09 · 587 阅读 · 1 评论 -
ClassNotFoundException/TypeNotPresentException错误解决办法
1 背景第一次接触dubbo项目,一个项目划分为多个子项目,我在其中一个模块新增了一个类,运行dubbo server时,报错:ClassNotFoundException/TypeNotPresentException。很明显就是新增的类没有被编译,于是maven update+project clean双管齐下,还是不行。2 解决问了项目组的大牛,知道多个子项目的情况下,有一个负责启动的...原创 2018-10-11 15:20:15 · 4373 阅读 · 0 评论 -
ssh分页的实现
前台显示每一页数据需要哪些参数?1当前页码;2总页码(由总记录数和每页记录数决定);3当前页的数据。这样就可以确定PageBean需要哪些变量了。如何查询每一页数据?地址栏传递需要查询的页码。数据库是如何查询的?setFirstResult((当前页码-1)*每页记录),setMaxResult(每页记录)。总体的思路?记住分页的关键是获得PageBean对象,向前台传递PageBea原创 2017-06-16 09:24:08 · 380 阅读 · 0 评论 -
设置session的过期时间
通常情况下,session的作用范围是整个浏览会话,也就是说,当浏览器重启时,以前在session中保存的数据失效。如下图所示:那么如何实现重启浏览器后,仍然能够得到以前的数据?只需修改JSESSIONID的过期时间。Cookie cookie = new Cookie("JSESSIONID", ServletActionContext.getRequest().getSessi原创 2017-07-02 20:51:36 · 2175 阅读 · 0 评论 -
使用cookie实现记住用户名的功能
首先必须登录成功,如果“记住用户名”打勾,那么保存username到cookie中:if (isRememberUsername != null && isRememberUsername.equals("true")) { // 如果勾选,保存cookie数据 Cookie cookie = new Cookie("username", username); cookie.setMax原创 2017-06-12 08:44:30 · 752 阅读 · 0 评论 -
Jcrop插件+Canvas实现图片上传预览+图片裁剪上传
前言想实现一个功能:用户点击上传按钮,选择图片后。图片显示在一个弹出框上,并可以对图片进行裁剪。裁剪后的图片显示在页面上。提交表单即可上传图片。遇到问题浏览器的安全设置不让用户获取上传的图片路径,实际获取的是c:\fakepath\a.jpg(假设图片是c盘下的a.jpg)ajax如何异步上传图片?Canvas画裁剪的图片时长宽不一样(本来想画100x100的图片,结果在画布上显示100x50原创 2017-12-09 09:16:27 · 2918 阅读 · 2 评论 -
Connections could not be acquired from the underlying database问题解决
SSM项目整合时遇到这个问题,db.properties的内容如下:driverName=com.mysql.jdbc.Driverurl=jdbc\:mysql\://localhost\:3306/mybatis01username=rootpassword=123改成:jdbc.driverName=com.mysql.jdbc.Driverjdbc.url=jdbc\:my原创 2017-11-27 19:15:15 · 782 阅读 · 0 评论 -
JSONObject和JSONArray的操作和常见问题
2018.09.13 更新:将查询出来的Java对象转换为JSONObject时,报了如下错误java.lang.IllegalArgumentException at java.sql.Date.getHours JSONException经过一番折腾,大体知道如何规避这个错误,就是使用JSONConfig转换日期类型JsonConfig config = new JsonC...原创 2018-01-17 17:51:13 · 1415 阅读 · 0 评论 -
Unsupported major.minor version 51.0解决办法,长期记录各种jdk疑难杂症
背景eclipse原先jdk版本1.6,换了项目后,改成1.7,结果报Unsupported major.minor version 51.0错误。解决 windows -&amp;gt; preferences -&amp;gt; tomcat jvm settings -&amp;gt; 1.6改成1.7...原创 2018-07-05 16:49:23 · 96202 阅读 · 19 评论 -
Quartz的使用、Quartz在Spring中的使用
需求:每天凌晨一点执行某个操作Quartz的使用创建scheduler,并开始schedulerScheduler scheduler = StdSchedulerFactory.getDefaultScheduler();scheduler.start();创建jobDetail,需要同时提供需要执行的类,这里时TestJob.classJobDetail jo...原创 2018-08-19 16:30:17 · 306 阅读 · 0 评论 -
基于spring框架的webservice接口的开发和调试
1. 基本环境 tomcat6、spring、jdk1.72. 引入cxf的jar包 Spring框架整合webservice需要用到cxf框架,需要在pom.xml里引入以下jar包&lt;dependency&gt; &lt;groupId&gt;org.apache.cxf&lt;/groupId&gt; &lt;artifactId&am原创 2018-09-11 18:04:48 · 4951 阅读 · 0 评论 -
java图形界面编程换皮肤
前言总所周知,java图形界面效果不是特别理想,于是在网上找了一些非常好看的皮肤 皮肤地址:皮肤地址使用下载了一款名为weblaf的皮肤,使用也很简单,导入jar包后,在main方法中,JFrame定义之前调用install();方法即可。 public static void main(String[] args) { WebLookAndFeel.i...原创 2018-09-05 22:36:27 · 2051 阅读 · 2 评论 -
用户注册实现方案一
做用户注册功能非常头疼,想要做出某些网站的注册效果但苦于难以实现,经过半天的专研,总算写出点像样的东西来。随着学习的深入,以后还会修改方案,暂时供自己查阅使用。代码:1 输入框onblur调用此方法,传递参数field,作用是:后台根据field的类型,对field指定的字段进行校验。// 输入框onblur调用此方法,传递参数field,作用是:后台根据field的类型,对f原创 2017-06-15 20:40:53 · 653 阅读 · 0 评论