自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(205)
  • 资源 (6)
  • 收藏
  • 关注

转载 Java并发控制:ReentrantLock Condition使用详解

本文转自:hongdada - Java并发控制:ReentrantLock Condition使用详解生产者-消费者(producer-consumer)问题,也称作有界缓冲区(bounded-buffer)问题,两个进程共享一个公共的固定大小的缓冲区。 其中一个是生产者,用于将消息放入缓冲区;另外一个是消费者,用于从缓冲区中取出消息。 问题出现在当缓冲区已经满了,而此时生产者还想向其中...

2018-07-17 20:06:13 345

转载 Java多线程系列——深入重入锁ReentrantLock

本文转自: Java多线程系列——深入重入锁ReentrantLock简述ReentrantLock 是一个可重入的互斥(/独占)锁,又称为“独占锁”。ReentrantLock通过自定义队列同步器(AQS-AbstractQueuedSychronized,是实现锁的关键)来实现锁的获取与释放。其可以完全替代 synchronized 关键字。JDK 5.0 早期版本,其性能远好...

2018-07-16 21:50:32 194

转载 轻松学习java可重入锁(ReentrantLock)的实现原理

本文转自:轻松学习java可重入锁(ReentrantLock)的实现原理前言相信学过java的人都知道 synchronized 这个关键词,也知道它用于控制多线程对并发资源的安全访问,兴许,你还用过Lock相关的功能,但你可能从来没有想过java中的锁底层的机制是怎么实现的。如果真是这样,而且你有兴趣了解,今天我将带领你轻松的学习下java中非常重要,也非常基础的可重入锁-Reentr...

2018-07-16 21:47:27 122

转载 Java多线程学习之wait、notify/notifyAll 详解

本文转自:MoonGeek - Java多线程学习之wait、notify/notifyAll 详解1、wait()、notify/notifyAll() 方法是Object的本地final方法,无法被重写。2、wait()使当前线程阻塞,前提是 必须先获得锁,一般配合synchronized 关键字使用,即,一般在synchronized 同步代码块里使用 wait()、notify/n...

2018-07-16 21:29:23 790

转载 Java Thread 的使用

本文转自: Java Thread 的使用一、线程的状态在正式学习Thread类中的具体方法之前,我们先来了解一下线程有哪些状态,这个将会有助于后面对Thread类中的方法的理解。线程从创建到最终的消亡,要经历若干个状态。一般来说,线程包括以下这几个状态:创建(new)、就绪(runnable)、运行(running)、阻塞(blocked)、time waiting、waitin...

2018-07-16 21:23:52 179

原创 Java 并发编程:同步容器

为了方便编写出线程安全的程序,Java里面提供了一些线程安全类和并发工具,比如:同步容器、并发容器、阻塞队列、Synchronizer(比如CountDownLatch)。今天我们就来讨论下同步容器。一.为什么会出现同步容器?在Java的集合容器框架中,主要有四大类别:List、Set、Queue、Map。List、Set、Queue接口分别继承了Collection接口,Map本身是...

2018-07-16 21:17:00 346

原创 java 集合之 Collections.UnmodifiableXXX 与 Collections.synchronizedXXX

java 中提供了一系列的创建不可变集合的方法 和 创建同步集合的方法。下面进行简单的介绍。一、UnmodifiableXXX 不可变集合1、 实现原理下面以 UnmodifiableList 为例来进行说明。 static class UnmodifiableList<E> extends UnmodifiableCollection<E> ...

2018-07-03 21:44:31 2126

转载 Java 并发编程 -- 对象的不变性和安全的发布对象

本文转自:Java 并发编程(二)对象的不变性和安全地发布对象一、不变性满足同步需求的另一种方法是使用不可变对象(Immutable Object)。到目前为止,我们介绍了许多与原子性和可见性相关的问题,例如得到失效数据,丢失更新操作或光查到某个对象处于不一致的状态等等,都与多线程视图同时访问同一个可变的状态相关。如果对象的状态不会改变,那么这些问题与复杂性也就自然消失了。如果某个对象...

