自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 资源 (1)
  • 收藏
  • 关注

原创 JDK8 知识点积累

JDK8 知识点日常积累目录 JDK8 知识点日常积累一:小方法积累二:重点知识点积累1. Consumer函数式接口的用法,通过consumer,可以进行函数式接口写法2.* @FunctionalInterface 函数式接口的使用3. ...

2019-10-28 16:55:48 71

原创 框架使用积累

一:Websocket的使用websocket使用场景:客户端与服务端建立长连接,通过传输协议完成前后端信息实时共享互通。常用场景有:WEB端简短聊天室功能;后端完成消息推送功能;注:websocket连接方式与正常的HTTP连接不同,需要特殊的路径和前端代码完成maven依赖包: <!--websocket--> <dependency&...

2019-07-01 10:45:27 39

原创 常规JAVA、JDK积累

一:基本数据类型,集合JDK8提供的Stream distinct(),提供去除重复元素功能。对于有序集合元素,可以通过Strem的distinct完成稳定去重。它是Strem的实现方法。例如对于一个List集合,可以通过 List<String> list1 = Lists.newArrayList();List<String> list2 = Lists.ne...

2019-06-19 17:05:19 46

原创 git、maven、linux操作指令积累

一:git一. 设置SSK:检查当前git有没有设置用户名和邮箱:git config --global --list 如果未配置,则配置一下:git config --global user.name "这里换上你的用户名" ...

2019-04-08 17:25:06 96

原创 JAVA反射机制分析-------spring的通过反射创建bean实例对象以及属性注入的原理解析

JAVA反射机制java反射机制是在运行状态中,对于任意一个类, 能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用他的任意一个方法和属性。这种动态获取的信息以及动态调用对象的方法的功能称为JAVA语言的反射机制。巧妙的利用java中的反射机制,能够帮助我们进行程序开发时达到意想不到...

2019-01-17 19:45:04 6255

原创 设计模式优秀实战文章链接

策略模式应用在spring中,通过注解的方式实现策略模式:https://mp.weixin.qq.com/s?__biz=MzAwNTM0ODY1Mg==&mid=2457116158&idx=1&sn=5ad75ceeab4836037f22658160384061&chksm=8c9e31bdbbe9b8abfb9c07ccf36f1c7c6388f960dcceea78fdfd010ee8ff170e993f66f4c79d&token=1216856121&

2020-12-01 17:45:48 10

原创 alibaba_canal mysql监控工具使用

一. canal 简介canal是阿里巴巴开发的一套能够实时监控数据库变更的工具工程。实用性非常强大。主要支持的数据库是MySQL。能够通过监控MySQL二进制日志的方式,实时洞察数据库的增删改操作。源码地址:https://github.com/alibaba/canal/功能作用:能够实现数据库同步、监控数据库、等需要实时洞察数据库变动的业务场景maven依赖:<dependency> <groupId>com.alibaba.otte...

2020-11-05 17:37:42 53 1

原创 spring-cloud系统理解补充

一. Hystrix1. 服务降级:当出现异常情况时,给服务调用者提供一个符合预期的有好的fallback提示(给服务调用者提供一个兜底的响应)。而不是直接报错或者调用者一直在等待服务返回而导致线程堆满从而可能出现宕机hystrix执行fallback时,是hystrix的单独线程去处理的。什么情况下会使用降级:连接超时 服务代码跑出异常 线程池占满,无法提供响应 ...2. 服务熔断当某个服务达到了设定的最大访问量时,当有新的访问请求进来, 直接启动熔断,并且返回f

2020-11-03 16:36:46 37

原创 springcloud技术架构理解

springcloud是一套解决分布式应用框架的生态系统,是相关技术的集合解决方案。也就是说,springcloud是用来管理微服务的解决方案包括服务注册与发现、统一配置管理、路由网关、事件总线、分布式会话、注册中心等组件组成一. springcloud前言针对目前的应用程序来说,当应用的服务器压力逐渐增大,可以通过部署集群的方式减缓访问压力,但是如果想进一步实现资源利用最大化,就需要将单一应用拆分为多个模块化的应用。模块之间通过通讯协同工作,共同负载应用。springcloud就为...

2020-10-21 17:21:06 212

原创 springboot+dubbo+zookeeper

本文将实现使用springboot+dubbo+zookeeper搭建能够提供远程服务的架构目录一. 环境搭建1. 搭建zookeeper服务2. 下载dubbo-admin项目,监控服务二. 创建项目1. IDEA创建项目2. 导入依赖3. 修改配置文件,连接zookeeper4. 调用服务一. 环境搭建1. 搭建zookeeper服务1.1 进入zookeeper官网进行下载https://zookeeper.apache.org/re...

