自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (10)
  • 问答 (1)
  • 收藏
  • 关注

原创 springboot获取项目目录路径

springboot部署后获取项目的路径//获取跟目录File path = new File(ResourceUtils.getURL("classpath:").getPath());if(!path.exists()) path = new File("");System.out.println("path:"+path.getAbsolutePath());//如果上传目录为/...

2018-11-08 09:33:02 28219 9

原创 Java并发编程之 lock (十)

一. 前言synchronized 是Java的关键字,是Java的内置特性,在JVM层面实现了对临界资源的同步互斥访问,但 synchronized 粒度有些大,在处理实际问题时存在诸多局限性,比如响应中断等。Lock 提供了比 synchronized更广泛的锁操作,它能以更优雅的方式处理线程同步问题。二.Lock相关接口1.lockvoid lock();lock()方法是平常使...

2018-11-29 10:29:17 210 1

原创 springboot2.1.1 集成 redis

一.poml文件 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-b

2018-11-26 16:47:14 524

原创 redis常用命令与配置

一.密码验证1.验证密码auth myPassword2.设置新密码config set requirepass newPassword(新密码)

2018-11-26 10:52:39 119

原创 redis的window版本介绍安装与自启动

一.redis介绍redis是由意大利人Salvatore Sanfilippo(网名:antirez)开发的一款内存高速缓存数据库。是完全开源免费的,用C语言编写的,遵守BSD协议,高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库。二.redis的特点Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。R...

2018-11-26 08:04:16 294

原创 RabbitMQ的介绍与Linux版安装(详细版)

一.Rabbitmq介绍RabbitMQ是采用Erlang语言实现AMQP(Advanced Message Queuing Protocol,高级消息队列协议)的消息中间件,它最初起源于金融系统,用于在分布式系统中存储转发消息。MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接...

2018-11-24 22:05:24 310

转载 消息队列之 RabbitMQ

关于消息队列,从前年开始断断续续看了些资料,想写很久了,但一直没腾出空,近来分别碰到几个朋友聊这块的技术选型,是时候把这块的知识整理记录一下了。市面上的消息队列产品有很多,比如老牌的 ActiveMQ、RabbitMQ ,目前我看最火的 Kafka ,还有 ZeroMQ ,去年底阿里巴巴捐赠给 Apa...

2018-11-23 16:17:21 92

原创 Springmvc中Callable与DeferredResult异步处理

一.前言使用异步servlet主要原因就是因为,在service方法中业务逻辑如果碰到io操作时间比较长的操作,这样这个service方法就会长时间占用tomcat容器线程池中的线程,这样是不利于其他请求的处理的,当线程池中的线程处理任务时,任务由于长时间io操作,肯定会阻塞线程处理其他任务,引入异步servlet的目的就是将容器线程池和业务线程池分离开。在处理大io的业务操作的时候,把这个操作...

2018-11-23 12:03:41 696

原创 springboot之AOP切面日志

一.定义注解Log用户在开启日志记录功能@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public @interface Log { String value() default "";}二.定义日志切面@Aspect@Componentpublic class LogsAspect { p...

2018-11-23 10:42:02 2414

原创 Java并发编程之原子性Synchronized(九)

一.前言线程安全是并发编程中的重要关注点,应该注意到的是,造成线程安全问题的主要诱因有两点,一是存在共享数据(也称临界资源),二是存在多条线程共同操作共享数据。因此为了解决这个问题,我们可能需要这样一个方案,当存在多个线程操作共享数据时,需要保证同一时刻有且只有一个线程在操作共享数据,其他线程必须等到该线程处理完数据后再进行,这种方式有个高尚的名称叫互斥锁,即能达到互斥访问目的的锁,也就是说当一...

2018-11-22 09:58:13 399

原创 springboot动态切换多个数据源(主从)

一.前言通过springboot操作mysql数据库,但是在实际业务场景中,数据量迅速增长,一个库一个表已经满足不了我们的需求的时候,我们就会考虑分库分表的操作,在springboot中如何实现多数据源,动态数据源切换,读写分离等操作。二.多源数据库主要涉及的maven包 <dependency> <groupId>com.alibaba&amp

2018-11-21 11:06:18 6808 4

原创 IDEA项目上传到github

一、登录GitHub上创建一个新仓库,比如Demo1二.在IDEA操作流程创建一个项目或者已有的项目,创建Git仓库vcs—>import into version control—>Create Git Repository添加远程仓库的关联vcs—>git—>Repository—>re

2018-11-20 16:44:45 167

原创 Java并发编程之原子性Atomic(八)

一.Atomic包简介Atomic包中的类基本的特性就是在多线程环境下,当有多个线程同时对单个(包括基本类型及引用类型)变量进行操作时,具有排他性,即当多个线程同时对该变量的值进行更新时,仅有一个线程能成功,而未成功的线程可以向自旋锁一样,继续尝试,一直等到执行成功。Atomic系列的类中的核心方法都会调用unsafe类中的几个本地方法。我们需要先知道一个东西就是Unsafe类,全名为...

2018-11-20 15:49:56 217

原创 Java并发编程之CountDownLatch(七)

一.介绍JDK1.5以前,使用并发操作,都是通过Thread,Runnable来操作多线程;但是在JDK1.5之后,提供了非常方便的线程池(ThreadExecutorPool),主要代码由大牛Doug Lea完成,因为实在太过于优秀,所以被加入到jdk之中。JDk1.5提供了一个非常有用的包,Concurrent包,这个包主要用来操作一些并发操作,提供一些并发类,可以方便在项目当中傻瓜式应用。...

2018-11-20 09:07:08 180

原创 Java并发编程之内存模型JMM(六)

一.并发编程模型的分类在并发编程中,我们需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体)。通信是指线程之间以何种机制来交换信息。在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递。在共享内存的并发模型里,线程之间共享程序的公共状态,线程之间通过写-读内存中的公共状态来隐式进行通信。在消息传递的并发模型里,线程之间没有公共状态,线程之间必须通...

