自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 收藏
  • 关注

转载 设计模式之状态模式总结篇

状态模式总结篇状态模式总结篇,我们将从以下几个方面对状态模式进行总结。状态模式出现的意图是什么?通过对象内部状态发生改变进而来改变对象的行为,对象看起来好像是被修改了一样。如,没有糖果的时候(是一个状态),糖果机就不能运行了,有糖果之后(另一个状态),投币就可以出糖果了。本文出处凯哥Java(kaigejava)讲《23种设计模》系列教程种的《状态模式总结篇》凯哥公众号:凯哥...

2019-09-17 13:23:21 175

转载 看了这个Java实习生入职测试题后,幸亏我不是实习生

看了这个Java实习生入职测试题后,幸亏我不是实习生一个Java实习生的入职测试题,你能答对几个?今天在某APP中看到,有实习生放出的Java实习生入职测试题。看完之后,很庆幸自己不是实习生。本文来源:公众号:凯哥Java(kaigejava)个人博客:www.kaigejava.com我们来一起看看题目吧:1:String类为什么是fianl的?2:JDK8中的HashMa...

2019-09-16 09:58:32 181

转载 幂等性学习及接口的幂等性

幂等性学习一:什么是幂等性在这里需要有以下几个问题需要注意:1:幂等性的实质是一次或多次请求同一个资源,其结果是相同的。其关注的是对资源产生的影响(副作用)而不是结果,结果可以不同。比如列表查询的时候,一边在save或者是update,而你这边还是在select,其结果肯定是不同的,但是你的select操作并未对数据(资源)产生影响(副作用);2:幂等性不仅仅只是一次或者多次...

2019-09-15 15:51:46 80

转载 第一天 负载均衡之高并发发送

高并发发送:1处:负载均衡2处:数据库在APP服务器多台情况下,如果用户登录,session怎么处理?本文来源:凯哥Java(kaigejava)个人博客:www.kaigejava.com如下图:说明:如果用户登录的时候负载到01服务器上,当用户在操作其他的时候,如果被负载到02机器上。这个时候02机器上面就没有当前用户的session。用户就会被转跳到登陆页面。解决方案:...

2019-09-14 12:34:57 87

转载 spring boot 配置文件properties和YAML详解

spring boot 配置文件properties和YAML详解properties中配置信息并获取值。1:在application.properties配置文件中添加:根据提示创建直接创建。怎么在程序中引用这个值呢?浏览器访问:我们可以看到输出的值。说明:Application属性配置文件的优先顺序2:端口修改在application.properties中直接使用:se...

2019-09-13 12:40:10 89

转载 spring boot 测试插件使用及result风格实例1&打包启动

本节主要内容:1:spring boot 小插件使用2:构建第一个简单的result风格的实例并访问3:将项目打成jar包后启动并访问。一:添加boot devtools插件:执行完成后,查看pom.xml:再pom,xml文件中会多出一个依赖。这个工具的作用:在未使用该插件的时候,如果我们想要在IndexController中添加一个新方法,先要关闭tomcat服务器,然后...

2019-09-12 14:17:14 50

转载 spring boot学习4 多环境配置

说明:在企业中,一个项目一般都有测试环境(test) 、开发环境(dev)、生产环境(pro)等等。在每个环境中,配置信息会不一样的。比如数据库、静态资源文件位置等都会不一样的。那么使用spring boot怎么处理这些呢?假设现在我们的开发环境端口是:“测试环境端口是:生产环境端口为:创建如下图的配置文件:说明:1: dev是开发环境的2:pro是生产环境的3:test是测...

2019-09-11 18:13:57 56

转载 spring boot原理分析启动依赖中parent帮我们干了什么

主要内容:1:分析spring-boot-starter-parent 这个依赖通过前面几篇文章的学习,我们感受到了spring boot的魅力。最明显的感觉就是pom.xml文件。代码少了很多。其实这主要归功于依赖的parent。下面我们就来看看spring-boot-starter-parent这个依赖为什么有了它很多其他依赖(如spring core等)就不用在引入了....

2019-09-10 09:56:04 82

转载 组合模式就是几个模式组合一起吗?来看看组合模式原理

