自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小呆娃的博客

即使愚钝,也要呆萌;即使差劲,也不放弃;来日方长,所以我相信奇迹。

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

原创 初探Kafka全局架构

​从今天将开始学习一个新的中间件Kafka,后面会对学习Kafka的整个内容写一系列的文章。这篇文章将会从以下三个方面进行总结:Kafka是什么以及Kafka的使用场景端到端阐述Kafka的整个数据流转过程和全局架构阐述Kafka核心专有名词的具体含义Kafka是什么?官方定义Kafka是一个分布式流处理平台,并说明流处理平台应该具有以下三种特性:可以让你发布和订阅流式的记录。这一特性与消息队列或者企业消息系统类似。可以储存流式的记录,并且有较好的容错性。可以在流式记录产生时就进行处理

2021-04-14 22:08:15 153 2

原创 Tomcat如何启动整个容器的?

Tomcat启动过程前节回顾启动流程图流程详解Lifecycle接口LifecycleEventLifecycleListenerLifecycleSupport监听器的调用下节预告前节回顾  通过上一节Tomcat架构设计概述我们知道Tomcat容器的整体架构,也都听过Tomcat的一键式启动模式,即当Catalina启动时,其包含的这些组件也会一起启动,同样,当Catalina关闭时,这些...

2020-04-12 23:32:06 436

原创 Tomcat架构设计概述

Tomcat架构设计及主要组件概述整体架构Server服务器Service服务Connector连接器Container容器Engine引擎Host站点Context服务Wrapper组件整体架构 tomcat的整体架构设计如下,可对比server.xml查看整体设计思想: 其中Container这样画是为了方便理解Container下的4个组件都是属于Servlet容器,它并不是Tomc...

2020-04-05 23:33:04 175

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

1.定义迭代器模式:提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示。 把在元素之间游走的责任交给迭代器,而不是聚合对象,这不仅简化了聚合的接口和实现,也让聚合更专注在它所应该专注的事情上,让责任者各得其所。2.结构类图3.代码实现聚合接口:public interface Aggregate { void add(Object obj); vo...

2020-03-29 22:16:46 85

原创 Tomcat开启https通信

Tomcat开启https通信名词生成证书配置server.xml配置web.xml补充参考后记名词der:证书编码格式。pem:证书编码格式,对der二进制编码的base64字符,包含—begin—,---end—。**.csr **:证书请求文件格式,包含公钥和主体信息,发给CA,CA会使用私钥加密后对内容签名并制作成证书后返回。.crt:一般用于linux系统的证书格式,包含公钥和...

2020-01-12 14:48:14 145

原创 https数字证书基础概念(一)

基础概念密钥公钥密码体制对称加密算法非对称加密算法CA数字证书摘要摘要算法数字签名参考资料后记密钥密钥,一般是一个字符串或数字,在加密或解密时传递给加密或解密算法。下面公钥密码体制中提到的公钥和私钥都是密钥,只是公钥是加密时使用的密钥,私钥是解密时使用的密钥。公钥密码体制公钥密码体制(public-key cryptography)由公钥、私钥、加密算法三部分组成,其中由公钥加密的内容只能...

2020-01-05 14:32:26 279

原创 Tomcat之cookie中的双引号

Tomcat之cookie中的双引号问题描述临时解决问题分析源码分析解决方案问题描述使用tomcat部署服务后,点击F12,通过浏览器发现cookie中的path值(/)被加上双引号。临时解决通过百度,找到了临时的解决方案,链接如下:https://blog.csdn.net/uniquewonderq/article/details/88421737问题分析但是为什么需要设置这个参...

2019-05-19 19:13:44 802

原创 设计模式之策略模式

1.定义策略模式定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。这些算法族可以看成对象的一系列行为。2.场景描述现在要开发一款鸭子游戏,目前是所有的鸭子都会游泳,但是绿头鸭(MallardDuck)不会呱呱叫,只会吱吱叫;橡皮鸭不会飞等。后续还有可能会出现唐老鸭角色,即不会飞,也不会吱吱叫,呱呱叫,但是会说话等突然情况需要添加或修改游戏角色。3...

2019-01-20 19:07:34 218 3

原创 JAVA设计模式之外观模式

此文章总结自Head First

2019-01-01 21:15:56 146

原创 jvm启动模式之client与server

本人小白菜一枚,刚开始接触jvm,在此记录相关的jvm学习心得,后面会陆续记录,若有错误,还请大家多多指点。1.指定jvm启动模式 jvm启动时,通过-server或-client参数指定启动模式。2.cilent模式与server模式的区别 编译器方面: 当虚拟机运行在client模式时,使用的是一个代号为c1的轻量级编译器,而server模式启动时,虚拟机采用的是相...

2018-08-11 14:05:37 2819

原创 springboot中使用注解@Slf4j时,log无效

在springboot项目中,使用注解@Slf4j时,log变量不能用。 解决方法:(使用idea工具的图解)下载安装lombox插件。 1、File → settings → Plugins, 然后点击“Browse repositories” 2、输入 lombok 搜索插件, 点install安装,安装完重启idea 原文:https://blog.csdn.net/...

2018-07-03 20:09:12 13272 1

原创 springboot中jpa无法初始化

springboot项目中使用jpa时,项目单元测试时出现以下错误提示信息: 出现该错误的原因是spring的jpa的懒加载。 解决此问题: 在springboot的配置文件中加上:(第一种配置文件的格式是“yml”结尾) spring: jpa: open-in-view: true properties: ...

2018-07-02 14:17:54 1251

转载 springboot项目中事务注解无效

在项目中,如果已经加上@Transactional注解,相对应的依赖也都已经导入,这个时候可以查看一下插入的表类型是否为InnoDB,该类型的表支持事务操作,但是表类型为MyISAM,是不支持事务操作的,因为该类型的表是非事务安全的,所以无法实现数据回滚。 出现该情况需要修改表类型即可。ALTER TABLE tablename ENGINE = InnoDB如下所示:表明修改成功 ...

2018-07-01 10:44:42 1099

原创 MyBatis映射文件之动态SQL

在实际开发中,根据某些业务需求,在查询的时候往往会带有很多查询条件。在JDBC和Hibernate框架中,对于这样的需求需要拼装SQL,可读性比较差。而Mybatis提供的动态SQL,在动态SQL语句的组装能力上,可读性强,简单易懂;通过使用XML的几个简单元素,就可以实现动态SQL查询。由于大量的判断都不再通过java代码,而是通过在映射文件中进行配置,所以大大减少了代码量,体现了Mybatis的灵活性、高度可配置性和可维护性。 注:当然Mybatis也支持在注解中配置SQL,但是由于注解配置功能的受限

2018-06-07 21:03:47 1624

原创 SpringMVC之控制器接收各类请求参数

1.接收普通请求参数 传递过来的参数名称和HTTP的一致时,无须任何注解直接可以获取参数信息;如果不一致,无法获取。(参数允许为空)(1)接收的参数为某一字段,这里的例子是发送ajax请求,data中的id既是发送请求的参数。如果是表单中的某一个字段,则要name属性的值跟参数名一样才能接收参数信息。$.ajax({ type: 'get', url: ...

2018-06-01 22:51:21 3772

原创 MYSQL操作之DML和DQL

DML是对表中的数据进行增、删、改操作:insert update delete小知识:1)在mysql中,字符串类型和日期类型都要用单引号括起来,'tom' '2015-09-04' 2)空值类型有两种 : null==不占内存 " "==占内存 3)查看数据库编码的具体信息 Show variables like 'CHARACTER%';