2018-07-03 21:01:10 821 3

原创 Java 线程安全性中的对象发布和逸出

Java 线程安全性中的对象发布和逸出“发布(Publish)” 一个对象的意思是指,使对象能够在当前作用域之外的代码中使用。例如,将一个指向该对象的引用保存到其他代码可以访问的地方,或者在某一个非私有的方法返回该引用,或者将引用传递到其他类的方法中。在许多情况中,我们要确保对象及其内部状态不被发布。而在某些情况下,我们又需要发布某个对象,但如果在发布时要确保线程安全性,则可能需要同步。当某个...

2018-07-03 20:58:30 951 1

转载 Java并发编程--理解ThreadLocal

本文转自: Java并发编程–理解ThreadLocal 另一篇博文: Hibernet中的ThreadLocal使用本文参考:http://blog.csdn.net/lufeng20/article/details/24314381http://www.cnblogs.com/chenying99/articles/3405161.htmlThreadLoca...

2018-07-03 20:54:10 187

转载 共享Session-spring-session-data-redis

对于分布式的应用来说,用户的会话管理通常有Session Stick,Session复制,Session集中管理,基于Cookie管理四种方式。各自点评一下: Session Stick 需要某个用户的会话与某台服务器想绑定,有点耦合 Session复制 每台服务器都有全部的会话信息,会话同步需要时间,另外每台服务器都有全量数据也是个问题 ...

2018-07-03 20:43:28 2248

转载 Java volatile关键字

本文转自:Java volatile关键字  当一个共享变量被volatile修饰时,它会保证修改的值立即被更新到主存“, 这里的”保证“ 是如何做到的?和 JIT的具体编译后的CPU指令相关吧?  volatile特性  内存可见性:通俗来说就是,线程A对一个volatile变量的修改,对于其它线程来说是可见的,即线程每次获取volatile变量的值都是最新的。  volatile的使...

2018-07-03 20:23:24 131

转载 spring Cache 整合redis

本文转自:spring整合redis缓存,以注解(@Cacheable、@CachePut、@CacheEvict)形式使用spring Cache 整合redismaven项目中在pom.xml中依赖2个jar包,其他的spring的jar包省略:<dependency> <groupId>redis.clients</groupId&gt...

2018-06-25 16:22:58 689

转载 Spring+EhCache缓存实例

本文转自:Spring+EhCache缓存实例一、ehcahe的介绍EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider。Ehcache是一种广泛使用的开 源Java分布式缓存。主要面向通用缓存,Java EE和轻量级容器。它具有内存和磁盘存储,缓存加载器,缓存扩展,缓存异常处理程序,一个gzip缓存servlet过...

2018-06-25 14:03:54 347

转载 注释驱动的 Spring cache 缓存介绍

本文转自:https://www.cnblogs.com/yjmyzz/p/3863311.html原文:http://www.ibm.com/developerworks/cn/opensource/os-cn-spring-cache/概述Spring 3.1 引入了激动人心的基于注释(annotation)的缓存(cache)技术,它本质上不是一个具体的缓存实现方案(例如 EHCac...

2018-06-25 12:34:01 297

转载 SpringBoot整合Swagger2

本文转自:SpringBoot整合Swagger2相信各位在公司写API文档数量应该不少,当然如果你还处在自己一个人开发前后台的年代,当我没说,如今为了前后台更好的对接,还是为了以后交接方便,都有要求写API文档。手写Api文档的几个痛点:文档需要更新的时候,需要再次发送一份给前端,也就是文档更新交流不及时。接口返回结果不明确不能直接在线测试接口,通常需要使用工具,比...

2018-06-24 19:27:32 326

转载 Spring Boot 项目启动时初始化资源

