自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 并发框架:Disruptor

本篇文章只记录demo,想深入了解可跳转网址Disruptor Main package com.sosmmh.disruptor.disruptor.quickstart;import com.lmax.disruptor.BlockingWaitStrategy;import com.lmax.disruptor.RingBuffer;import com.lmax.dis...

2019-01-04 14:33:53 251

原创 volatile 可见性理解

volatile 具备可见性,不具备线程安全可见性:volatile修饰过的值,当一个线程修改过后。其他线程都能知道。即线程修改过后,会立即写回主内存;确保读操作每次都是从主内存读取 不具备线程安全:即多个线程进行自增1时,结果可能会比预期小。模拟场景:一个自增步骤:1. 从主内存读取到工作内存,2. 进行+13. 写回主内存。A线程和B线程都经过步骤1,即从主...

2018-12-24 15:45:38 1308

原创 原子性-对比

synchronized:不可中断锁,适合竞争不激烈,可读性好Lock:可中断锁,多样化同步,竞争激烈时能维持常态Atomic:竞争激烈时能维持常态,比Lock性能好;只能同步一个值AtomicIntegerAtomicBooleanAtomicLongLongAddrAtomicStampReference:版本号AtomicReferenceAtomicFi...

2018-12-24 15:23:20 462

原创 AtomicInteger CAS分析

AtomicInteger count = new AtomicInteger(0);count.incrementAndGet();public final int incrementAndGet() { return unsafe.getAndAddInt(this, valueOffset, 1) + 1;}// var1 AtomicInteger对象//...

2018-12-22 17:52:43 375

原创 springboot 2.0 + spring cloud + hystrix dashboard

springcloud整合hystrix dashboard,打开界面报了不能连接 Unable to connect to Command Metric Stream.,现在整理下几种解决方法:1. 配置文件暴露端口,填写hystrix地址时,按照single hystrix提示的填写即可management: endpoints: web: exposur...

2018-10-31 16:10:33 787

原创 SpringCloud Stream + Rabbit MQ

介绍通过stream可以让程序跟具体队列组件解耦,程序不用关心队列组件的使用,只要建立好相应的通道,不论队列组件怎么更换,程序都无需关心。stream让程序通过通道来进行消息的生产和消费。  Stream中的input和output只是个别名,不论生产者的输出通道名和消费者的输入通道名叫什么都无所谓,真正实现效果的是通道绑定了哪个交换机哪个队列。 对于通道的命名,为了易...

2018-08-29 16:09:01 3323 1

原创 springcloud config配置中心 切换环境

        在搭建配置中心时,客户端通过配置中心服务端读取git仓库上的配置文件 (图 1) 能够正常读取,但在切换环境时一直切换不了。比如一开始客户端配置的profile是dev环境的配置文件,测试后没有发现问题。然后将profile改为test时,客户端重新启动发现调用的还是dev的配置文件。        排查问题发现没问题,但就是一直切换不了,后来索性就在配置文件里加了个以前在spri...

2018-06-28 16:04:18 9883 3

原创 springcloud config配置中心,访问码云文件时报500错误,或者读取文件为空

springcloud config配置中心:    访问码云文件时报500错误:一开始在码云上建立了私有仓库,然后再config项目里配置账户密码访问一直报500错误。之后把仓库改成了公开,就可以了。用私有仓库的我还没搞好怎么弄,有大神说可能是需要使用公钥访问。    读取文件为空:一开始在码云建立的文件为 order.yml,结果访问时内容一直未空,之后就把码云的文件改为 order-prof...

2018-06-22 16:07:01 3063 2

原创 spring cloud多个消费端重复定义feign client,多模块扫描

问题连接:点击打开链接 尝试将FeignClient单独建立了一个模块G,将对各个模块的FeignClient调用接口集中在模块G中管理,A,B,C,D,E,F模块互调时,只需要在pom中引入G模块即可。但一直失败,对于该问题网上大都是 加@ComponentScan(basePackages={"com.chelizi.feign.intf"}) 扫描、和feignClients的扫描。但启动还...

2018-06-22 15:58:56 9887 3

原创 @Valid 递归校验-多层校验

在controller层接收时,由于CargoCalInfoDTO里面的属性也是对象类型,如下,如果BigAreaCargoAdjustDTO不加@Valid注解,而只在控制层的CargoCalInfoDTO加注解的话,那么BigAreaCargoAdjustDTO对象里面的属性是校验不到的。所以对于封装多层,也要在里面的对象类型的属性加@Valid注解。...

2018-05-09 15:51:34 7113 2

原创 springboot tkmybatis 通用service

方便日后快速搭建项目,记录下。1. 首先创建springboot项目,略过。2. pom依赖,只需以下依赖即可,亲测,如果运行出错,可能是版本问题或依赖冲突。<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www....

2018-04-23 11:15:23 7955 6

原创 PO DTO VO理解

1.PO[persistant object]持久层对象持久对象属性和数据库中的字段是一一对应的,数据库中的一条数据可以理解为一个持久对象。数据库表结构:order_master    JAVA对象:OrderMaster2.DTO[data transfer object]数据传输对象从数据库查询到上面的PO后有10个字段,上表是订单表,一般订单表里面包含订单的详细列表。此时就在PO的基础上加上...

2018-04-11 16:39:24 733 1

原创 git 推送到 github时报权限禁止

