自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 线程池执行任务后,返回值接收(转载)

原文地址 http://blog.csdn.net/qq_25806863/article/details/71214033一般使用线程池执行任务都是调用的execute方法,这个方法定义在Executor接口中:public interface Executor { void execute(Runnable command);}这个方法是没有返回值的,而且只接受Runn...

2018-08-17 18:24:46 9794

转载 (转)分布式全局唯一ID生成策略

分布式全局唯一ID生成策略 为什么分布式系统需要用到ID生成系统在复杂分布式系统中,往往需要对大量的数据和消息进行唯一标识。如在美团点评的金融、支付、餐饮、酒店、猫眼电影等产品的系统中,数据日渐增长,对数据库的分库分表后需要有一个唯一ID来标识一条数据或消息,数据库的自增ID显然不能满足需求;特别一点的如订单、骑手、优惠券也都需要有唯一ID做标识。此时一个能够生成全局唯一ID的系统是非...

2018-08-09 19:46:35 242

转载 (转载)Java类加载机制(讲道理分析的贼牛逼)

Java类加载机制 类加载器        虚拟机设计团队把类加载阶段中的“通过一个类的全限定名来获取描述此类的二进制字节流”这个动作放到Java虚拟机外部去实现,以便让应用程序自己决定如何去获取所需要的类。实现这个动作的代码模块称为“类加载器”。      类加载器可以说是Java语言的一项创新,也是Java语言流行的重要原因之一,它最初是为了满足Java Applet的需求...

2018-07-21 18:15:27 1210

转载 (转载)spring-boot配置文件放在外部

Springboot引用外部配置文件2017年08月25日 17:24:22阅读数:16639现在的项目越来越多的都是打包成jar运行尤其是springboot项目,这时候配置文件如果一直放在项目中,每次进行简单的修改时总会有些不方便,这里我们看下打包成jar之后,从外部配置文件中读取配置信息。首先想到的是通过java代码读取外边某个路径下的文件,但是开始做之后发现好多问题。后来又...

2018-07-17 09:33:39 890

转载 jedis 各类方法示例

package com.wujintao.redis; import java.util.Date; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; import or...

2018-06-14 11:24:32 2748

转载 (转载)JVM对类的加载顺序 (之前尽然有个点记错了两年~~)

摘要:  我们知道,一个.java文件在编译后会形成相应的一个或多个Class文件,这些Class文件中描述了类的各种信息,并且它们最终都需要被加载到虚拟机中才能被运行和使用。事实上,虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验,转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型的过程就是虚拟机的类加载机制。本文概述了JVM加载类的时机和生命周期,并结合典型案例重点介...

2018-06-06 17:22:51 1359 1

转载 (转发)贼牛逼的双数据源切换 赞一个 PS:关于最后事物无法切换的问题 也有解决方案 后续补上