本文转自:纯洁的微笑-ityouknow 在我们实际工作中,总会遇到这样需求,在项目启动的时候需要做一些初始化的操作,比如初始化线程池,提前加载好加密证书等。今天就给大家介绍一个 Spring Boot 神器,专门帮助大家解决项目启动初始化资源操作。这个神器就是 CommandLineRunner,CommandLineRunner 接口的 Component 会...

2018-06-24 19:03:41 2990

转载 为什么说 Java 程序员到了必须掌握 Spring Boot 的时候?

本文转自:纯洁的微笑-ityouknow Spring Boot 诞生的背景是什么?Spring 企业又是基于什么样的考虑创建 Spring Boot? 传统企业使用 Spring Boot 会给我们带来什么样变革?Spring Boot 2.0 的推出又激起了一阵学习 Spring Boot 热,就单从我个人的博客的访问量大幅增加就可以感受到大家对学习 Spri...

2018-06-24 19:02:00 406

转载 springboot(十九):使用Spring Boot Actuator监控应用

本文转自: 纯洁的微笑-ityouknow 微服务的特点决定了功能模块的部署是分布式的,大部分功能模块都是运行在不同的机器上,彼此通过服务调用进行交互,前后台的业务流会经过很多个微服务的处理和传递,出现了异常如何快速定位是哪个环节出现了问题?在这种框架下,微服务的监控显得尤为重要。本文主要结合...

2018-06-24 17:41:41 3662

转载 springboot(十七):使用Spring Boot上传文件

上传文件是互联网中常常应用的场景之一,最典型的情况就是上传头像等,今天就带着带着大家做一个Spring Boot上传文件的小案例。1、pom包配置我们使用Spring Boot最新版本2.0.2、jdk使用1.8、tomcat8.5。<parent> <groupId>org.springframework.boot&

2018-06-24 10:44:25 1735 1

转载 springboot(十二):springboot如何测试打包部署

有很多网友会时不时的问我,spring boot项目如何测试,如何部署,在生产中有什么好的部署方案吗?这篇文章就来介绍一下spring boot 如何开发、调试、打包到最后的投产上线。开发阶段单元测试在开发阶段的时候最重要的是单元测试了,springboot对单元测试的支持已经很完善了。1、在pom包中添加spring-boot-starter-test...

2018-06-24 10:03:12 189

转载 springboot(十):邮件服务

springboot仍然在狂速发展,才五个多月没有关注,现在看官网已经到1.5.3.RELEASE版本了。准备慢慢在写写springboot相关的文章,本篇文章使用springboot最新版本1.5.3进行开发。发送邮件应该是网站的必备功能之一,什么注册验证,忘记密码或者是给用户发送营销信息。最早期的时候我们会使用JavaMail相关api来写发送邮件的相关代码,后...

2018-06-23 20:59:07 982

转载 SpringBoot2.0 jpa多数据源配置

本文转自:SpringBoot2.0 jpa多数据源配置随着Springboot升级到2.0,原来1.5.x的Jpa多数据源配置不能用了。现在总结一下Springboot2.0的jpa多数据源配置连接池还是用druid,但是不能用druid的starter了,譬如在1.5.x时用的是<dependency> <groupId>com.alibaba</...

2018-06-23 20:36:15 2527 1

转载 springboot(七):springboot+mybatis多数据源最简解决方案

说起多数据源,一般都来解决那些问题呢,主从模式或者业务比较复杂需要连接不同的分库来支持业务。我们项目是后者的模式,网上找了很多,大都是根据jpa来做多数据源解决方案,要不就是老的spring多数据源解决方案,还有的是利用aop动态切换,感觉有点小复杂,其实我只是想找一个简单的多数据支持而已,折腾了两个小时整理出来,供大家参考。 废话不多说直接上代码吧配置文...

2018-06-21 16:21:52 1075 2

转载 springboot(六):如何优雅的使用mybatis

