随笔分类 -  Java

摘要:(1)强引用:Java中默认的引用类型,一个对象如果具有强引用那么只要这种引用还存在就不会被GC。 (2)软引用:简言之,如果一个对象具有弱引用,在JVM发生OOM之前(即内存充足够使用),是不会GC这个对象的;只有到JVM内存不足的时候才会GC掉这个对象。软引用和一个引用队列联合使用,如果软引用所 阅读全文
posted @ 2021-04-20 02:02 jason小蜗牛 阅读(773) 评论(0) 推荐(0) 编辑
摘要:一、ThreadLocal 了解 ThreadLocal 即线程变量,意思是ThreadLocal中填充的变量属于当前线程,该变量对其他线程而言是隔离的。ThreadLocal为变量在每个线程中都创建了一个副本,那么每个线程可以访问自己内部的副本变量。threadLocal是一个线程内部的存储类,可 阅读全文
posted @ 2020-11-23 15:12 jason小蜗牛 阅读(183) 评论(0) 推荐(0) 编辑
摘要:当有两个list时,如果想要把一个list的内容添加到另一个list中,建议使用list的构造方式,如下所示: List<Bean> beanList=service.getInfo(); List<Bean> beanList2=new ArrayList<>(); for(Bean bean:b 阅读全文
posted @ 2020-11-19 14:47 jason小蜗牛 阅读(1962) 评论(0) 推荐(0) 编辑
摘要:一、多行字符串 每个操作系统对换行符的定义都不尽相同,所以在拼接多行字符串之前,需要先获取到操作系统的换行符,Java 可以通过下面的方式获取: String newLine = System.getProperty("line.separator"); 有了换行符,就可以使用 String 类的 阅读全文
posted @ 2020-10-23 11:39 jason小蜗牛 阅读(503) 评论(0) 推荐(0) 编辑
摘要:一、字符串相关工具类 (1)org.apache.commons.lang.StringUtils:处理字符串的相关操作 isBlank ( ) isNotBlank ( ) isEmpty ( ) isNotEmpty ( ) equals ( ) join ( ) split ( ) EMPTY 阅读全文
posted @ 2020-10-22 16:07 jason小蜗牛 阅读(1106) 评论(0) 推荐(0) 编辑
摘要:一、Hibernate-Validator简介 在RESTful 风格的接口服务中,会有各种各样的入参,我们不可能完全不做任何校验就直接进入到业务处理的环节,因此在前期我们会有一个基础的数据验证的机制,待这些验证通过后,参数才会进入到正式的业务处理环节。 数据验证又分为两种: (1)一种是无业务关联 阅读全文
posted @ 2020-09-16 16:31 jason小蜗牛 阅读(655) 评论(0) 推荐(0) 编辑
摘要:在项目中有时会使用到比较精确的计算,比如涉及到钱的计算,这个时候不会采用float或者double类型来进行。需要使用bigdeciml类型来进行大数的精确运算。 一、BigDecimal的基本运算——加减乘除绝对值 BigDecimal初始化时尽量全部使用string的构造函数,不然的话可能有出现 阅读全文
posted @ 2020-08-20 13:03 jason小蜗牛 阅读(3572) 评论(0) 推荐(0) 编辑
摘要:一个项目业务场景,需要根据关键词查询商品信息,因为分表分的很细,价格信息、关键词信息、商品基本信息都分开存储,因此在经过关键词查询到商品之后,在查询出来的结果中想要商品按照升序或者降序的顺序显示,这里采用的解决方案是:先通过关键词把商品编号和商品对应的价格查询出来组合成为一个key-value的ma 阅读全文
posted @ 2020-08-19 19:27 jason小蜗牛 阅读(6672) 评论(0) 推荐(0) 编辑
摘要:一、异常概述 异常是发生在程序执行过程中阻碍程序正常执行的错误事件,当一个程序出现错误时,可能的情况有如下3种: 1、语法错误:代码语法出现了错误,此类错误可通过IDE的智能提示纠正。 2、运行时错误:空指针异常,数组越界,除数为零等,此类错误IDE无法检测出来,只有当程序运行之后才能察觉。 3、逻 阅读全文
posted @ 2020-07-23 14:30 jason小蜗牛 阅读(512) 评论(0) 推荐(0) 编辑
摘要:一、概念 NIO即New IO,这个库是在JDK1.4中才引入的。NIO和IO有相同的作用和目的,但实现方式不同,NIO主要用到的是块,所以NIO的效率要比IO高很多。在Java API中提供了两套NIO,一套是针对标准输入输出NIO,另一套就是网络编程NIO。 二、nio与io的区别 下表总结了J 阅读全文
posted @ 2020-06-11 08:49 jason小蜗牛 阅读(1287) 评论(0) 推荐(0) 编辑
摘要:一、UUID是什么 UUID全称:Universally Unique Identifier,即通用唯一识别码,定义为一个字符串主键,采用32位数字组成,编码采用16进制,定义了在时间和空间都完全惟一的系统信息。UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台会 阅读全文
posted @ 2020-05-22 21:26 jason小蜗牛 阅读(4000) 评论(0) 推荐(0) 编辑
摘要:random用于生成0-1之间随机数。可以用java.util.Random的random随机数类,也可以用java.lang下的Math.random()。对于一些方法建议去看源码更加清晰一些。 1、生成指定位数的随机数 //利用随机数对象random public class RandomUti 阅读全文
posted @ 2020-05-12 23:13 jason小蜗牛 阅读(1733) 评论(0) 推荐(0) 编辑
摘要:方式一、采用maven进行打包 利用maven的package打包生命周期对项目进行打包。 或者可以在idea中直接点击package一键打包。 方式二、使用jar命令进行打包 cmd进入项目目录输入以下命令 jar{ctxu}[vfm0M] [jar 文件] [manifest 文件] [ C 目 阅读全文
posted @ 2020-05-08 00:23 jason小蜗牛 阅读(6190) 评论(0) 推荐(0) 编辑
摘要:计算机硬件发展的同时,软件始终伴随其步伐迅猛发展,就计算机的编程语言而言,也划分为三代。 第一代: 机器语言 。每条指令用二进制编码,编码效率极低,但运行效率高。 第二代: 汇编语言 。用符号编程,和具体机器指令有关,需要记住的指令太多,编写效率低下。 第三代: 高级语言 :如FORTRAN、COB 阅读全文
posted @ 2020-05-05 21:30 jason小蜗牛 阅读(235) 评论(0) 推荐(0) 编辑
摘要:在开发中是需要将jar存放到maven本地库中的,但是有时候是同事弄的jar包,他提交代码到git或svn上了,更新代码后,这个jar是没有存在你本地maven库中的,因此需要将这个jar包安装到本地maven库,然后在pom文件中引入才行。 语法: 例如: 之后在pom文件中引入如下: 详情参见博 阅读全文
posted @ 2020-03-19 11:01 jason小蜗牛 阅读(164) 评论(0) 推荐(0) 编辑
摘要:response.setContentType(MIME)的作用是使客户端的浏览器区分不同种类的数据,并根据不同的MIME调用浏览器内不同的程序嵌入模块来处理相应的数据。 一、 什么是MIME MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展 阅读全文
posted @ 2020-03-06 15:34 jason小蜗牛 阅读(2218) 评论(0) 推荐(0) 编辑
摘要:利用JSONObject将下面这个json字符串转换为javabean对象 解析过程分析: 阅读全文
posted @ 2020-02-16 23:06 jason小蜗牛 阅读(9650) 评论(0) 推荐(0) 编辑
摘要:在读取配置文件是termiBrand=CMDC`01|Huawei Technologies Co., Ltd`05 这里面的值无法或数据库里面查询出来的值进行对比判断,需要将字符串的空格去掉然后在进行判断 str.trim(); //去掉首尾空格 str.replace(" ",""); //去除 阅读全文
posted @ 2020-02-12 15:41 jason小蜗牛 阅读(844) 评论(0) 推荐(0) 编辑
摘要:一、上传原理思路 首先我们的输入流中包含普通项和上传项,普通项就是一些字段信息例如用户名、密码等,上传项就是我们选择的文件,例如图片等二进制文件。二者通过分割线隔开。我们通过判断可以知道哪些是上传项、哪些是普通项。当为上传项时,先在服务器上新建一个和上传文件名一样的文件,然后利用IO流,将这些二进制 阅读全文
posted @ 2020-01-17 10:41 jason小蜗牛 阅读(848) 评论(0) 推荐(0) 编辑
摘要:在开发中遇到需要下载文件的需求,现在把文件下载整理一下。 1. 传统文件下载方式有超链接下载或者后台程序下载两种方式。通过超链接下载时,如果浏览器可以解析,那么就会直接打开,如果不能解析,就会弹出下载框; 而后台程序下载就必须通过两个响应头和一个文件的输入流。 2. 后台程序下载 两个响应头: Co 阅读全文
posted @ 2020-01-16 14:44 jason小蜗牛 阅读(1308) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示