摘要:
在一次调用webservice接口时,因为webservice通信的主要报文格式为xml,如果通过直接拼接字符串的方式来生成xml,则会导致代码特别混乱;并且由于字符串大量拼接也会占用JVM大量内存,我们是不是应该有一种类似于java bean转json这样子优雅的方式来讲java bean转成xm 阅读全文
摘要:
在springboot中我们可以通过注解@ControllerAdvice来声明一个异常拦截类,通过@ExceptionHandler获取拦截类抛出来的具体异常类,我们可以通过阅读源码并debug去解读springboot的异常拦截机制。 在了解异常拦截机制之前,我引用他人图片大致介绍下spring 阅读全文
摘要:
1、服务器安装docker sudo yum install -y yum-utils device-mapper-persistent-data lvm2 sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/ 阅读全文
摘要:
使用配置: 1、在pom文件中引入spring-session的jar包 <!--springsession--><dependency><groupId>org.springframework.session</groupId><artifactId>spring-session-data-red 阅读全文
摘要:
package cn.test.hf.test3;import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.ReentrantLock;public class FactoryUtils { priva 阅读全文
摘要:
在高并发的情况下,张三和李四操作了同一个账户,可能会出现的问题是张三和李四取钱都成功了,那么账户的余额就为负数了。 处理这种问题 方法1、使用synchronized(obj)同步代码块来锁定当前的obj对象,obj就是同步监视器,任何时刻只有一个线程可以获得对同步监视器的锁定,线程操作完后释放对象 阅读全文
摘要:
一、线程和进程的区别 在操作系统中所有运行的任务通常对应一个进程,进程是系统进行资源分配和调度的一个独立单位。线程是进程的组成部分,一个进程最少包含一个线程。并发和并行的区别是,并发指的在同一时刻内,多个指令在多个处理器上同时执行。并发指的是同一个时刻内一个只有一条指令执行,但多个进程指令被快速轮换 阅读全文
摘要:
在以前的JAVA版本中,如果程序需要检测文件的变化,那么需要开辟一个线程每隔一段时间去遍历一次指定的目录,如果发现此次遍历结果和上次不同,那么就认为文件变动了 ,这样的方式非常繁琐,JAVA 7之后的NIO.2 Path类提供了一个方法来监听指定文件目录内文件的变化状态。 1、获取文件系统的Watc 阅读全文