自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

爱吃荔枝的圆滚滚

学习,进步。

  • 博客(25)
  • 收藏
  • 关注

原创 JAVA技术目录

一、微服务技术SpringCloud SpringBoot 微服务二、分布式事务以及解决方案本地事务 分布式事务 分布式事务解决方案 开源分布式事务解决方案框架 分布式锁三、SpringSpring 七大模块,以及每个模块的作用 Spring 核心 IOC, AOP(重点) Spring 中的设计模式 Bean的生命周期和作用域 SpringMVC 原理四、M...

2020-01-01 03:22:21 243

原创 Spring Boot+Mybatis多数据源读写分离

两天搭建了一个SpringBoot,Mybatis多数据源读写分离,redis实现session共享的例子。记录一下~~~前提条件:Spring Boot,Mybatis 单数据库能正常运行一、Spring Boot整合Mybatis实现读写分离(后续会做Mysql主从复制)直接贴代码了,重要的代码已经做了注释,哪儿不合适可以一起探讨~~~1.application.yml(a...

2018-07-20 15:10:41 4310

转载 如何提高需求理解能力

       首先,最重要的一个问题就是,为什么要做需求分析,或者说需求分析的意义是什么?每个人对这个问题可能都会有不同的体会。我的看法是,需求分析的意义在于准确无歧义地表达项目需要交付的产品,并且获得需求方的认可,从而为整个项目建立一个基准。指望需求不变化是几乎不可能的,不管是开发者还是需求方都有可能随着项目的进展提出变更的需求,所以需求分析(及变更管理)的目标不是定义一个不会再改变的需求,而是...

2017-10-31 14:20:35 3582 2

原创 Jumpserver 安装配置

Jumpserver 是全球首款完全开源的堡垒机, 使用 GNU GPL v2.0 开源协议, 是符合 4A 的专业运维审计系统一、安装环境要求硬件配置: 2个CPU核心, 4G 内存, 50G 硬盘(最低)操作系统: Linux 发行版 x86_64Python = 3.6.xMysql Server ≥ 5.6Mariadb Server ≥ 5.5.56Redis安...

2020-02-12 15:09:08 1532

原创 栈源码分析

栈底层实现是一个数组,可以做到先进后出原则。入栈和出栈都操作栈顶元素package stack.init;public class MyStack { /** * 栈最大长度 */ private int size; /** * 栈底层实现 数组 */ private int[] arrays; /**...

2018-12-12 15:10:38 303

原创 数组简单排序

java对数组排序进行封装Arrays.sort() 里面进行了快速排序。手动实现一下数组的简单排序冒泡排序 插入排序 选择排序package arrays.simples.sort;public class SimpleSort { /** * 数组冒泡排序 */ public static int[] bubbleSort(int[] arr...

2018-12-12 10:32:47 279

原创 数组简单源码

数组简单源码实现,做一个笔记。package arrays.init;/** * 数组初始化 */public class MyArrays { /** * 定义一个数组 */ private int[] intArrays; /** * 定义数组的实际长度 */ private int elems; ...

2018-12-11 15:50:00 370

原创 ThreadLocal引起内存泄露总结

       我们都知道ThreadLocal能给每一个线程创建一个副本,确保多个线程访问资源的安全性。但是ThreadLocal使用不当会造成内存泄漏。首先分析一下ThreadLocal内存泄漏原理。ThreadLocal底层其实是一个ThreadLocalMap,是以<key, value>形式存储变量副本的。但是由于key对象使用的是弱引用,所以JVM每次GC都会回收key对...

2018-11-14 16:07:03 303

原创 Mysql - SQL语句优化,索引,视图,触发器,存储过程,函数等。

    一,SQL优化        主要解决海量数据操作时的全表搜索,所以减少不必要的全表搜索是SQL优化的主要目的,下面总结一下常用的优化有哪些:        1,避免在where条件中使用!=或者<>,这样会是的查询放弃索引而进行全局扫描        2,避免在where条件中使用is null使用 默认值替换null,如默认值为0  select id from ta...

2018-05-08 15:52:00 891

原创 架构演进和分布式技术

      目前流行的分布式和微服务架构软件开发,从最早的LAMP架构到现在流行的分布式和微服务中间经过了一系列升级与演进。今天总结一下分布式架构由来和其中的一些技术。一、分布式系统发展    1、最开始的网站架构        最早的程序就是应用程序,文件,数据在一个服务器上LAMP(Linux、Apache、Mysql、PHP)            2、应用,数据,文件分离        将...

2018-04-09 15:42:14 281

原创 云计算

      云计算是近年来随着高速互联网,Web2.0,网络计算机,SOA等技术的发展而产生的,其目的是使计算,存储等服务能够像水电等资源一样没用户只要连上网即可付费使用,且不受地域限制。云计算能够将各种资源以服务的形式通过网络提供给用户,并且按照情况收费的新型计算模式。业务产生技术,技术推动业务发展。(自己学习心得不全面,待续~~~)        云计算发展如此之快,主要原因         ...

2018-04-08 17:10:37 863

原创 23中设计模式和六大基本原则

        在程序设计中,软件设计人员为了解决某些问题而总结出来的方案,称为软件设计模式。在不断的探索和总结中,总结出了23中设计模式和六大基本原则在软件设计中最常使用。基本上大部分设计模式都符合基本原则,下面总结一下23中设计模式和六大基本原则。点击连接有详细解释一、23中设计模式    按照其作用分为:创建型,结构型,行为性三种类型。    创建型        抽象工厂模式:https:...

2018-04-08 15:51:52 310

原创 设计模式之 工厂模式

      工厂模式是创建型模式之一。简单的说,工厂模式就是为了减少代码的工作量,方便测试和扩展。在工厂模式中,创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。创建工厂类,接收不同的参数生成不同的对象的过程。由于简单工厂模式,抽象工厂模式,工厂方法模式依次递进且很相似,所以放在一起总结。一、定义        工厂模式定义一个用于创建对象的接口,这个接口由子类决...

2018-04-06 23:23:53 236

原创 设计模式之 单例模式

一、定义       单例模式(Singleton Pattern):单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类,它提供全局访问的方法。二、基本结构    一个私有Singleton属性private static Singleton instance = null;     一个构造方法private Singleton(){} // 确保外部...

2018-04-06 11:19:43 216

原创 UML类图和时序图

      在软件开发中,软件的需求设计和架构设计影响软件的好坏和生命周期,编写一个清晰直观的设计文档对软件的开发和维护有重要作用,今天总结一下软件设计>>详细设计中用到的类图和时序图。为后面的设计模式做一个铺垫一、类图     类图主要描述类的信息和类之间的关系,分为类图和类关系图     1、类图        在java中用一下图形表示,一般包含3个组成部分。第一个是类名;第二个...

2018-04-05 21:56:09 812

原创 Linux-CentOS 6.7 RabbitMQ的安装和配置

    RabbitMQ消息中间件,主要用于分布式事物传递,公司用的Mybatis + Spring-boot + Shiro + RabbitMQ +(nginx,haproxy)+ mysql进行开发。对linux环境不太熟悉,所以记录一下:一、RabbitMQ安装    RabbitMQ是由Erlang语言开发的,所以第一步下载Erlang环境    1、安装Erlang环境: yum ...

2018-04-03 19:49:52 711

原创 Linux-haproxy安装和配置

HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。一、HAProxy 安装步骤    由于HAProxy 是开放源代码的,所以安装前先要安装HAProxy编译环境,HAProxy是C语言编写。  1、 安装gcc :  yum install gcc  2、下载HAProxy源码包 :  wget http://foss...

2018-04-03 17:48:06 576

原创 Linux-mysql服务器安装和配置

Linux 安装mysql服务一 、yum安装       1、查看yum仓库中可以安装的mysql-server:       yum list | grep mysql       2、安装mysql-server :     yum install mysql-sever(yum仓库中的名称)       3、开启mysql服务:     service mysqld start      ...

2018-04-03 17:19:02 413

原创 Linux-安装软件方式

Linux中不同的版本以及不同的安装包有不同的安装命令:一、yum在线安装      yum是linux的软件管理工具,多在CentOS中在线安装(RedHat的yum是收费服务,而CentOS的yum是免费服务。)yum安装时会将所有的依赖包都下载安装,    国内的yum仓库:    http://mirrors.163.com/centos/7/os/x86_64/Packages/    ...

2018-04-03 11:46:39 166

原创 Linux-基础常用命令和常用软件

一、之前没用过命令行开发,所以对linux这块没怎么重视,新工作对linux的使用很频繁,所以对常用命令和常用软件做一个记录。(公司任务仅做参考)apt / awk/base64cat / cd / chgrp / chkconfig / chmod / chown / chpasswd / clear / clock / cp / crontab / curldate / df / diffec...

2018-03-29 17:52:05 300

原创 Linux-ssh: connect to host 192.168.1.161 port 22: Connection refused

初学者利用ssh连接主机出现:一、检查要连接的服务器是否有ssh服务,如果没有    centos6 为例(均已root角色运行)    1、安装ssh服务:yum install openssh-server     2、启动ssh服务:service sshd start     3、查看防火墙状态:iptables -L     4、如果防火墙未关闭,关闭防火墙:service iptabl...

2018-03-29 17:47:16 19143

原创 JAVA-集合类关系

1. Interface Iterable迭代器接口,这是Collection类的父接口。实现这个Iterable接口的对象允许使用foreach进行遍历,也就是说,所有的Collection集合对象都具有"foreach可遍历性"。这个Iterable接口只有一个方法: iterator()。它返回一个代表当前集合对象的泛型<T>迭代器,用于之后的遍历操作1.1 Collection...

2017-11-16 14:15:52 327

原创 执行iterator.remove()方法时出现java.lang.IllegalStateException

 Q: 迭代器是开发中很常用的  但是他的remove()不怎么常用   偶尔测试发现他的用法如果直接执行itertor.remove() 会出现java.lang.IllegalStateException  如下:               A: 查看源代码发现执行reomve如下  而lastRet默认为-1 (源代码中定义)所以会出现这个异常        而在iterator.next...

2017-11-02 17:19:32 1505 2

原创 JAVA-String、StringBuffer、StringBuilder的区别

        字符串是java开发过程中最常用的。总结一下大概的区别。具体如下:1、变与不变      String字符串一旦定义  则其中对象不可改变,具体原因可以查看JDK源码 因为有“final”修饰符,所以可以知道string对象是不可变的。private final char value[];    StringBuffer和StringBuilder都是继承自AbstractStr...

2017-11-01 10:48:59 192

原创 JAVA-程序员进阶之路

       自己大学期间学习的是软件工程,从需求分析到项目上线整套流程都接触过,大二就开始接触java,但是没有好好把握。大把时间虚度在lol里面了。已经在工作的我,作为一个菜鸟程序员,自己也有一个学习路线和目标。(仅自己参考)第一阶段:java基础            第一部分主要以看书为主吧,《java编程思想》知识点理解透彻。面向对象概念有深刻理解。对自己最好的回报就是提升自己,提升自己...

2017-10-31 14:27:24 489

空空如也

空空如也

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

TA关注的人

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