自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (2)
  • 收藏
  • 关注

原创 JAVA - 多线程 - 死锁

1. 什么是死锁?可以这样理解,两个或两个以上的线程在执行过程中,因竞争资源而造成一种相互等待的现象,若无外力作用,它们都将无法向前推进。2. 产生死锁的4个必要条件互斥条件进程要求对所分配的资源(如打印机)进行排他性控制,即在一段时间内某 资源仅为一个进程所占有。此时若有其他进程请求该资源,则请求进程只能等待不剥夺条件进程所获得的资源在未使用完毕之前,不能被其他进程强行夺走,...

2018-07-31 18:19:08 109

原创 Mybatis - MBG 配置解析

记录一个关于MBG配置的详细介绍<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/mybat...

2018-07-31 14:16:37 273

原创 Gradle - build.gradle常用用法

最近一直在用Gradle来构建java应用,但是对于Gradle文件的写法不是很了解,一直都是跟度娘进行沟通。现在正好总结一下项目中用到的一些用法。1. 引入插件包一个项目中只放置一个build.gradle,build.gradle可以理解为一个Project框架,提供了对一个项目的基本配置。如果需要执行更过的task,比如对java进行编译、打包、部署、移动等操作,就需要引入相应的插件...

2018-07-27 11:12:24 15757

原创 Eclipse Plugin - RCP开发启动错误 - Cannot Resolve Module

When I try to run a eclipse product like this:I get about 100 errors type "Could not resolve module XXXX". For example, a partial log view:!ENTRY org.eclipse.compare 4 0 2017-07-14 11:03:53.679...

2018-07-17 10:32:14 3657

转载 数据库 - 命名规范

https://www.cnblogs.com/pangguoming/p/7126512.html摘要:当前研发工作中经常出现因数据库表、数据库表字段格式不规则而影响开发进度的问题,在后续开发使用原来数据库表时,也会因为数据库表的可读性不够高,表字段规则不统一,造成数据查询,数据使用效率低的问题,所以有必要整理出一套合适的数据库表字段命名规范来解决优化这些问题。本文是一篇包含了数据库命名、数据库...

2018-07-11 14:26:50 619 1

转载 序列化 - ProtoBuffer - proto语法

参考文章:这是一份很有诚意的 Protocol Buffer 语法详解1.  特点2. 构建消息对象模型3. proto文件语法示例:基本数据类型:

2018-07-10 11:51:55 175

转载 架构 - Cookie详解及跨域问题

Http是无状态的协议,客户端每次对服务端的http请求都是独立的,不受该客户端其它的请求的影响。为了把Http这个无状态协议变的与上下文有关系,我们引入了会话(Session)的概念,具有相同会话ID的请求使之变成了有状态。服务端可以给请求setSession的信息,信息保存在服务端内存,同时在response时将session内容推送给客户端浏览器,浏览器为了保存SessionID等信息,又有...

2018-07-10 11:16:56 165

转载 架构 - SSO 与 OAuth2.0 的区别

OAuth是Open Authority的缩写,是令牌代替用户密码访问应用的又一标准,前面一期介绍过SSO单点登录(SpringBoot模拟单点登录),也是令牌登陆的一种方式。OAuth2.0最典型的授权码认证方式:资源服务器和鉴权服务器都是属于资源所有方,也就是最终的服务提供方,第三接入方需要先与鉴权服务器申请合作获取客户编码。 对于资源服务器来说,需要做的是1 accessToken和clie...

2018-07-10 11:15:53 2938

转载 架构 - OAuth - OAuth2.0原理

1、引言本篇文章是介绍OAuth2.0中最经典最常用的一种授权模式:授权码模式非常简单的一件事情,网上一堆神乎其神的讲解,让我不得不写一篇文章来终结它们。一项新的技术,无非就是了解它是什么,为什么,怎么用。至于为什么,本篇文章不做重点探讨,网上会有各种文章举各种什么丢钥匙、发船票的例子供你去阅读,个人认为还是有些哗众取宠,没有聊到本质。那我们就重点聊聊OAuth2.0是什么,怎么用。但首先在读本文...

2018-07-10 11:14:04 663

转载 架构 - 单点登录 - Springboot 模拟单点登录

SSO: Single Sign On,官方的概念:web系统由单系统发展成多系统组成的应用群,复杂性应该由系统内部承担,而不是用户。无论web系统内部多么复杂,对用户而言,都是一个统一的整体,也就是说,用户访问web系统的整个应用群与访问单个系统一样,登录/注销只要一次就够了。简言之,系统内部通过某种技术实现用户统一登录和注销,所以单点登录技术一定要包括两部分:登录、注销。 1为什么要用单点登录...

