java
文章平均质量分 50
全是Bug写个蛇
这个作者很懒,什么都没留下…
展开
-
long类型还能这样写
由于之前没见过这种写法,一时认为这不应该是字符串吗,怎么能这么写呢?原来在 JDK 1.7 之前,Java 中的整数类型(byte、short、int、long)只支持十进制表示法,无法使用下划线分隔数字,使其更易读。从 JDK 1.7 开始,引入了下划线分隔符(_)的特性,允许在整数类型中使用下划线进行分隔。这个特性的目的是为了提高代码的可读性,特别是对于较大的数字。通过在数字中添加下划线,可以更清晰地表示数字的结构和值,方便阅读和理解代码。下划线只是用作分隔符,不会对数值本身产生任何影响。原创 2023-06-29 17:41:56 · 387 阅读 · 0 评论 -
同一个controller中同一个service不同的方法调用怎么有的会为null
今天疯狂给测试写bug的时候,发现我同一个controller中不同的方法调用同一个service竟然有的方法会为null。当时就很奇怪了,不过仔细看了下,应该是我手滑public写成private了那这是什么原因呢,在controller中private和public是有什么区别呢?细心的我又发现了,这两个方法还有个区别是一个是AOP的切点private的则不是。 这就引出另一个问题了,AOP为什么切不到private方法。在springboot2.x之后AOP的动态代理默认都是cglib代理原创 2022-02-16 11:35:23 · 1011 阅读 · 0 评论 -
try后面还能跟小括号,赶紧记录起来
今天在阅读代码的时候,碰到一个很陌生的写法,try后面跟着小括号 try (SqlSession sqlSession = sqlSessionFactory.openSession(); Cursor<WechatUser> wechatUserCursor = sqlSession.getMapper(WechatUserDao.class).getAllPhone() ) { } catch (IO原创 2022-02-10 16:41:31 · 3121 阅读 · 0 评论 -
这些方法也可以让线程退出
public class MyselfTest { public static boolean flag = false; public static void main(String[] args) throws InterruptedException { Thread thread = new Thread(() ->{ int i = 0; while (!flag) { i++原创 2021-12-07 17:23:58 · 199 阅读 · 0 评论 -
spring事务的总结
事务的基本概念事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。特点:事务是恢复和并发控制的基本单位。事务应该具有4个属性:原子性、_致性、 隔离性、持久性。这四个属性通常称为ACID特性。原子性(Automicity ) o 一个事务是一个不可分割的工作单位,事务中包括的诸操作要 么都做,要么都不做。一致性(Consistency )o事务必须是使数据库从一个一致性状态变到另一个一致性状态。 一致性与原子性是密切相关的。隔离性(Isolation )原创 2021-11-23 09:34:34 · 82 阅读 · 0 评论 -
Hystrix常见参数配置
Command基础配置配置配置描述execution.isolation.strategy隔离类型:THREAD-线程隔离,SEMAPHORE-信号量隔离execution.timeout.enabled超时检查是否开启fallback.enabled是否开启降级处理请求上下文配置配置配置描述requestCache.enabled是否开启请求缓存,默认为truerequestLog.enabled是否开启请求日志,默认为true原创 2021-11-07 22:10:24 · 305 阅读 · 0 评论 -
在Java中获取Android端登陆的设备信息
最近在项目中有个需求,需要获取Android设备的信息,例如:华为,Android10。可以通过request.getHeader(“User-Agent”);中来解析出。但是实践证明华为手机并不能拿到手机型号等信息。通过很多次的百度百度,发现谷歌的Android包有此神效。首先maven进行导入<dependency> <groupId>com.google.android</groupId> <artifa原创 2020-10-28 18:23:46 · 1019 阅读 · 0 评论 -
在Centos7中安装ElasticSearch并启动运行
下载ElasticSearch由于在官网下载的话是特别慢,所以我这边选择使用华为云的国内镜像地址安装通过sftp工具上传到云服务器上,通过使用命令将其解压tar -zxvf elasticsearch-7.4.2使用命令将文件夹移动到local下以便于管理cp -r elasticsearch-7.4.2 /usr/local修改配置文件vim elasticsearch-7.4.2/config/elasticsearch.yml我是针对一下几个配置项进行了修改:clu原创 2020-07-09 23:24:55 · 1064 阅读 · 0 评论 -
Centos7 下 MySql8.0 的安装与配置
Centos7 下 MySql8.0 的安装与配置安装环境:Centos7 ,mysql8.01.配置 yum 源下载 mysql 源安装包wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm安装 mysql 源yum localinstall mysql80-community-release-el7-1.noarch.rpm如图所示,此时如果不是 root 用户登陆,需要登陆 root 用户,原创 2020-07-08 11:16:12 · 586 阅读 · 0 评论 -
Redis的数据类型基本语法
Redis的数据类型Redis的数据类型 - stringstring 字符串string: 最简单的字符串类型键值对缓存,也是最基本的key相关keys *:查看所有的key (不建议在生产上使用,有性能影响)type key:key的类型string类型get/set/del:查询/设置/删除set rekey data:设置已经存在的key,会覆盖setnx rekey data:设置已经存在的key,不会覆盖set key value ex time:设置带过期时间的数据ex原创 2020-07-04 02:53:10 · 160 阅读 · 0 评论 -
Redis持久化机制,优缺点,如何选择合适方式
Redis持久化机制RDB: Redis DataBaseAOF: Append Only FileRDB什么是RDBRDB:每隔一段时间,把内存中的数据写入磁盘的临时文件,作为快照,恢复的时候把快照文件读进内存。如果宕机重启,那么内存里的数据肯定会没有的,那dis后,则会恢复。备份与恢复内存备份 --> 磁盘临时文件临时文件 --> 恢复到内存RDB优劣势优势每隔一段时间备份,全量备份灾备简单,可以远程传输子进程备份的时候,主进程不会有任何io操作(原创 2020-07-04 02:43:14 · 188 阅读 · 0 评论 -
使用IDEA搭建Spring源码阅读环境
spring源码阅读环境搭建Spring已经将源码从SVN上迁移到了GitHub上,而且也改为机遇Gradle构建项目。它取代了之前的Ant+lvy系统,所以构建Spring源码之前得先安装Git以及Gradle,这两个工具的安装就不做赘述了。下载Spring因为Spring使用GitHub管理的,所以我们得通过Git clone命令拉去到我们本地,但是由于GitHub指向的是外网,我们国内下载是特别慢的,Spring又是很大的一个工程,所以我们可以利用另一个方法,可以通过国内的Git网站码云做一个中原创 2020-05-26 18:08:09 · 297 阅读 · 0 评论 -
Java集合之HashMap(1.7和1.8)源码分析
Java集合之HashMap本文将从以下几个方面来理解HashMap:什么是哈希表HashMap源码分析HashMap和HashTable的区别1.7和1.8有什么区别哈希表哈希表是种数据结构,它可以提供快速的插入操作和查找操作。第一次接触哈希表时。不论哈希表中有多少数据,插入和删除(有时包括侧除)只需要接近常量的时间即0(1)的时间级。为什么哈希这么快呢首先不得不提哈希函数了( p= H(key) ),哈希函数就是给一个任意大小的数据生成出一个固定长度的数据,作为它的映射 ,这种原创 2020-05-08 23:20:40 · 240 阅读 · 0 评论 -
jvm内存区域和类加载流程
运行时数据区域程序计数器 是线程私有的,程序计数器是一块较小的内存,它可以看作是当前线程执行的字节码的符号指示令, 它是程序控制流的指示器,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器来完成 。Java虚拟机栈 是线程私有的,每个方法被执行时都会调用一个栈帧(方法运行时很重要的基础数据结构)用于存储局部变量表 、操作数栈、动态链接、方法出口等信息。每个方法被调...原创 2020-05-01 01:29:24 · 224 阅读 · 0 评论 -
java连接elasticSearch
配置连接ElasticSearch@Configrationpublic class elasticSearch{TransportClient client=null; @Bean public TransportClient client(){ Settings setting=Settings.bulider().put("cluster.name",...原创 2020-04-09 01:25:25 · 127 阅读 · 0 评论 -
springboot的一些常用的注解及用法
@Bean(destroyMethod = "close")//destroy-method="close"的作用是当数据库连接不使用的时候,就把该连接重新放到数据池中,方便下次使用调用.原创 2020-04-09 01:20:53 · 121 阅读 · 0 评论