这两天启动了一个新项目因为项目组成员一直都使用的是mybatis,虽然个人比较喜欢jpa这种极简的模式,但是为了项目保持统一性技术选型还是定了 mybatis。到网上找了一下关于spring boot和mybatis组合的相关资料,各种各样的形式都有,看的人心累,结合了mybatis的官方demo和文档终于找到了最简的两种模式,花了一天时间总结后分享出来。orm框架...

2018-06-21 16:12:12 187

原创 《Java 并发编程实战》读书笔记二:第2章 线程安全性

要编写线程安全的代码,其核心在于要对状态访问操作进行管理,特别是对共享的(Shared)和可变的(Mutable)状态的访问。从非正式的意义上来说,对象的状态是指存储在状态变量(例如实例或静态域)中的数据。对象的状态可能包括其他依赖对象的域。例如,某个 HashMap 的状态不仅存储在 HashMap 对象本身,还存储在许多 Map.Entry 对象中。在对象的状态中包含了任何可能影响其外部可...

2018-06-21 12:49:38 333

原创 《Java 并发编程实战》读书笔记一:第一章 并发简介

1.1 并发简史在早期的计算机中不包含操作系统,它们从头到尾只执行一个程序,并且这个程序能访问计算机中的所有资源。在这种裸机环境中,不仅很难编写和运行程序,而且每次只能运行一个程序,这对于昂贵并且稀有的计算机资源来说也是一种浪费。操作系统的出现使得计算机每次能运行多个程序,并且不同的程序都在单独的进程中运行,操作系统为各个独立执行的进程分配各种资源,包括内存,文件句柄以及安全证书等。如果需...

2018-06-21 12:49:11 225

转载 SQL Server Profiler工具使用说明

一、SQL Profiler工具简介SQL Profiler是一个图形界面和一组系统存储过程,其作用如下:图形化监视SQL Server查询; 在后台收集查询信息; 分析性能; 诊断像死锁之类的问题; 调试T-SQL语句; 模拟重放SQL Server活动; 也可以使用SQL Prof...

2018-06-13 21:36:51 1621

原创 Spring Boot JPA 懒加载