2017-10-09 23:31:16 909

原创 MYSQL操作之DDL

数据定义语言,用来定义数据库对象:库、表、列等;使用关键字:CREATE、 ALTER、DROP一.操作数据库(DDL) 1.创建数据库 CREATE DATABASE 数据库名 例: CREATE DATABASE mydb1;(常用) CREATE DATABASE mydb2 CHARACTER SET utf8;

2017-10-09 14:45:28 344

原创 String、StringBuffer和StringBuilder的区别

一、String、StringBuffer和StringBuilder的源码分析1.String类的关键源码分析如下: public final class String implements java.io.Serializable, Comparable<String>, CharSequence { //final类型的char数组,所以数据引用变量

2017-10-08 19:16:09 147

原创 JAVA设计模式之观察者模式

定义:对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 一、适用场景1.当一个抽象模型有两个方面,其中一个方面依赖于另一方面。将这二者封装在独立的对象中以使它们可以各自独立地改变和复用。2.当对一个对象的改变需要同时改变其它对象,而不知道具体有多少对象有待改变。3.当一个对象必须通知其它对象, 而它又不能假定其它对象是谁。二、涉及对象1.主题接

2017-10-08 17:31:02 143

翻译 JAVA集合体系

一、定义 在Java语言中,Java语言的设计者对常用的数据结构和算法做了一些规范(接口)和实现(具体实现接口的类)。所有抽象出来的数据结构和操作(算法)统称为Java集合框架(Java Collection Framework)。 二、集合框架的层次结构 Java中集合类定义主要是在java.util.*包下面,在java中常用的集合在系统中定义了三大接口: 1、Collec

2017-10-06 15:24:31 312

原创 HTTP的GET和POST的区别

Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的查,改,增,删4个操作。 形象的来说:GET一般用于获取/查询资源信息,而POST一般用于更新资源信息(实质上,GET和POST只是发

2017-10-02 20:23:17 217

原创 数据库基本操作和知识

数据库基本语法和概要

2017-09-20 14:59:14 482

原创 二叉树的序列化和反序列化

二叉树的序列化和反序列化

2017-09-20 14:39:42 166

空空如也

空空如也

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

TA关注的人

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