2018-07-10 11:11:22 1827

转载 架构 - 单点登录 - SSO原理及发展史

一、单系统登录机制1、http无状态协议web应用采用browser/server架构,http作为通信协议。http是无状态协议,浏览器的每一次请求,服务器会独立处理,不与之前或之后的请求产生关联,这个过程用下图说明,三次请求/响应对之间没有任何联系但这也同时意味着,任何用户都能通过浏览器访问服务器资源,如果想保护服务器的某些资源,必须限制浏览器请求;要限制浏览器请求,必须鉴别浏览器请求,响应合...

2018-07-10 11:09:49 1185

转载 Spring - SpringBoot - Eclipse + Gradle + SpringBoot 环境搭建问题

1. springboot项目访问不到controller方法。一般情况下是因为 controller 类没有被扫描到。由于springboot配置了自动扫描,对于类的放置有一些限制。Application类 和 ServletInitial 类必须放置在与controller,dao包同级的位置。也就是说比真正的controller类等高一级。2. 关于静态页面和资源的放置也有默认要求静态页面:...

2018-07-10 11:06:17 1104

转载 MQ - RabbitMQ - 学习

RabbitMQ 高可用集群搭建及电商平台使用经验总结深入学习RabbitMQ(三):channel的confirm模式生产者确认模式实现原理:       生产者将信道设置成confirm模式,一旦信道进入confirm模式,所有在该信道上面发布的消息都将会被指派一个唯一的ID(从1开始),一旦消息被投递到所有匹配的队列之后,broker就会发送一个确认给生产者(包含消息的唯一ID),这就使得生...

2018-07-06 16:24:26 111

原创 架构 - RPC, REST API, SOA到底有什么区别?

RPC (Remote Procedure Call): 远程过程调用,面向方法的调用。REST( Representational state transfer) : 面向资源的调用。SOA(Service oriented Architecture): 面向服务的调用。...

2018-07-06 09:27:53 2020 1

转载 MQ - RabbitMQ - 4种Exchange类型

转至: https://www.cnblogs.com/julyluo/p/6265775.html但在具体的使用中,我们还需知道exchange的类型,因为不同的类型对应不同的队列和路由规则。在rabbitmq中,exchange有4个类型:direct,topic,fanout,header。direct exchange此类型的exchange路由规则很简单:exchange在和queue进...

2018-07-05 17:10:37 4645

转载 MQ - RabbitMQ - Spring中配置

<bean id="connectionFactory" class="org.springframework.amqp.rabbit.connection.CachingConnectionFactory"> <property name="host" value="${rabbitmq.host}" /> <property name=

2018-07-05 17:02:21 154

转载 MQ - AMQP 协议详解

一、AMQP 历史​ 消息队列(Message Queue)起源于一位来自 MIT 的硬件设计教育工作者 Vivek Ranadivé 设想了一种通用软件总线,就像主板上的总线那样,供其他应用程序接入。Vivek在1983年成立了 Teknekron,高盛等公司作为第一批用户再金融交易中采用了 Teknekron的软件,同时还诞生了第一代消息队列软件:Teknekron 的 The Informa...

2018-07-05 16:59:40 4117

原创 MQ - RabbitMQ - 集群配置

集群配置

2018-07-05 16:58:35 157

原创 MQ - RabbitMQ - JAVA使用

JAVA使用

2018-07-05 16:57:43 270 1

转载 MQ - 应用场景

RabbitMQ的应用场景以及基本原理介绍应用场景1.异步处理场景说明:用户注册后,需要发注册邮件和注册短信,传统的做法有两种1.串行的方式;2.并行的方式 (1)串行方式:将注册信息写入数据库后,发送注册邮件,再发送注册短信,以上三个任务全部完成后才返回给客户端。 这有一个问题是,邮件,短信并不是必须的,它只是一个通知,而这种做法让客户端等待没有必要等待的东西. (2)并行方式:将注册信息写入数...

2018-07-05 16:56:13 172

原创 MQ - RabbitMQ - Windows/Linux 安装及简单配置

rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统。它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rabbit MQ 是建立在Erlang OTP平台上Windows 下安装 1.安装Erlang 先不要管Erlang是个什么玩意,说实话我除了感觉它跟JVM的作用一样以外,其他都不懂。但...

2018-07-05 16:52:52 467