最近在使用spring jpa 的过程中经常遇到懒加载的错误:org.hibernate.LazyInitializationException: could not initialize proxy [xxxx#18] - no Session 通过查询资料,整理了一下常见的几种解决办法。spring.jpa.open-in-view 配置测试 dao 层或者 service 层时,会...

2018-06-11 22:08:51 18073 8

转载 Spring Data JPA 之 一对一,一对多,多对多 关系映射

  一、@OneToOne关系映射 JPA使用@OneToOne来标注一对一的关系。 实体 People :用户。 实体 Address:家庭住址。 People 和 Address 是一对一的关系。 这里用两种方式描述JPA的一对一关系。 一种是通过外键的方式(一个实体通过外键关联到另一个实体的主键); 另外一种...

2018-06-10 17:01:10 79129 25

原创 Spring Data JPA 实现多表关联查询

Spring Data JPA 的多表操作比较麻烦。下面通过文章与文章类别(多对多的关系)来介绍Spring Data JPA 中的多表操作。代码实现jar包依赖和datasource配置这里就不贴了。实体类1、实体类 Article.javaimport java.io.Serializable;import java.util.Date;impor...

2018-06-09 17:51:45 104590 27

转载 springboot(五):spring data jpa的使用

在上篇文章springboot(二):web综合开发中简单介绍了一下spring data jpa的基础性使用,这篇文章将更加全面的介绍spring data jpa 常见用法以及注意事项使用spring data jpa 开发时,发现国内对spring boot jpa全面介绍的文章比较少案例也比较零碎,因此写文章总结一下。本人也正在翻译Spring Data J...

2018-06-04 22:36:15 405

转载 springboot(四):thymeleaf使用详解

在上篇文章springboot(二):web综合开发中简单介绍了一下thymeleaf,这篇文章将更加全面详细的介绍thymeleaf的使用。thymeleaf 是新一代的模板引擎,在spring4.0中推荐使用thymeleaf来做前端模版引擎。thymeleaf介绍简单说, Thymeleaf 是一个跟 Velocity、FreeMarker 类似的模板引擎...

2018-06-04 21:50:10 356

转载 springboot(二):web综合开发

上篇文章介绍了Spring boot初级教程:spring boot(一):入门篇,方便大家快速入门、了解实践Spring boot特性;本篇文章接着上篇内容继续为大家介绍spring boot的其它特性(有些未必是spring boot体系桟的功能,但是是spring特别推荐的一些开源技术本文也会介绍),对了这里只是一个大概的介绍,特别详细的使用我们会在其它的文章中来展开说明。web开发...

2018-06-04 12:28:39 190

转载 springboot(一):入门篇

什么是spring bootSpring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。用我的话来理解,就是spring boot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring...

2018-06-04 08:51:54 166

原创 Spring boot + quartz 实现动态管理任务

在实际项目应用中经常会用到定时任务,可以通过quartz和spring的简单配置即可完成,但如果要改变任务的执行时间、频率,废弃任务等就需要改变配置甚至代码需要重启服务器,这里介绍一下如何通过quartz与spring的组合实现动态的改变定时任务的状态的一个实现。配置文件相关jar包依赖配置这里使用的 gradle 进行依赖管理。包含了 jpa, quartz, thymeleaf...

2018-06-02 11:33:49 6986 3

转载 SpringBoot几种定时任务的实现方式

原文地址:SpringBoot几种定时任务的实现方式定时任务实现的几种方式: Timer:这是java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务。使用这种方式可以让你的程序按照某一个频度执行,但不能在指定时间运行。一般用的较少。 ScheduledExecutorService:也jdk自带的一个类...

2018-05-30 22:24:00 10138

转载 SqlServer基础之(触发器)

阅读目录一:触发器的优点二:触发器的作用三:触发器的分类四:触发器的工作原理五:创建触发器六:管理触发器 概念:  触发器(trigger)是SQL server 提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,当对一个表进行操作( insert,delete,&

2018-05-09 08:34:57 362

转载 SQl Server 中登录名 、用户、角色、概念一览

转载:http://www.2cto.com/database/201306/216922.html   数据库,角色,用户,安全      登录SQL server 2008可以用windows身份验证也可以用sql server身份验证,不论那种,进入数据库后都拥有超级用户的权限,这显然是不太安全的。

2018-05-07 20:53:07 9152

转载 在SQL Server中创建用户角色及授权

本文转自:在SQL Server中创建用户角色及授权参考文献正文要想成功访问 SQL Server 数据库中的数据, 我们需要两个方面的授权:获得准许连接 SQL Server 服务器的权利;获得访问特定数据库中数据的权利(select, update, delete, create table …)。假设,我们准备建立一个 dba 数据库帐户,用来管理数据库 mydb。1....

2018-05-07 20:52:40 1492

SQLServer 2008编程入门经典(第3版)

SQLServer 2008编程入门经典(第3版)

2017-07-04

postman chrome插件

rest接口调用chrome插件(ctx格式,如果因为谷歌浏览器版本问题不能直接安装,可以将文件改为rar格式进行解压,并将里面的_metadata文件夹重命名为metadata,再重试)

2017-06-04

restclient 3.5

rest接口调用工具,双击即可运行

2017-06-04

Redis 入门指南 (带书签)

Redis入门参考书

2016-07-06

DFA,NFA实现

实现了DFA,NFA算法,DFA最小化,NFA转化为DFA以及正则表达式转化为NFA的算法,是有限状态自动机的初学者很不错的学习资源

2014-03-24

QR分解求矩阵全部特征值

将一个矩阵转化为上Hessenberg矩阵后,再使用QR分解求解矩阵 的全部特征值

2013-10-29

空空如也

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

TA关注的人

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