推送流程:1、建立远程关联,在需要推送的仓库目录下关联githubgit remote add origin [email protected]:username/learngit.git2、开始推送git push -u origin master在这里推送是报错了,查看了之后是由于没有公钥和私钥,将本地的推送到远程时,远程服务器需要持有你本地的公钥,所以,首先要在本地生成公钥和私钥,然后把公钥发给远...

2018-04-09 17:21:43 9282 1

原创 MyCat入门+JAVA程序连接

本文章主要对mycat的配置文件注释说明,详细的安装使用请戳这个地址:mycat安装使用连接mycat时,将原先连接mysql的端口和数据库改为mycat的端口8066,和mycat的逻辑数据库TESTDB,用户名和密码为server.xml表里设定的user。jdbc.url=jdbc:mysql://127.0.0.1:8066/TESTDB?characterEncoding=utf-8j...

2018-03-08 13:44:28 10188 2

转载 线程安全单例设计模式+序列化

懒汉式单例模式会引来线程安全问题,即多线程时可能会创建多个实例,而且在反序列化时也可能会创建新的实例。看了大大们的实现方式,觉得以下一种比较简单方便理解。一、下面是会造成线程安全的饿汉单例模式。用四打印下会发现hashcode不一致public class Singleton { private static Singleton instance = null; ...

2018-02-27 11:28:42 217 2

转载 volatile简单理解

通过java内存模型理解代码例子理解:作者:KE meng链接:https://www.zhihu.com/question/31459750/answer/52061391来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。来看这个代码:int fun(int& a){ int b = a; int c = a; return a+b+...

2018-02-09 15:00:36 275

原创 框架整合后台——SSM+tk.mybatis+Shiro+Redis+FastDFS+Nginx+WebService+WebSocket

这篇博客介绍的是对自己到目前为止所学知识的一个整合,旨在建立一个模板方便以后要用时直接copy,也是对自己的一个总结。主要是后端的技术,前端的楼主找了个简洁的前端模板ACE。整合的技术有:1、SSM(spring、SpringMVC和Mybatis)。2、tk.mybatis:mybatis的一个通用框架,包含基本SQL语句的增删改查。

2018-02-05 17:29:39 537

原创 (七)基于SSM+Redis+Nginx+FastDFS的博客网站

本篇介绍FastDFS,无需整合spring即可使用,前端上传图片到控制层,控制层调用fastDFS工具类实现上传,上传成功返回文件地址到前端。配置文件为fast_client.conf,fastDFS要求使用的文件名和属性名,要一致。tracker_server = 120.78.191.143:22122fastdfs相关连接信息IMG_SERVER_IP=http:/

2018-02-05 16:45:00 557 2

原创 (一)基于SSM+Redis+Nginx+FastDFS的博客网站

这篇博客介绍的是自我用了SSM(spring、SpringMVC和Mybatis)后,基于一个前端模板做的一个网站。由于自己比较喜欢做分布式架构的网站,所以就基于自己现有所学的技术实现某些功能,当然肯定有很多可以改进的地方。基本框架用的是SSM,数据库用的是MYSQL,缓存用的是Redis,FastDFS用于存储图片,当然还用了Nginx。目前只将项目、redis、数据库、文件

2018-02-05 16:43:50 1373 1

原创 (三)基于SSM+Redis+Nginx+FastDFS的博客网站

上一篇主要介绍了SSM整合以及测试。这一篇主要介绍登录模块,登录模块用到了过滤器,配置过滤器时需要在web.xml里面进行配置,相关配置已经在第二篇的web.xml有注明。 本篇涉及的类有:控制层的LoginController、过滤器CheckLoginFilter以及数据库访问的。 Controller层:如果登录成功,则将该用户设置到sessi

2018-02-05 16:40:02 575

转载 (五)基于SSM+Redis+Nginx+FastDFS的博客网站

上一篇介绍了redis的相关使用,这一篇介绍本项目使用的图片存储时用到的技术——FastDFS。项目使用时参考的是传智播客里的FastDFS的使用教程。由于只有文档没有地址,所以就直接黏贴过来,若有版权问题请告知,谢谢。1 课程目标了解项目中使用FastDFS的原因和意义。掌握FastDFS的架构组成部分,能说出tracker和storage的作用。

2018-02-05 16:39:06 2210

原创 (六)基于SSM+Redis+Nginx+FastDFS的博客网站

上一篇介绍了FastDFS。这一篇开始介绍redis和FastDFS在本项目中是如何使用的。首先介绍redisJedis工具类接口package com.tdrip.dao;public interface JedisClient { //redis get方法 :get a String get(String key); //redis set方法:set a 1

2018-02-05 16:38:49 418

原创 (四)基于SSM+Redis+Nginx+FastDFS的博客网站

Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库。它通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止Redis支持的键值数据类型如字符串类型、散列类型、列表类型、集合类型、有序集合类型。菜鸟教程里有基本的使用命令:点击打开链接楼主是使用的阿里云服务器,一开始时也是通过直接在阿里云服务器里面安装redis,阿里有新用户+9.9的套餐

2018-02-05 16:36:33 500

原创 (二)基于SSM+Redis+Nginx+FastDFS的博客网站

上一篇简单介绍了该网站的所用的框架、技术之类,这篇就开始讲搭建过程。本篇为配置文件。其中redis和fastdfs的后续用到时再写。一、搭建基础框架SSM之配置文件maven工程的pom.xml,基本的SSM框架所需的Jar包,Jedis客户端包,上传组件,FastDFS包这个在maven库里是没有的,需要自行下载然后添加到本地仓库在进行maven更新。

2018-02-05 16:34:12 812

空空如也

空空如也

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

TA关注的人

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