AbstractRoutingDataSource动态数据源切换上周末,室友通宵达旦的敲代码处理他的多数据源的问题,搞的非常的紧张,也和我聊了聊天,大概的了解了他的业务的需求。一般的情况下我们都是使用SSH或者SSM框架进行处理我们的数据源的信息。 操作数据一般都是在DAO层进行处理,可以选择直接使用JDBC进行编程(http://blog.csdn.net/yanzi1225627/articl...

2018-06-05 11:28:03 646

转载 spring的时间传播机制

有事件,即有事件监听器. 有人问你spring监听器有哪些你看了下文即也知道了。 事件传播ApplicationContext基于Observer模式(java.util包中有对应实现),提供了针对Bean的事件传播功能。通过Application. publishEvent方法,我们可以将事件通知系统内所有的ApplicationListener。事件传播的一个典型应用是,当Bean中的操作发生...

2018-05-28 11:40:42 278

转载 web.xml加载顺序(转载)

    在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰。      首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关。即不会因为 filter 写在 listener 的前面而会先加载 filter 。最终得出的结论是: listener -...

2018-04-09 18:06:55 1995

转载 关于static final的问题(半个转载,也有自己总结的)

一、背景       项目需要统一修改未登录状态的返回码,修改对应CommonConstant类,对应枚举的字段。希望通过修改,使得各应用该枚举的REST接口未登录的返回码得到修改。但在修改该类后,各REST接口返回码并没有改变。一开始无法定位到问题,以为相关类没有上、或者没有编译、服务器存在缓存等问题。后来取得编译后的REST接口类,反编译发现,类中返回码并不是使用的对应static final...

2018-04-02 11:12:30 776

转载 全局异常处理的基本方法

对于与数据库相关的 Spring MVC 项目,我们通常会把 事务 配置在 Service层,当数据库操作失败时让 Service 层抛出运行时异常,Spring 事物管理器就会进行回滚。如此一来,我们的 Controller 层就不得不进行 try-catch Service 层的异常,否则会返回一些不友好的错误信息到客户端。但是,Controller 层每个方法体都写一些模板化的 try-ca...

2018-03-30 14:41:24 2592

转载 微信分享 缩略图显示问题

微信分享中,会有一个小图标显示出来,该怎么做,注意哪些问题这个图片能显示的条件:宽高大于300px页面从上到下的第一张图片除了上面两点,经过测试,还有以下要注意的img标签上不能出现 display:none 的样式,这句话的意思不仅仅在img上试用style="display:none;",而是getComputedStyle的结果以下几种情况都不会显示图片:1<img src="dist...

2018-02-13 16:28:02 1812 1

转载 (转载)ThreadLocal的实现原理,SpringMvc的单例线程安全就是用这个实现的

1. 背景ThreadLocal源码解读,网上面早已经泛滥了,大多比较浅,甚至有的连基本原理都说的很有问题,包括百度搜索出来的第一篇高访问量博文,说ThreadLocal内部有个map,键为线程对象,太误导人了。ThreadLocal非常适合对Java多线程编程感兴趣的程序员作为入门类阅读,原因两方面:加上注释源码也不过七八百行。结构清晰,代码简洁。本文重点导读Th

2018-01-24 19:36:43 8053 3

转载 Zookeeper Paxos思路 简单生动讲解(转载)

ZooKeeper是个集群,内部有多个server,每个server都可以连接多个client,每个client都可以修改server中的数据ZooKeeper可以保证每个server内的数据完全一致,是如何实现的呢?答:数据一致性是靠Paxos算法保证的,Paxos可以说是分布式一致性算法的鼻祖,是ZooKeeper的基础Paxos的基本思路:(深入解读zookeeper一致

2017-12-23 15:56:39 213

转载 zookeeper Leader选举 关于集群服务器为奇数的理解(转载的暂时还没看懂.....)

在上一篇文章中我们大致浏览了zookeeper的启动过程,并且提到在Zookeeper的启动过程中leader选举是非常重要而且最复杂的一个环节。那么什么是leader选举呢?zookeeper为什么需要leader选举呢?zookeeper的leader选举的过程又是什么样子的?本文的目的就是解决这三个问题。首先我们来看看什么是leader选举。其实这个很好理解,leader选举就像总统

2017-12-23 15:46:49 1270

转载 关于ETCD和Zookeeper的一些简单了解(转)

如果使用预定义的端口,服务越多,发生冲突的可能性越大,毕竟,不可能有两个服务监听同一个端口。管理一个拥挤的比方说被几百个服务所使用的所有端口的列表,本身就是一个挑战,添加到该列表后,这些服务需要的数据库和数量会日益增多。因此我们应该部署无需指定端口的服务,并且让Docker为我们分配一个随机的端口。唯一的问题是我们需要发现端口号,并且让别人知道。当我们开始在一个分布式系统上部署服务

2017-08-15 18:47:36 923

转载 ORACLE用来查询父表的子表

记个常用的SQL~~! select child.constraint_name, child.table_name   from dba_constraints parents, dba_constraints child  where child.constraint_type = 'R'    and child.r_constraint_Name = parents

2017-05-17 15:49:30 1818

转载 面向对象的六原则 一法则简述

单一职责原则:一个类只做它该做的事情。(单一职责原则想表达的就是”高内聚”,写代码最终极的原则只有六个字”高内聚、低耦合”,就如同葵花宝典或辟邪剑谱的中心思想就八个字”欲练此功必先自宫”,所谓的高内聚就是一个代码模块只完成一项功能,在面向对象中,如果只让一个类完成它该做的事,而不涉及与它无关的领域就是践行了高内聚的原则,这个类就只有单一职责。我们都知道一句话叫”因为专注,所以专业”,一个对象如果承担

2017-05-03 18:34:14 793

原创 存个正则表达式教程

一个看上去很厉害的正则表达式教程,貌似很全

2017-05-03 18:17:29 215

转载 关于数据库事务的一些基础知识(转载)

- 原子性(Atomic):事务中各项操作,要么全做要么全不做,任何一项操作的失败都会导致整个事务的失败; - 一致性(Consistent):事务结束后系统状态是一致的; - 隔离性(Isolated):并发执行的事务彼此无法看到对方的中间状态; - 持久性(Durable):事务完成后所做的改动都会被持久化,即使发生灾难性的失败。通过日志和同步备份可以在故障发生后重建数据。

2017-05-03 18:08:21 236

转载 字符串操作技巧

public static String reverse(String originStr) { if(originStr == null || originStr.length() <= 1) return originStr; return reverse(originStr.substring(1)) + originStr.charAt(0);

2017-04-25 18:58:37 240

原创 别把重构和设计当做书上的东西~~!

在xml配置文件中,autowire有5种类型,可以在元素中使用autowire属性指定 模式                        说明    no                       不使用自动装配,必须通过ref元素指定依赖,默认设置。   byName                    根据属性名自动装配。此选项将检查容器并根据名字查找与

2017-04-24 10:23:32 325

转载 private属性是否可以被继承

在我看来, 子类继承父类的一切东西. 中说到, 子类对象拥有父类对象的完整拷贝. 实例化一个类是从最顶级的超类开始实例化的, 是一层一层的包裹结构. private限制访问方式只能在类的内部, 这仅仅是一个访问控制, 实际上子类对象拥有父类对象的一切.(看了不少论坛,感觉这个是总结的比较好的,但不敢确定一定正确)。另外字类其实是可以从继承的一个public方法 去访问到父类的private变量

2017-04-21 09:50:56 4344 1

转载 重写hashcode的原因 以及为啥用31的个人理解

首先声明自己大部分的理解的出处:如何重写hashCode()和equals()方法 接下来自己的理解: 1、首先java中set 、HashMap貌似包括List等底层的存储都会把,存储区域分成n个部分,而具体存在哪个部分是由hashcode决定的,也就是说查询的时候他会通过hashcode 所有小查询范围,所以如果所有的hashcode都一样,你的hashcode返回了一个常量 ,那

2017-04-20 18:15:22 6088 1

转载 int自动封装Integer的小知识(转载)

Java是一个近乎纯洁的面向对象编程语言,但是为了编程的方便还是引入了基本数据类型,但是为了能够将这些基本数据类型当成对象操作,Java为每一个基本数据类型都引入了对应的包装类型(wrapper class),int的包装类就是Integer,从Java 5开始引入了自动装箱/拆箱机制,使得二者可以相互转换。 Java 为每个原始类型提供了包装类型: - 原始类型: boolean,char

2017-04-20 16:55:27 658

原创 声明式事务和自动代理初步认识 和 最近用到的重构

我所在的公司一直是使用这种方式 进行spring上的事务控制的 先放代码: <bean id="transactionInterceptor" class="org.springframework.transaction.interceptor.TransactionInterceptor"> <property name="transactionManager">

2017-04-19 10:15:57 406

空空如也

空空如也

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

TA关注的人

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