组合模式引导篇及组合模式原理在上一个《迭代器模式》中,我们讲到了阿里收购网易考拉后,店铺合并的问题使用到了迭代器模式。现在又有了新需求。我们先来看看新需求:先说明:组合模式并非是把之前学过的设计模式组合在一起的一种模式哈。别理解错了。来源:凯哥Java(kaigejava)在原有菜单的基础上,新增餐后甜点功能,如在中餐厅(DinerMenu)中添加餐后甜点。我们先来回顾下上一...

2019-09-09 09:53:09 122

转载 在阿里云上通过宝塔面板安装禅道

在阿里云上通过宝塔面板安装禅道禅道安装,这个之前答应过朋友的。正好,今晚又说起这个事,索性就在阿里云上安装算了。相信很多朋友都用过禅道这个工具。使用过的朋友都知道,禅道是基于PHP开发的。对于使用Java开发的凯哥来说,LAMP环境,还真不会搭建。还好,之前就一直使用宝塔面板。有了这个面板LAMP环境就很容易搭建了。本教程是基于禅道11.6.2开源版的。来源:凯哥Java(凯...

2019-09-08 11:05:49 443

转载 设计模式之迭代器模式 引导篇

迭代器模式-引导篇这两天,比较火的并购新闻就是,网易考拉被阿里以20亿美元收购。从此网易考拉不再姓“网”而姓“阿”了。并购后的网易考拉和阿里的电商系统进行对接。那么问题来了:在阿里有个早餐店的菜单(CakeHouseMenu)使用的事ArrayList来存放菜单的,考拉有个午餐店的菜单(DinerMenu)使用的是数组结构存放的。现在考拉和阿里合并了,两个点的菜单也要合并。我...

2019-09-07 08:21:55 61

转载 设计模式之生活中的模板模式总结篇

模板模式总结篇在上一篇《设计模式之模板模式引导篇》中,我们使用了泡咖啡和泡茶的日常小场景讲解了模板模式的原理。本篇,我们就结合这个小案例,来对模板模式进行总结。本文出自《凯哥学设计模式》系列教程。作者:凯哥Java(kaigejava)凯哥个人博客:www.kaigejava.com一:模板模式定义(或内容)在上一篇中,我们知道泡茶和泡咖啡都需要五个步骤。这五个步骤,其实就是...

2019-09-06 09:11:50 70

转载 设计模式之生活中的模板模式

在讲模板模式原理前,我们按照管理,先来个生活中例子。茶馆需要开发一个自动的泡咖啡和泡茶的程序。本文出自:《凯哥学设计模式》系列教程中的模板模式一我们先来看看泡咖啡和泡茶的步骤:我们根据上图写代码实现:泡咖啡类,如下图:泡茶类如下图:测试类:运行结果:很简单。也很容易写出来。写出来很清楚。从上图中,可以发现,两个流程几乎是一样的套路(步骤)。其中,不变的部分:水烧开、倒入杯子、...

2019-09-05 09:22:51 68

转载 设计模式之外观模式-总结

设计模式之外观模式-总结在上一篇中,我们模拟家庭影院项目实现了外观模式讲解。本篇我们对外观模式进行总结。来源:凯哥Java(kaigejava).本文由凯哥《23设计模》系列中的一篇。凯哥突然感觉,使用家庭影院这个例子不恰当。换个通俗易懂的。去银行存取钱。这个案例大家都遇到过吧。我们去银行后,每个窗口都有个漂亮的为各位服务。在我们存取钱的过程中,只需要和窗口沟通就可以了。我们...

2019-09-04 10:03:20 83

转载 设计模式之外观模式-引导篇及原理

外观模式-引导篇及原理来看看司小司的新项目-家庭影院控制接口项目家庭影院设备:DVD播放器、投影仪、自动屏幕、环绕立体声、爆米花机等等。对于的类对象:DVDPlayer、Projector、Stereo、Popcorn、Screen、TheaterLights etc...类图如下:我们知道,这些设备需要遥控器,同时这些设备都对外提供了接口。如果一个设备一个遥控器是不是很麻烦...

2019-09-03 09:54:20 158

转载 设计模式之命令模式-引导篇及原理

设计模式之命令模式-引导篇及原理引导司小司又接到了新项目:家电自动化遥控器API项目。项目背景:随着物联网的流行以及智能化家具普及。一个遥控器可以管控家里所有设备(家电等)也很正常了。来源:凯哥Java(kaigejava)如上图:假设空心的是关,实心的是开。需求:1:给出各个家电(电灯、电视、音响等)的API,需要在这个遥控器接口中,对接这些API来实现对不同家电的控制。2...

2019-09-02 10:04:31 108

转载 Javaweb-动态代理之代理工厂模式实现

前面做了一个Waiter的动态代理的练习,这篇继续来写一个练习,一个动态代理工厂的例子,这个例子在以后学习Spring的时候会有帮助。这个动态工厂的主要作用就是包装了下目标对象和前置增强和后置增强。工厂类的使用步骤我们要设计一个动态代理工厂类,以下是使用这个工程类的步骤。来源:凯哥Java(kaigejava)1.创建代理工厂2.给工厂设置三样东西1)目标对象,调用方法...

