自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 Java并发原理学习笔记+总结+实战(6)——可重入锁

Java中常用的重入锁 java中重入锁的定义是指可重复、递归调用的锁,在得到同一个对象或类的前提下,外层使用锁之后,在内层中依然可是使用且不会发生死锁。其中最常见的关键字是synchronize和reentrantLock这两个。使用synchronize实现import java.util.concurrent.TimeUnit;import java.util.conc...

2019-04-02 14:49:43 207

原创 Java并发原理学习笔记+总结+实战(5)——Lock接口

一、 在JDK1.5之后,在java.util.concurrent.locks的包中提供了另一种实现代码同步的方法,Lock。 在前面说过,synchronize锁是一种重量级的,特别耗费资源的锁。在使用synchronize中,当线程被阻塞或等待处理,但又没有释放锁时,其他线程只能在外面等待,非常影响执行效率。这就需要有一种机制可以不让等待的线程一直无期限地等待下去(比如只...

2019-03-15 11:07:01 195

原创 Java并发原理学习笔记+总结+实战(4)——volatile的原理与使用

volatile是一种轻量级锁,被volatile关键字修饰的变量,在线程之间是可见的。即一个线程修改了这个变量的值,在另一个线程中能够读到这个修改后的值。 像我们之前所说的synchronize除了能让线程之间互斥以外,还有一个非常大的作用就是办证变量的可见性。/** * 保证可见性的前提 * <p> * 多个线程拿到的是同一把锁,否则是保证不了的。 ...

2019-03-14 15:33:25 177

原创 Java并发原理学习笔记+总结+实战(3)——单例与线程安全问题

1.单例模式饿汉模式public class Singleton { // 私有化构造方法 private Singleton() { } private static Singleton instance = new Singleton(); public static Singleton getInstance() { return instance...

2019-03-14 10:32:18 133

原创 Java并发原理学习笔记+总结+实战(2)——线程带来的风险

1、线程带来的风险 java对线程的支持其实是一把双刃剑。虽然java提供了相应的语言和库,以及一种明确的跨平台内存模型,这些工具简化了并发应用程序的开发,但同时也提高的对开发人员的技术要求,因为更多的程序中会使用线程。1.1 线程的安全性问题 线程安全性可能是非常复杂的,在没有充分同步的情况下,多个线程中的操作次序是不可预测的,甚至会产生奇怪的结果。/** * U...

2019-03-01 16:11:38 190

原创 Java并发原理学习笔记+总结+实战(1)

为什么要学习并发编程?•1.发挥多处理的强大能力•2.建模的简单性•3.异步事件的简化处理•4.响应更加灵敏的用户界面•1.找工作,面试•2.了解并发编程的原理,提高代码的编写能力•3.解决工作中遇到的并发问题......线程与进程首先要先学会区分线程和进程:进程:运行中的程序,是资源分配的基本单位。进程中包含多个线程,线程共享进程的资...

2019-02-28 16:33:29 180

原创 从SolrDocument转换为bean

我需要将从Solr检索到的数据转换为特定的类,我尝试了3种不同的方法,但每种方法都存在一些问题。方法1:使用第三方库 - JSONUtil。 SolrDocument solrDocument = (SolrDocument) iterator.next(); String jsonString = JSONUtil.toJSON(solrDocument); Ev...

2019-01-17 15:13:36 952

原创 springcloud微服务项目架构搭建第二天

springcloud微服务项目架构搭建第二天:整合oauth2时遇到的坑推荐文章:http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.htmlspringboot2.0 oauth2重要变更https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0-Migration...

2018-08-28 10:06:23 3355 2

原创 springcloud微服务项目架构搭建第一天

springcloud微服务项目架构搭建第一天(一).项目简介1、准备工作:idea创建springboot模板2、后台应该涉及的技术(后期可能会有删改)Spring Framework 容器 SpringMVC MVC框架 Apache Shiro 安全框架 Spring session 分布式Session管理 MyBatis OR...

2018-08-02 10:13:47 11906

原创 Springmvc和spring的父子容器

一般我们使用spring和springMVC的时候,web.xml的配置一般先配置加载spring            contextConfigLocation        classpath:spring/applicationContext-*.xml                org.springframework.web.context.ContextLoaderListener

2018-01-19 13:40:54 541

原创 在Spring Cloud中.yml与.properties

在Spring Cloud的配置文件中,发现使用yml与properties两种后缀的文件:在application.properties中内容是这样的:server.port=8801eureka.client.register-with-eureka=falseeureka.client.fetch-registry=falseeureka.client.serviceUrl.defau

2017-06-02 17:53:21 22325 3

转载 Maven的pom.xml文件的tag详解

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.

2017-05-19 10:01:34 2675

转载 chrome不再支持showModalDialog

2014年的某一天,chrome升级后,突然发现某个在用的系统不能弹出模态窗口了,查找各种资料后确认新版本(可能为Chrome 37+)确实把这个支持去掉了,有这么坑人的吗!虽然说谷歌不支持了,可是火狐用自己的内核它支持啊。。。。。所以特地在网上找了很久

2017-04-27 16:11:37 522

原创 Hibernate中clear()与flush()

在这次项目中偶尔会遇到“identifier of an instance of”这个错误,一开始还以为是没进行clear()操作,可是仔细排查了一遍后发现居然是因为flush()引起的这个错误。因为在进行数据库的写操作时,涉及到parent也就是上级分类属性。无论是Load 还是 Get 都会首先查找缓存(一级缓存) 如果没有,才会去数据库查找,调用Clear() 方法,可以强制清除Sess

2017-04-06 13:46:37 274

原创 ConvertUtils.register(new DateConverter(null), java.util.Date.class)使用

在使用BeanUtils.copyProperties()方法过程中报"no value specified for date"错误,是因为Converter这个居然只支持一些基本的类型,居然连java.util.Date这个也支持不了,在没有使用类型注册器的前提下使用date类型会报上述错误。 BeanUtils.copyProperties(dest, orig);这种copy是浅拷贝,复

2017-03-13 13:00:05 3041

原创 Apache+PHP+Discuz论坛开发环境搭建

Apache2.4安装过程:1.       以管理员身份运行命令提示符,具体操作方法是,点“开始”->“所有程序”->“附件”,右键点击“命令提示符”,选择“以管理员身份运行”就可以了。2.       把路径指向Apache文件下bin文件3.       输入httpd –k install()4.       安装成功界面:以上过程是把apache服

2017-02-28 11:25:03 2181

原创 Criteria联合分组查询+bject转对象,java实现Object转实体类备忘录

最近接触Criteria联合分组查询+bject转对象,java实现Object转实体类所以做了一下备忘录

2017-02-28 11:03:09 927

原创 Json时间转换中时间自动加时区的解决办法

办法一:在Model中直接使用注解对时间进行格式化输出和时区选择 @JsonFormat(pattern = “yyyy-MM-dd HH:mm:ss”, locale = “zh”, timezone=”GMT+8”) @Temporal(TemporalType.TIMESTAMP) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", locale

2017-02-24 09:34:50 11941

原创 List<Map<String, Object>>对其中的map按规则排序

public List<Map<String, Object>> getBreedRecordList(Batch batchBean) { List<Map<String, Object>> fieldList = null; Map<String, Object> fieldMap = null; if (null != batchBean.get

2017-02-23 13:04:50 3050

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除