2018-11-19 15:35:15 171

原创 Android RecyclerView更新删除单条数据

增加一条数据 User user = new User(); mUser.add(user); adapter.notifyItemInserted(mUser.size());//通知演示插入动画 adapter.notifyItemChanged(mUser.size());//增加一条 adapter.notifyItem...

2018-11-19 15:17:01 4928 1

原创 Java并发编程之CPU多级缓存与缓存一致性(五)

一.前言CPU的频率太快了,快到主存跟不上,这样在处理器时钟周期内,CPU常常需要等待主存,浪费资源。所以cache的出现,是为了缓解CPU和内存之间速度的不匹配问题(结构:cpu->cache->memory)CPU cache有什么意义1)时间局部性:如果某个数据被访问,那么在不久的将来它很可能再次被访问2)空间局部性:如果某个数据被访问,那么与它相邻的数据很快也能被访问。...

2018-11-19 11:27:59 386

转载 微服务注册中心如何承载大型系统的千万级访问?

本文为转载文章,作者:中华石杉,十余年BAT架构经验,倾囊相授。作者微信公众号:石杉的架构笔记(ID:shishan100) 目录:一、问题起源二、Eureka Server设计精妙的注册表存储结构三、Eureka&

2018-11-19 08:28:41 312

转载 Spring Cloud底层原理

本文为转载文章,作者:中华石杉,十余年BAT架构经验,倾囊相授。作者微信公众号:石杉的架构笔记(ID:shishan100)概述毫无疑问,Spring Cloud是目前微服务架构领域的翘楚,无数的书籍博客都在讲解这个技术。不过大多数讲解还停留在对Spring Cloud功能使用的层面,其底层的很多原理,很多人可能并不知晓。因此本文将通过大量的手绘图,给大家谈谈Spring Cloud微服务...

2018-11-19 08:19:02 210

原创 Java并发编程之基本概念(四)

一.并发同时拥有两个或者多个线程,如果程序在单核处理器上运行,多个线程将交替的换入或者换出内存,这些线程是同时"存在"的,每个线程都处于执行过程中的某个状态,如果运行在多核处理器上,此时,程序中的每个线程都将分配到一个处理器上,因此可以同时运行.多个线程处理相同的资源,保证线程的安全,合理的使用资源.二.高并发高并发是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系...

2018-11-16 10:52:14 157

原创 svn之客户端操作教程

一.介绍程序员在编写程序的过程中,每个程序员都会生成很多不同的版本,这就需要程序员有效的管理代码,在需要的时候可以迅速,准确取出相应的版本。二.客户端功能操作1.提取主干上的代码 check out鼠标右键 --> 点击SVN Checkout(检出) --> 弹出一个对话框,如下图所示:2.新建分支从trunk(主干上)创建分支(branch)步骤如下:(svn)右...

2018-11-15 09:09:24 727

原创 Java并发编程之线程池(三)

一.介绍Java通过Executors提供四种线程池,分别为:(1)newCachedThreadPool:创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。(2)newFixedThreadPool: 创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。(3)newScheduledThreadPool :创建一个定长线程池,支...

2018-11-14 17:17:49 158

原创 Java并发编程之Semaphore(二)

