自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Jonee`s blog

2017年Java Web笔记

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

原创 dubbo 2.7.8使用zipkin链路追踪

brave-instrumentation-dubbo-rpc 对应dubbo 2.6.X版本brave-instrumentation-dubbo 对应dubbo 2.7.X版本 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-zipkin<..

2021-07-19 17:18:11 432 2

原创 ELK+Log4j2 日志管理

1. 下载Logstash+ElasticSearch+Kibana,Logstash负责收集日志,ElasticSearch负责存储和查询,Kibana提供界面查看和统计下载地址:https://www.elastic.co/cn/2. 安装系统:CentOSElasticSearch和Kibana 不可以使用root权限运行新建系统用户组和用户:groupadd esuseradd -g es espasswd es文件夹修改所有者:chown -..

2021-05-16 16:38:50 488

原创 小程序Grid网格布局记录

小程序Grid网格布局记录<view class="grid-container"> <view class="grid-item item1">1</view> <view class="grid-item item2">2</view> <view class="grid-item item3">3</view> <view class="grid-item item4"&

2021-01-22 16:17:33 994

原创 2021-01-08

记录一下不知道的一些新特性public class Main { public static void main(String[] args) throws IOException, InterruptedException { //jdk15 //文本块 String html = """ <html> <body> .

2021-01-08 13:51:01 85

原创 OAuth2 JWT token保存用户ID导致refresh_token缺少用户信息的问题

问题出在DefaultUserAuthenticationConverterLine:52行this.userClaimName 为固定值 "user_name"所以重写方法convertUserAuthentication时,把user_name也加进去就解决了。private static class CustomerUserAuthenticationConverter extends DefaultUserAuthenticationConverter {

2020-10-12 10:58:23 1471 4

原创 Emqtt

EMQTT介绍EMQ是基于 Erlang/OTP 平台开发的开源物联网 MQTT 消息服务器。Erlang/OTP 是出色的软实时、低延时、分布式的语言平台。MQTT 是轻量的、发布订阅模式的物联网消息协议。EMQ 项目设计目标是承载移动终端或物联网终端海量 MQTT 连接,并实现在海量物联网设备间快速低延时消息路由:1、稳定承载大规模的 MQTT 客户端连接,单服务器...

2019-12-12 15:52:56 994

原创 Postgresql 触发器

触发器函数:CREATE FUNCTION order_status () RETURNS TRIGGER AS $status$ BEGIN IF ( NEW.status = 3 ) THEN NEW.status := 3; ELSE NEW.status := 2; END IF; RETURN NEW;END $status$ LANGUAGE p...

2018-09-01 12:05:40 1042

原创 Springboot+Mybatis/JPA 动态数据源切换

最终结果:动态的根据不同的方法访问不同的数据库代码也不记得是在哪复制的了application.propertiesspring.primary-datasource.driver-class-name =org.postgresql.Driverspring.primary-datasource.url = jdbc:postgresql://xxxxxxxxx/prima...

2018-08-30 15:03:50 1327

原创 微信与支付宝扫码支付

支付宝配置:package com.integralpay.config;public class AlipayConfig { //↓↓↓↓↓↓↓↓↓↓请在这里配置您的基本信息↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ // 应用ID,您的APPID,收款账号既是您的APPID对应支付宝账号 public static String app_id = "2018000000000"; ...

2018-05-08 14:15:20 2961

原创 组织机构-VUE

子组件(递归组件,无限下级):&lt;template&gt; &lt;div ref="rootNode" :class="[isGeneral==0?rootClassNode:[isGeneral==1?firstClassNode:generalClassNode]]"&gt; &lt;div @click.stop="toUpdateNode(treeRoot)" :cl...

2018-04-28 15:50:59 2745 2

原创 ES6学习

转自:http://blog.csdn.net/column/details/es6-study.html一、let和const命令let和const声明的变量只在代码块内有效不存在变量提升变量一定要在声明后使用,否则报错不允许重复声明const命令声明一个只读的常量,一旦声明,常量的值就不能改变一旦声明变量,就必须立即初始化,不能留到以后赋值let命令、const命令、class命令声明的全局变...

2018-03-12 17:54:55 224

原创 设计模式-状态模式

状态模式(State Pattern):允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。其别名为状态对象(Objects for States),状态模式是一种对象行为型模式。       ● 环境类:环境类又称为上下文类,它是拥有多种状态的对象。由于环境类的状态存在多样性且在不同状态下对象的行为有所不同,因此将状态独立出去形成单独的状态类。在环境类中维护一个抽象状态类St...

2018-02-22 17:29:05 189

原创 设计模式-观察者模式

观察者模式(Observer Pattern):定义对象之间的一种一对多依赖关系,使得每当一个对象状态发生改变时,其相关依赖对象皆得到通知并被自动更新。观察者模式的别名包括发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式、源-监听器(Source/Listener)模式或从属者(Dependents)模式。观察者模式是一种对象行为型模式。      ● ...

2018-02-22 11:23:09 160

原创 设计模式-备忘录模式

备忘录模式-Memento Pattern我的理解:原发器中声明两个方法,一个创建备忘录,一个从备忘录恢复状态,备忘录中为原发器需要保存的属性,负责人负责存储和取出备忘录。备忘录模式(Memento Pattern):在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态。它是一种对象行为型模式,其别名为Token。      ● 原发器...

2018-02-07 12:58:26 160

原创 设计模式-中介者模式

中介者模式-Mediator Pattern中介者模式(Mediator Pattern):用一个中介对象(中介者)来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。中介者模式又称为调停者模式,它是一种对象行为型模式。我的理解:以中介者为中心,将一个消息发送给其他的或指定的同事类,抽象中介者中定义一个方法,表示具

2018-02-06 15:52:14 148

原创 设计模式-迭代器模式

迭代器模式-Iterator Patternhttp://blog.csdn.net/lovelion/article/details/9992679我的理解:迭代器的目的是将数据的遍历从聚合类中分离出来,聚合类只负责增加 删除 显示。将遍历数据的行为从聚合对象中分离出来,封装在一个被称之为“迭代器”的对象中,由迭代器来提供遍历聚合对象内部数据的行为,这将简化聚合对象的设计,更

2018-02-06 14:54:51 116

原创 设计模式-解释器模式

解释器模式-Interpreter Pattern解释器模式(Interpreter Pattern):定义一个语言的文法,并且建立一个解释器来解释该语言中的句子,这里的“语言”是指使用规定格式和语法的代码。解释器模式是一种类行为型模式。我的理解:有一点点类似组合模式,一点点。使用非终结符作为分割,每两个或几个处理成一个终结符,最后处理成一个终结符。抽象解释器:

2018-02-06 12:09:50 158

原创 设计模式-职责链模式

职责链模式-Chain of Responsibility Pattern职责链模式(Chain of Responsibility  Pattern):避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。职责链模式是一种对象行为型模式。● 抽象处理者:它定义了一个处理请求的接口,一般设计为抽象

2018-02-05 15:38:10 133

原创 设计模式-代理模式

代理模式-Proxy Pattern装饰模式:以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案, Java IO的设计即是装饰者模式。代理模式:给一个对象提供一个代理对象,并有代理对象来控制对原有对象的引用,spring的动态代理即使用的代理模式。代理模式:给某一个对象提供一个代理或占位符,并由代理对象来控制对原对象的访问。之前看的那篇文章里没有 看的是这

2018-02-05 13:36:34 115

原创 设计模式-享元模式

享元模式-Flyweight Pattern我的理解:多次使用同一个对象,仅外部状态不同,在享元模式的工厂中,可以取同一个对象和不同的外部状态赋值给不同的引用。享元模式(Flyweight Pattern):运用共享技术有效地支持大量细粒度对象的复用。系统只使用少量的对象,而这些对象都很相似,状态变化很小,可以实现对象的多次复用。由于享元模式要求能够共享的对象必须是细粒度对象,因此

2018-02-05 11:27:34 146

原创 设计模式-外观模式

外观模式-Facade Pattern外观模式:为子系统中的一组接口提供一个统一的入口。外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。自己的理解:外观类调用多个子系统,将几个不同类中的方法组合成一个方法。(1)外观角色:在客户端可以调用它的方法,在外观角色中可以知道相关的(一个或者多个)子系统的功能和责任;在正常情况下,它将所有从客户端发来的请求委派到

2018-02-05 09:55:51 143 4

原创 设计模式-装饰模式

装饰模式-Decorator Pattern自己的理解:具体构件和抽象装饰类继承抽象构件类,具体装饰类继承抽象装饰类,抽象构件类中有一个统一的方法,装饰的作用是为具体构件的这个方法加入额外的一些功能。(装饰类可以接收一个抽象构件类型,返回也是一个抽象构件类型)● 抽象构件:它是具体构件和抽象装饰类的共同父类,声明了在具体构件中实现的业务方法,它的引入可以使客户端以一致的方式处理

2018-02-05 09:44:36 278 2

原创 设计模式-组合模式

组合模式-Composite Pattern组合模式(Composite Pattern):组合多个对象形成树形结构以表示具有“整体—部分”关系的层次结构。组合模式对单个对象(即叶子对象)和组合对象(即容器对象)的使用具有一致性,组合模式又可以称为“整体—部分”(Part-Whole)模式,它是一种对象结构型模式。自己的理解:对于一个树形结构,容器和子节点都有相同的方法(都继承于抽

2018-02-02 16:41:59 146

原创 设计模式-桥接模式

桥接模式-Bridge Pattern桥接模式用一种巧妙的方式处理多层继承存在的问题,用抽象关联取代了传统的多层继承,将类之间的静态继承关系转换为动态的对象组合关系,使得系统更加灵活,并易于扩展,同时有效控制了系统中类的个数。我的理解:在抽象类中引用实现类接口,使每一个扩充抽象类都可以使用任意一个具体实现类。●抽象类:用于定义抽象类的接口,它一般是抽象类而不是接口,其中

2018-02-02 15:55:02 188

原创 设计模式-适配器模式

适配器模式(Adapter Pattern):将一个接口转换成客户希望的另一个接口,使接口不兼容的那些类可以一起工作,其别名为包装器(Wrapper)。适配器模式既可以作为类结构型模式,也可以作为对象结构型模式。自己的理解:当适配者类中有一个方法,需要一些处理才可以被使用,在适配器类中创建一个适配者类,创建一个处理适配者中方法的方法,这个创建的方法是在目标抽象类中定义的(就是用户准备使用的

2018-02-02 12:11:34 107

原创 设计模式-建造者模式

建造者模式又称为生成器模式,它是一种较为复杂、使用频率也相对较低的创建型模式。建造者模式为客户端返回的不是一个简单的产品,而是一个由多个部件组成的复杂产品。自己的理解:建造者可以创建一个复杂产品类,返回一个设置好属性的产品实例,用户只需要告诉指挥者想要哪一种复杂产品(向指挥者传入一个具体建造者,指挥者根据抽象建造者编程),指挥者中调用抽象建造者中声明好的创建和返回方法。● 抽象建造

2018-02-02 11:54:11 108

原创 设计模式-原型模式

原型模式-Prototype Pattern原型模式(Prototype Pattern):使用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。原型模式是一种对象创建型模式。●抽象原型类:它是声明克隆方法的接口,是所有具体原型类的公共父类,可以是抽象类也可以是接口,甚至还可以是具体实现类。 ● 具体原型类:它实现在抽象原型类中声明的克隆方法,在克隆方法中返回

2018-01-31 17:17:25 155

原创 设计模式-单例模式

单例模式-Singleton Pattern单例模式(Singleton Pattern):确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例这个类称为单例类,它提供全局访问的方法。单例模式是一种对象创建型模式。单例模式有三个要点:一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。饿汉式单例、带双重检查锁定机制的懒汉式单

2018-01-31 16:52:27 117

原创 设计模式-抽象工厂模式

抽象工厂模式-Abstract  Factory Pattern自己的理解:当需要创建不同产品等级,但是是同一个产品族时,使用抽象工厂模式。 抽象工厂模式(Abstract Factory Pattern):提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们具体 的类。 抽象工厂模式又称为Kit模式,它是一种对象创建型模式。 ● 抽象工厂:它声明了

2018-01-31 16:38:48 127

原创 设计模式-工厂方法模式

工厂方法模式-Factory Method Pattern自己的理解:与简单工厂相比,引入了抽象工厂角色,不再像简单工厂那样,实现了一个具体工厂创建一个产品,新加入产品时,只需要新建一个具体工厂实现抽象工厂,符合开闭原则。(每一个产品都要新建一个具体工厂,所以类会太多... 我觉得可以使用简单工厂配合工厂方法)工厂方法模式提供一个抽象工厂接口来声明抽象工厂方法,而由其子类来具体

2018-01-31 16:26:43 123

原创 设计模式-简单工厂模式

在学习这个:http://blog.csdn.net/lovelion/article/details/17517213简单工厂模式-Simple Factory Pattern自己的理解:用户给一个工厂发送一个需要的具体产品,工厂就创建出来,用户只需要一个抽象产品类型来接收创建出来的产品,也就是不需要知道具体产品的类型。 (但是一个工厂类实现了过多的功能,新加入的产品需要修改工厂

2018-01-31 16:17:19 148

原创 设计模式-面向对象设计原则

面向对象设计原则之单一职责原则单一职责原则(Single Responsibility Principle, SRP):一个类只负责一个功能领域中的相应职责面向对象设计原则之开闭原则开闭原则(Open-Closed Principle, OCP):一个软件实体应当对扩展开放,对修改关闭。即软件实体应尽量在不修改原有代码的情况下进行扩展。

2018-01-30 16:59:22 107

原创 Spring&WebSocket的Demo

配置:(需要实现WebSocketConfigurer接口)@Configuration@EnableWebSocketpublic class WsConfigure implements WebSocketConfigurer{ @Override public void registerWebSocketHandlers(WebSocketHandlerRe

2018-01-25 17:14:00 205

原创 SSM+Shiro

网上就没有一个正经的package shiro;import java.util.ArrayList;import java.util.List;import org.apache.shiro.authc.AuthenticationException;import org.apache.shiro.authc.AuthenticationInfo;import org.

2017-12-07 10:47:42 200

原创 TP3.2.3笔记

定义常量在入口文件index.phpdefine(“SITE_URL”,”http://xxxx/”);define(“CSS_URL”,SITE_URL.”shop/public/css/”);模板中:href=”{$Think.const.CSS_URL}style.css”设置常量有两种方式:const name = value; 作用域根据当前命名空间决定define()

2017-09-27 15:43:29 1283

原创 git常用命令

git init 建立仓库git status 状态git add index.php 提交到暂存区   git add .git commit -m "备注信息" 提交到版本库git rm qq.txt 删除 git remote add origin https://gitee.com/ohh_suc/lianshou.git 为本地库添加远程库git push origin ma...

2017-09-23 22:46:59 129

原创 第三十天(JSTL)

c:out  可以对特殊字符进行转换 <% request.setAttribute("book",">"); %> book: ${requestScope.book } book: c:set 可以为域对象赋属性值,其中value属性支持EL表达式;还可以为域对象中的Javabean的属性赋值,target value都支持EL表达式 c:remove

2017-02-07 09:10:31 146

原创 第二十五天(简单标签)

自定义标签1.创建一个标签处理器类:实现SimpleTag接口2.再WEB=INF文件夹下新建一个 .tld(标签库描述文件) 为扩展名的 xml 文件,并考入固定的部分,并对description,display-name,tlib-version,short-name,uri 修改3.在tld文件中描述自定义的标签<taglib xmlns="http://java.sun

2017-02-01 23:18:37 188

原创 第十七天(EL表达式)

所有EL都是以${为起、以}为结尾的EL提供 . 和 [ ] 两种运算符来存取数据  (如果域对象中的属性名带有特殊字符,则使用 [ ] 运算符)如果没有指定哪一个范围的username,所以它的默认值会先从Page范围找,加入找不到,再依次序到Request、Session、Application范围。假如找到就直接回传,如果都没有找到,返回nullEL可以进行自

2017-01-25 21:09:43 208

原创 第十四天(Session)

session通过SessionID来区分不同的客户,session是以cookie或URL重写为基础的,默认使用cookie来实现,系统会创造一个名为JSESSIONID的输出cookie,这称之为session cookie,以区别persistent cookies通常看不到JSESSIONID,但是当把浏览器的cookie禁止后,web服务器会采用URL重写的方式传递Sessionid

2017-01-19 10:20:08 194

空空如也

空空如也

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

TA关注的人

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