转载 MQ - RabbitMQ - 架构及工作原理

1. 系统架构几个概念说明: Broker:它提供一种传输服务,它的角色就是维护一条从生产者到消费者的路线,保证数据能按照指定的方式进行传输, Exchange:消息交换机,它指定消息按什么规则,路由到哪个队列。 Queue:消息的载体,每个消息都会被投到一个或多个队列。 Binding:绑定,它的作用就是把exchange和queue按照路由规则绑定起来. Routing Key:路由关键字,e...

2018-07-05 16:16:44 21874 4

转载 UML类图 - 关系介绍 - 程序员壁咚

转载地址:UML类图几种关系的总结U在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)1. 泛化(Generalization)【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征...

2018-07-05 09:45:57 311 3

原创 开源协议 - 几张开源协议比较

每天在做软件的时候都能遇到很多开原协议,一直不是很清楚有什么区别,今天参考了一下别人的文章,在这里做个总结。先借鉴一个很牛B的图:说到开源协议,不得不提GNU。课本上给的定义是“GNU is Not Unix”,这是官方给出的递归定义,永远也找不到本意,我们可以将它理解为一个自由软件工程项目或者一种计划,是由Richard Stallman在1983年9月27公开发起的,它的目标是创建一套完全自由...

2018-07-05 09:21:26 7775 2

原创 SQL - 查询常用语法

总结一下常用的查询SQL语法,不考虑表连接。先上一个表,说明一下 select 语句 中常用关键词的 顺序:子句说明是否必须使用select要返回的列或表示式, * 代表全部列是form从中检索数据的表仅在从表选择数据时使用where行级过滤否group by分组说明仅在按组计算聚集时使用having组级过滤否order by输出排序顺序否limit要检索的行数否然后用一个简单的表,说明各 关键词...

2018-07-04 14:40:02 199

原创 SQL - 连接关系 - 内连接,左连接,右连接,全连接

之前虽然一直在用连接语法,但是从来没有系统的总结过,今天抽空总结一下。先准备下面讲解过程中需要用到的两张表,这两张表尽可能的简单,能让大家理解。user 表:id name age1 Allen 162 June 183 Jhon 284 Amy 455 Jack 67order 表:id user_id order_no create_time1 1 00001 2018-07-03...

2018-07-04 09:58:28 292

转载 JAVA - 多线程 - 并发

转载地址:一次聊天引发的思考--java并发包concurrent包里涉及并发的类及各自的应用场景:第一类:原子操作类的atomic包,里面包含了1)布尔类型的AtomicBoolean2)整型AtomicInteger、AtomicIntegerArray、AtomicIntegerFieldUpdater3)长整型AtomicLong、AtomicLongArray、AtomicLongFie...

2018-07-02 17:20:41 127

原创 JAVA - 集合类 - Collection 接口

Collection 是所有集合类的父接口,它定义了集合类最基本的操作方法:增加对象:boolean add(E e)     增加成功则返回true; 若对象已存在,且该集合不允许包含重复元素,则返回false。删除对象:boolean remove(Object o)                    删除集合中与对象o值相等的元素(e.equals(e)==true)          ...

2018-07-02 16:57:42 126

原创 JAVA - 集合类 - List - LinkedList 用法

LinkedList 实现了一个双端队列(Deque),具有队列的一些特有方法:                            1)、addFirst()从集合列表开头插入元素          2)、addLast()从集合列表结尾插入元素(等效于add())          3)、getFirst()拿到第一个元素,返回这个元素          4)、getLast()拿到最后一个...

2018-07-02 16:51:38 2701

原创 JAVA - 集合类 - List - ArrayList 用法

列表(List)实现了Collection,并拥有自己的特性:可以有重复元素,且是有序的,以元素添加顺序为序。该类集合中有索引【角标】。凡是有角标的集合,都有其特有的操作方法,根据index增删改查,也可以根据对象获取角标:增:void add(int index, E element)删:E remove(int index)改:E set(int index, E element)查:E ge...

2018-07-02 16:49:00 153

原创 JAVA - 集合类 - List - ArrayList 实现原理

ArrayList 实现原理

2018-07-02 16:47:26 138

SQLserver JDBC驱动(sqljdbc.jar )

经常使用该驱动包,完全可以使用。非常好,需要的可以下载!

2014-10-29

连接mysql的JDBC驱动(mysql-connector-java-5.1.31-bin.jar)

该JDBC我一直在用,绝对没有问题。如有问题请留言

2014-10-29

空空如也

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

TA关注的人

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