一.介绍Semaphore是一种在多线程环境下使用的设施,该设施负责协调各个线程,以保证它们能够正确、合理的使用公共资源的设施,也是操作系统中用于控制进程同步互斥的量。Semaphore是一种计数信号量,用于管理一组资源,内部是基于AQS的共享模式。它相当于给线程规定一个量从而控制允许活动的线程数。二.工作原理Semaphore是计数信号量。Semaphore管理一系列许可证。每个acqui...

2018-11-14 15:49:42 230

原创 Java并发编程初体验(一)

一.前言操作系统的出现使得计算机每次能运行多个运行程序,并且不同的程序都在单独的进程中运行;操作系统为各个独立执行的进程分配各种资源,包括内存、文件句柄以及安全证书等。如果需要的话,在不同的进程之间可以通过一些粗粒度的通信机制来交换数据,包括:套接字、信号处理器、共享内存、信号量以及文件等。之所以在计算机中加入操作系统来实现多个程序的同时执行,主要是基于以下原因:资源利用率:在某些情况下,程...

2018-11-14 11:41:55 218

原创 jdk历史版本下载

下载地址: https://www.oracle.com/technetwork/java/archive-139210.html登录账号:1772885836@qq.com登录密码: OracleTest1234

2018-11-08 11:57:51 99

原创 Springboot 静态资源路径配置的两种方法

前言Spring Boot 默认为我们提供了静态资源处理,而有时我们需要自定义资源映射,可定义项目内部目录,也可定义外部目录。这时候就需要配置静态资源路径映射方法一:通过配置文件配置在Springboot中可以直接在配置文件中覆盖默认的静态资源路径的配置信息:作用在application.yml或application.properties首先系统有默认配置,其中默认配置的 /** 映射...

2018-11-08 09:40:09 5966

原创 @ComponentScan扫描包

一.@ComponentScan注解是什么@ComponentScan主要就是定义扫描的路径从中找出标识了需要装配的类自动装配到spring的bean容器中二.@ComponentScan测试例子1.新建测试TestController添加注解@ResController@RestControllerpublic class TestController {}2.新建测试TestS...

2018-11-08 09:27:20 3239

原创 SpringMvc上传图片文件

一.Poml文件<dependency> <groupId>commons-fileupload</groupId> <artifactId>commo

2018-11-06 17:28:02 134

bootstrap-datetimepicker

Bootstrap datetimepicker控件的使用 1.支持日期选择,格式设定 2.支持时间选择 3.支持时间段选择控制 4.支持中文

2019-01-24

pie.js以及pie.htc

pie.js以及pie.htc支持在ie8浏览器支持css3的border-redius属性

2019-01-11

破解TeamViewer

TeamViewerTeamViewer – 远程支持、远程访问、在线协作和会议。TeamViewer是一个能在任何防火墙和NAT代理的后台用于穿透内网远程控制软件,用于实现远程支持、远程访问、远程管理、家庭办公及在线协作和会议。

2019-01-10

xshell6xshell6

xshell 破解版 64位是目前最为热门的一款终端模拟器软件,我们可以通过这款软件来连接各种不同的远程服务器,从而进行文件的上传和下载。同时它还能够大幅度提升文件传输速度,让你可以轻松完成上传工作。

2019-01-04

screen-recorder-pro-cn录屏王

录屏王,无需破解,直接使用,异常方便,各种设置,满足广大群众需求,完美

2019-01-02

FlashFXP破解版

flashfxp是一款使用非常广泛,功能非常更强大的FXP/FTP软件。它拥有显示彩色文字、比较CuteFTP的目录、上传和下载文件、共享文件等众多功能,其中深受用户喜爱的便是目录比较功能,它能够有效的比较出有哪些文件进行了改动,在网站文件出错时是非常实用的。本次小编为大家附上flashfxp破解版和安装破解教程,并且还有注册码、注册机和破解补丁哦。

2019-01-02

dubbo结合springboot案例

Springboot结合Dubbo(dubbo-spring-boot-starter2.0),包括dubboapi,dubbo-provider,dubbo-consumer三个模块,通过使用zookeeper使用之间的调用关系变得异常清晰.方便管理,小伙伴们,赶快来使用吧!

2018-09-17

jdk1.8.0_91.32bit

jdk1.8.0_91.32bit

2018-09-13

apache-tomcat-8.0.35.32bit

apache-tomcat-8.0.35.32bit

2018-09-13

FileZilla Server

FTPserver端,免费的Filezilla正越来越多的占领原来Serv-U等软件的市场,变得更加贴近用户了

2018-08-13

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

TA关注的人

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