2019-09-01 10:04:01 137

转载 Javaweb-类加载器-类加载器的了解入门

前面的动态代理学完了,以后在学习Spring的时候会用到这些动态代理的知识和原理,像目标对象,增强这两个术语,会经常听到。学习动态代理,就是学习JDK中反射包下的一个Proxy类,具体来说,我们只是学习newProxyInstance(ClassLoader, interfaces, hander)这个方法。这篇开始来学习下,加载器,我们在学习获取动态代理,第一个要准备的参数...

2019-08-31 08:20:26 107

转载 设计模式之命令模式-使用命令模式实现遥控器及总结

设计模式之命令模式-使用命令模式实现遥控器及总结先来看看项目结构:说明:1:命令接口对象2:电灯打开或关闭命令3:音响打开或关闭命令4:音响音量增加或减少命令来源:凯哥Java(kaigejava)电灯开或关代码:/**Created by kaigejava on 2019/8/30.关灯的命令对象*/public class LightOffCommand ...

2019-08-30 09:38:57 465

转载 兄弟组件之间联动--vue开发app点击字母展示地区列表

下图这种地区搜索方式在很多app中都很常见,今天就使用vue框架中的 better-scroll 第三方包来实现页面滚动和点击侧边栏字母该字母开头的地区列表置顶功能。来源:凯哥Java(kaigejava)1、A子组件通过使用 this.$emit(事件名字,事件携带内容) 向外触发事件首先,在<city-alphabet>组件每个字母元素上绑定事件,在该事件中向...

2019-08-29 09:38:07 81

转载 设计模式之工厂模式-抽象工厂模式

设计模式之工厂模式-抽象工厂模式抽象工厂模式:定义了一个接口用于创建相关或有依赖关系的对象簇,而无需明确指定具体类。我们来看看使用抽象工厂模式来实现的披萨项目。来源:凯哥Java(kaigejava)先来看看项目结构:说明:1:工厂接口2:两个实现类3:订单对象4:测试类。看看具体代码:IFactoryInterface:BeiJinFatory:FactoryOrderPi...

2019-08-28 09:44:47 71

转载 设计模式之工厂模式-工厂方法模式

设计模式之工厂模式-工厂方法模式大家好,欢迎来到污污弹公司,今天司小司又接到了一个新活-披萨项目。来源:凯哥Java(kaigejava)需求:披萨项目:要方便披萨品种的扩展、要便于维护、要能运行时候方便扩展来看看披萨族设计:司小司经过分析得到:披萨都需要烘焙(bake)、切割(cut)、包装(box)还有就是披萨原材料准备(prepare)。其中变化的就是prepare准备...

2019-08-27 09:44:06 61

转载 设计模式之工厂模式一简单工厂模式

设计模式之工厂模式一简单工厂模式工厂模式由来:在我们创建对象的时候使用,使用new操作的。如果多个对象创建都使用new会。所以工厂模式就是用来代理new操作的一种模式。根据工厂模式由来,我们可以看出工厂模式属于创建型模式。提供一种创建对象的最佳方式。来源:凯哥Java(kaigejava)工厂模式主要的分类:简单工厂模式、工厂方法模式、抽象工厂模式简单工厂模式:简单工厂模式不...

2019-08-25 11:06:57 66

转载 设计模式之观察者模式-Java内置观察者及总结