2020-10-21 13:23:16 136 1

原创 docker分布式应用部署方案

一. 简单的IDEA打包部署docker将我们写好的java项目,通过dockerfile打包部署在docker中运行①在IDEA中编写dockerFile文件(最好下载docker的IDEA插件)FROM java:8#把当前路径下的jar文件,copy到指定目录中COPY *.jar /opt/jar/app.jarCMD ["--server.port=8090"]EXPOSE 8090#docker run 后指定命令: java -jar /opt/j...

2020-10-19 15:11:20 58

原创 docker深入学习

docker是为了解决环境配置应用部署的不同环境问题,提供一次性安装,多地拿来即用的解决方案。

2020-10-14 16:57:04 67

原创 nginx深入学习

一. nginx简介和安装Linux可以通过RZ、SZ命令完成不通过FTP上传下载文件1. nginx简介nginx是用来作为转发代理服务器使用,常用的功能有反向代理、正向代理、动静分离、虚拟主机、实现负载均衡功能。并且能够优秀的支持高并发大流量。反向代理:浏览器访问nginx,有nginx转发给指定配置的具有负载均衡设置的不同服务器。正向代理:浏览器访问某个网站,先访问nginx,有nginx请求该网站后返回给客户端。例如FQ负载均衡:在通过nginx进来的请求,可以通过负...

2020-10-13 15:44:44 25

原创 Redis集群与分布式锁应用

一. Redis集群clusterRedis cluster主要是为了保证Redis的高可用而设计的,仅仅使用主从复制来说。只能保证master不可用后,通过哨兵自动将salve切换为主机。但是在切换的过程中,Redis是不可工作的。但是不能保证写入操作的高可用,或者说通过负载均衡完成写入操作。不能够支持海量数据的存储。此时就需要搭建Redis的集群,能够实现海量数据的存储,并且达到写入操作的负载均衡。达到完善的高可用Redis1. Redis cluster模式图以及工作原理工...

2020-09-30 14:02:19 18

原创 Redis的分布式应用

一. Redis配置文件①可以include引入其他的配置文件组合成一个②NETWORK bind 0.0.0.0 绑定的IPprotected-mode yes 是否是收保护port 6379 端口号daemonize yes 是否是守护进程(是否可以后台运行)pidfile /var/run/redis_6379.pid 制定的PIDloglevel notice 日志级别,根据级别输出不同的日志logfile "" 日志的文件路径data...

2020-09-28 17:03:23 22

原创 Redis事务以及spring中的应用

一. Redis的事务支持①Redis单条指令是原子性的,但是Redis的事务是不保证原子性的;②一个事务中的命令会被序列化,并且在事务中执行顺序是按照顺序一次性执行的,并且不受其它事务的影响;③没有隔离性没有隔离级别④Redis事务是按照队列的方式,有序排队,事务在接受命令时并没有执行,而是在执行执行命令后,一次性执行。1. 使用事务1.1 开启执行事务使用事务分为三个过程:启动事务、添加命令入队、执行命令1.2 取消事务开启事务后,添加命令,如果需要取...

2020-09-27 17:17:13 36

原创 JUC并发编程

JUC

2020-09-21 15:54:08 48

原创 面试积累

1. springboot有哪些核心类2. list有哪些实现类,arrayList有哪些构造方法3. 如果操作两张表在同一个事务中4. controller是线程安全的吗,为什么,如何解决5. 关联查询有哪些方式、有什么区别6. Dubbo的原理7....

2020-09-08 09:47:38 63

原创 数据结构与算法

数据结构简介线性结构:数组(连续的内存空间)链表(非连续的内存空间,通过指针体现线性)栈队列非线性结构:树(树状内存)图(图状内存,每个节点直接都可能存在联系)数据结构的理解把现实中大量而复杂的问题,以特定的数据类型和特定的存储结构保存在内存中去。就是将所有的数据,以什么样的关系关联,存储在内存中的一种方式,叫做数据结构。在这些数据结构的基础上对数据执行相应的操作。就叫做算法。...

2020-09-07 16:18:57 47

原创 JVM知识点补充

一. 零碎知识点补充1. 栈中的栈帧(方法)存放了局部变量、操作数栈、动态链接、方法出口等重要信息 操作数栈:用来进行方法内的操作数的加减乘除 动态链接:获取栈中对应方法,在方法区中的代码入口。从而获取到该方法的具体代码 方法出口:方法执行完成后,告诉在main方法中该从哪个地方继续执行。...

2020-09-03 17:23:49 31

原创 JVM的理解与分析

2020-08-31 11:12:38 62

原创 设计模式

1. 静态代理模式:public class StaticProxy { public static void main(String[] args) { CommonAdd commonAdd = new CommonAdd(new User("张三")); commonAdd.add(); }}interface add { //公共添加的接口方法 void add();}class User implements add{

2020-08-28 11:38:57 33

原创 多线程理解与分析

一. 多线程创建简介简介:以下三种方式实现线程均为基础实现方式,实际开发过程中需要手动创建线程池的方式创建线程为最好。1. 通过集成Thread类,并重写run方法来完成线程的创建public class TestThread1 extends Thread{ @Override public void run() { for (int i = 0; i < 20; i++) { System.out.println("this i

2020-08-28 11:37:12 48

原创 mybatis_plus使用教程

mybatis_plus是mybatis的升级版,类似于JPA,可以很方便很高效的完成日常开发。为简化开发提高效率而生。官网:https://mp.baomidou.com/一. MP的简单搭建1. 引入依赖:基于springboot<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter&l..

2020-07-09 11:19:07 138

原创 REDIS基础

一. Redis的历史1. 什么是nosql nosql=not only sql,不仅仅是sql,是区别于关系型数据库的一种。 关系型数据库:具有行列组成的表格样式的数据库 nosql数据库:数据的存储不需要指定类型、不需要过多的操作就可以横向扩展,2. nosql特点:方便扩展(数据之间KV存储,没有关系,很好扩展) 大数据量高性能(官方测试一秒钟读取11万,写8万次) 数据类型是多样的,随取随用,并可以设置过期 关系型数据库RDBMS和nosql数据库区...

2020-06-30 13:57:31 78

原创 rabbitmq的集群

当系统的吞吐量足够大时,以及考虑到系统的时效性,交给rabbitmq去处理的业务就需要保证高可用性,也就是放置rabbitmq宕机,我们需要做集群设置。一. rabbitmq集群方式1. 普通集群(主从模式的集群)简介:主从模式的集群大概意思可以理解为:rabbitmq设置三个几点,一个为主节点,两个位副节点。但是这种模式中,主节点中的queue信息不会被副节点复制备份,副节点只可以读取主节点的queue信息。如果主节点宕机,副节点就无法读取queue信息了。如果主节点正常运行,...

2020-06-15 13:15:06 67

原创 rabbitmq整合spring、springcloud使用

maven依赖:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency>一. springboot集成rabbitmq方式要点:springboot通过启动程序启动时,会自动根据配置文件注册Rab.

2020-06-09 15:14:41 74

原创 linux部署ngrok服务端实现内网穿透

最近公司空出来几台主机,于是乎我就把他们都安装了centos,想着替换掉阿里云上的dev和test环境省点钱,于是乎在内网服务器上部署好了环境和应用后,测试人员想通过公网在家测试。哎,没办法,作为一个爱替别人着想的后端,我准备研究搭建一下ngrok做个内网穿透,废话不说,搭建过程记录下来首先简单介绍一下ngrok的工作原理(我的理解):要想让ngrok替你完成内网穿透,你需要配置并安装服务端,服务端需要被安装在一个具有公网IP的服务器上。然后通过服务端的配置文件和证书,生成你需要使用的客户端(必..

2020-06-09 11:39:49 168

原创 函数

函数是python中可重复执行的代码块,相当于Java中的方法。使用频率非常之高。并且基于python中一切都是对象的原理,函数也是一个对象(函数在def定义后就被加载为了一个对象)。类型是function。每次调用时,通过调用变量(函数名)来调用该函数对象完成执行。目录一. 函数定义二. 变量的作用域(全局变量vs局部变量)一. 函数定义定义规则: 形参不需要指明参数类型,return值也不需要指明返回类型def 函数名(a,b,c....): '''...

2020-06-04 14:13:40 67

原创 常用软件Linux下的安装

目录一.mysql安装二.nginx安装三. redis安装一.mysql安装1. 下载 mysql yum包:wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm2. 安装yum软件源: rpm -Uvh mysql57-community-release-el7-10.noarch.rpm3. 安装mysql服务端: yum install -y mysql-community-se.

2020-06-01 14:13:54 44

原创 python_元组(tuple)与字典类型

一. 元组(tuple)

2020-05-21 16:01:53 99

原创 rabbitMQ从入门到精通

引言 RabbitMQ是基于AMQP协议(具有天然的跨平台性),有erlang语言开发,是目前部署最广泛的开源消息中间件,它的优势在于erlang语言开发,适用于socket开发,其次是它天生与spring框架整合非常方便,最后它在处理消息的丢失,事务一致性方便处理的十分严密,几乎没有丢失。生产者产生消息后,放在exchange中,exchange将消息一个一个的放在消...

2020-05-08 14:51:07 75

原创 Linux搭建FTP文档服务器过程记录

前言: 公司业务需要,现将系统中与文档上传下载预览相关的服务接口从阿里云OSS转移到本地化部署的文档服务器中。现使用FTP文档服务器的功能替换原有接口来完成实现,实现过程记录一:FTP的搭建: 需要在Linux系统中搭建FTP服务,实现上传下载功能1.1 准备环境、创建账号 1. 准备一台Linux7.0一上版本的服务器,查询是否已经安装FTP服务:r...

2020-04-13 14:35:37 55

原创 开发过程中遇见的问题集锦

1. 前端接口返回json数据不完整: 原因:当返回数据量过大时,nginx将数据进行拦截,数据量小时,nginx是将返回的数据放在内存中,然后转发给客户端进行相应,当数据量过大时,nginx会将数据作为临时文件存放在服务器端,Nginx 的 buffer 机制,对于来自 FastCGI Server 的 Response,Nginx 将其缓冲到内存中,然后依次发送到客户端浏览器。缓冲区...

2020-04-10 11:51:30 80

原创 PowerDesigner使用笔记

PD的数据库设计使用:一. 创建数据库连接:file -> 选择对应的数据库--mysql,选择使用数据库连接,创建JDBC连接池,并编写配置文件编写配置文件:Connection profile name:JDBC配置文件名称,可随意填写 Directory:配置文件保存路径 --------这里系统默认的目录最好不要修改,修改后好像不能生成配置文...

2020-04-07 14:58:58 45

原创 python_列表笔记

目录1. 列表简介:2. 列表的创建:3. 列表的方法:1. 列表简介: 用来存储任意类型任意数量的数据集合 内存分析:是一块连续的内存空间,列表中存放的是对象的地址,例如s=[1,'a'],该对象s指向了一块连续的内存空间,内存空间 中存放的是对象1、对象‘a’的内存地址2. 列表的创建: 2.1 定义创建: l...

2020-03-31 22:42:48 42

原创 python学习笔记--基础入门篇

1. pycharm 解码网站:lookdiv.com 打开这个网址 在框里输入密钥:lookdiv.com2. Python的运行过程, Python是通过将代码运行在解释器,由解释器转换成二进制计算机代码进行运行常用的解释器,Python自带的Ppython解释器,Java编写的JPython解释器,将Python代码转化成字节码(class)进行运行,还有pypy解释...

2020-03-15 15:11:52 100

原创 springcloud全套教程(学习笔记)

*** springcloud相关maven依赖介绍: <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>*********</artifactId> </dependency> ...

2019-09-16 16:59:54 149

原创 防止接口重复请求的后台限制

需求描述 最近项目中有个需求,短信发送的并发请求问题:业务需求是需要限制一个号码一分钟内只能获取一次随机码,之前的实现是短信发送请求过来后,先去数据库查询发送记录,根据上一次的短信发送时间和当前时间比较,如果时间差小于一分钟,则提示短信获取频繁,如果超过一分钟,则发送短信,并记录短信发送日志。问题分析 短信发送是一个很敏感的业务,上面的实现存在一个并发请求的问题...

2019-09-12 17:01:12 678

原创 Maven的使用

Maven的好处相比做过项目的童鞋都知道。它是用来专门管理项目和代码的工具。能够很好的管理项目,控制jar包的资源。打包,发布都十分的方便,这篇博文主要介绍一下maven的安装和使用。一:安装和配置环境变量、maven仓库的设置二:使用CMD创建maven项目,打包并运行操作三:eclipse中创建maven项目、打包jar、打包war、部署在tomcat四:maven项目使用常见...

2018-12-27 17:46:48 59

struts+hibernate基于购物车的功能小demo

这是本人自己开发搭建的一个基于struts和hibernate的练习项目,主要功能有登录注册验证,购物车功能的实现,使用只需要修改hibernate的数据库连接地址即可完全运行。比较适合初学框架的同学

2018-11-06

空空如也

空空如也

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

TA关注的人 TA的粉丝

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