观察者下篇在上一篇文章中,我们通过污污弹公司司小司做气象站项目学习了观察者模式怎么使用。在本篇中,我们对观察者模式进行总结及关键点,还有一个就是Java中内置的观察者模式。本文出处:凯哥Java(kagejava)一:Java内置的观察者我们将使用Java内置的观察者将气象站项目重新写一次。内置观察者的区别:Subject对象:1:subject名称变了,变成了Observa...

2019-08-24 10:20:19 96

转载 设计模式之观察者模式-Java内置观察者及总结

观察者下篇在上一篇文章中,我们通过污污弹公司司小司做气象站项目学习了观察者模式怎么使用。在本篇中,我们对观察者模式进行总结及关键点,还有一个就是Java中内置的观察者模式。本文出处:凯哥Java(kagejava)一:Java内置的观察者我们将使用Java内置的观察者将气象站项目重新写一次。内置观察者的区别:Subject对象:1:subject名称变了,变成了Observa...

2019-08-24 10:19:04 93

转载 设计模之观察者模式上篇

观察者模式上篇观察者模式原理:大家好,欢迎来到污污弹公司,最近啊,污污弹接到气象站的外包项目。功能比较简单:要对外提供天气接口(温度、气压、湿度)需要实时通知第三方;还需要实时在市中心公告栏上发布天气情况。司小司接到任务开始动手干了。根据Java面向对象特性分析后得到如下信息:天气对象:WeatherData公告板对象:CurrentConditions天气更新时候,调用天气...

2019-08-23 09:40:28 55

转载 单例模式只有饿汉式和懒汉式吗?这几种单例模式你见过吗

设计模式之单例模式-单例模式的几种实现方式及小案例本文来源:凯哥Java(wx:kaigejava)单例模式有几种?饿汉式、懒汉式。这两种是最常见的。还有几种是对其扩展的。具体如下:我们可以从上图看到,共有六种方式。其中在懒汉式基础上扩展的有两种。即:加锁的懒汉式及双重判断加锁的懒汉式还有一种是使用内部类实现的。即:内部静态类的最后一种是比较少见的。使用枚举的。我们来看看每种...

2019-08-22 09:24:25 63

转载 设计模式系列教程之单例模式-原理介绍

设计模式系列教程之单例模式-原理介绍一:单例模式(Singleton)学习步骤经典的单例模式原理:本文出处:凯哥Java(wx:kaigejava)先来看看单例模式的介绍:其重点就是,使类对象成为系统中唯一的一个实例。怎么理解这句话呢?我们从数学与逻辑学中来理解:singleton的定义是“有且仅有一个”的意思。我们来看看单例在哪些地方会被使用到,来理解单例模式的意义:比如我...

2019-08-21 09:21:39 64

转载 rabbitMQ高级整合应用第四篇 消息监听适配器

RabbitMQ学习系列第二十二篇 高级整合 第四篇MessageListenerAdapterMessageListenerAdaoter:即消息监听适配器。代码演示:在config类中修改:在SimpleMessageListenerContainerbean中(上一节课代码演示)修改如下:/** 使用适配器模式 **/MessageListenerAdapter ad...

2019-08-20 12:53:15 110

转载 rabbitMQ高级整合应用第三篇 SimpleMessageListenerContainer

rabbitMQ精讲系列第二十一篇 高级整合应用第三篇SimpleMessageListenerContainer今天主要内容:SimpleMessageListenerContainer对象SimpleMessageListenerContainer:简单消息监听容器。这个类非常的强大,我们可以对它进行很多的设置,对应消费者的配置项,这个类都可以满足的。监听队列(多个队列...

2019-08-19 09:32:19 785

转载 Javaweb之Filter案例练习-项目全局编码过滤器

Filter全局编码过滤器这篇来做一个Filter在全局编码过滤器练习,这篇新建一个web项目来做练习。web项目创建先创建一个叫GlobalFilter的web动态项目,把前面文章出现过的login.jsp复制过来,改成如下代码。<%@pagelanguage="java"contentType="text/html; charset=UTF-8" page...

2019-08-18 00:35:24 119

转载 Javaweb之Filter案例练习-自动登录问题和MD5加密

自动登录问题和MD5加密前面已经完成了Filter的自动登录,但是有问题,我们在web.xml中Filter的url-mapping中配置的规则是/*, 也就是这个网站的所有请求都拦截。这肯定不合适。我们本来访问/login.jsp,本来就是去登录,结果也进行了拦截。解决自动登录问题其实,我们可以在AutoLoginFilter.java这个文件中写if语句来判断,虽然web...

2019-08-17 09:40:41 134

转载 VUE父组件向子组件传递数据

在使用VUE开发的时候,有时候,我们需要通过父组件像子组件传递数据或者为了防止每个子组件都会有请求数据事件的发生,从而导致代码冗余,所以,我们可以把同一个模块下的所有子组件请求事件都放到父组件中去处理。1、父组件通过属性的方式给子组件传值//注意:":city"和":swiperList"这里定义的什么名字,子组件中props接收的就是什么名字// "city"和"s...

2019-08-16 09:29:52 397

转载 vue中的代理转换机制proxyTable配置项

随着互联网技术的发展,现在很多互联网公司分工越来越明确了。后端开发人员只负责后端开发及接口的提供,前端人员负责按照设计图出页面及套页面,这个时候就出现了一种新的开发模式。即前后端分离模式。前端框架更新及普及更加推动了前后端分离开发。这种模式缩短了项目开发周期。但是,有时候会会出现比较尴尬的情况。比如再使用VUE写项目的时候,就会遇到。在写vue项目的时候,后台没有及时提供数据...

2019-08-15 09:29:43 275

转载 JavaWeb练习之使用filter实现自动登陆

Filter练习-自动登录本篇来做一个Filter的练习题,就是网站自动登录的,这个自动登录,我们在学习cookies的时候做过,这次使用Filter来做一遍。数据库表准备首先,我们需要准备一个表,用户表,如果没有可以参考以下SQL去创建。CREATE DATABASE javawebUSE javawebCREATE TABLE users(id INT PRIMARYKE...

2019-08-14 09:34:48 134

转载 设计模式之策略模式总结

再上一篇文章《设计模式之策略模式》中,我们通过模拟鸭子项目,了解了什么是策略模式,怎么使用策略模式。本文将通过鸭子项目的学习,对策略模式进行总结。策略模式:分别封装行为接口,实现算法族,超类(父类)里放行为接口对象,在子类里具体设定行为对象。原则就是: 分离变化部分,封装接口,基于接口编程各种功能。 此模式让行为算法的变化独立于算法的使用者。策略模式总结:1:策略...

2019-08-13 10:01:18 86

转载 每日一个小算法之回文数这么玩20190811

判断是不是回文数判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例1:输入: 121输出: true示例2:输入: -121输出: false解释:从左向右读,为-121。从右向左读,为121-。因此它不是一个回文数。示例3:输入: 10输出: false解释:从右向左读,为01。因此它不是一个回文数。示...

2019-08-12 09:31:35 91

转载 设计模式之策略模式

需求:1:模拟鸭子项目从项目"模拟鸭子游戏"开始。鸭子都会叫、会游泳。有的鸭子是红头的、有的鸭子是绿头的。分析:从OO(ObjectOriented,面向对象)的角度设计这个项目。鸭子的父类:抽象的1.都会gaga叫2.抽象的外形(如:红头鸭、绿头鸭等)3.都会游泳综上所述,我们得到鸭子父类:publicabstractc...

2019-08-11 08:47:20 76

转载 每日一个小算法之整数中每位上的数字进行反转 20190810

题目要求:给出一个32位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1:输入:123输出:321示例 2:输入:-123输出:-321示例 3:输入:120输出:21示例 4:输入:9646324351输出:0注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−2的31次方, 2的31次方 − 1]。请根据这个假...

2019-08-10 19:54:15 127

转载 rabbitMQ精讲系列第十八篇 高级整合应用第一篇

在本章学习中,我们主要是和应用整合的。下面来看看本章我们主要内容:整合spring AMQP和spring boot及spring cloud整合。以及在整合中需要注意及工作中踩过的坑。如同如下图:本文主要内容:使用代码创建rabbitAdmin,通过rabbitAdmin操作MQ本文是《RabbitMQ精讲系列》教程中的第十八篇 高级应用整合的第一篇。如果对RabbitMQ...

2019-08-10 08:59:47 99

空空如也

空空如也

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

TA关注的人

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