自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 实现线程有几种方式?

java实现实现的方式

2023-02-14 03:35:42 163

原创 CompletableFuture异步编程

CompletableFuture异步编程

2022-08-28 02:38:11 411

原创 Elasticsearch单机安装

官网下载Elasticsearch当前版本下载的是7.8.0官网: https://www.elastic.co/cn/downloads/elasticsearch解压软件tar -zxvf elasticsearch-7.8.0-linux-x86_64.tar.gz -C /opt/module/创建ES用户因为安全性的问题, Elasticsearch不允许在root用户下直接运行,需要创建新的用户,在新用户中运行Elasticsearch环境Linux 创建用户: useradd

2021-04-08 01:45:12 226

原创 队列 - 数组实现

队列的简介队列(Queue)是一个有序的列表,可以通过数组和链表的方式实现,队列都是遵循先进先出的原则,即FIFO。在JDK中的ArrayBlockingQueue类的底层实现就是通过数组来实现有序队列。数组实现队列的流程队列的本身是有序的列表,如果使用数组来存储队列数据,则队列声明入下图: putIndex用于标记元素插入的索引,默认初始化为0;takeIndex用于标记元素被读取的索引,默认初始化为0;我们需要将这个数组做成可以循环使用的容器。例如如下我们添加了4个元素,如下图

2021-03-31 18:26:40 407

原创 稀疏数组

稀疏数组稀疏数组简介稀疏数组的存储规则案例演示稀疏数组简介当一个二维数组中大多数的值是相同的,我们就可以使用稀疏数组进行演变。从而可以达到内存优化的效果,将存储的成本降低。但是如果一个二维数组的数据量过大的时候,复制数组的成本也将会变高。下面我们通过一张图(图一)来说明下稀疏数组:以上图片中我们看作为是一个9 * 9的二维数组,但是绝大部分数组元素为01,只有5个不同的数组元素,这时候我们就可以使用稀疏数组来保存这一组数据。稀疏数组的存储规则稀疏数组也是一个二维数组。行数不固定(虽不固定, 但

2021-03-29 11:34:50 186 3

原创 原码、反码、补码和字节

原码、反码、补码和字节计算机是如何存储数据的呢?什么是字节呢?无符号和有符号原码、反码、补码计算机是如何存储数据的呢?在我们的日常生活中,我们记录数据的方式有很多种。我们可以用文字记录发生的事件,也可以用数字记录我们日常的开销,这些我们都可以统称为"人对数据的存储"。但是在计算机的世界里是如何来对数据进行存储的呢? 跟我们人一样吗? 显然并不是。计算机是一台只懂得做运算的机器,并没人类多样化的存储技能。计算机只能识别"0"和"1",这是取决于计算机的电路组成,电路逻辑的状态只有"开"和"关"。那么

2021-03-25 18:20:30 292 2

原创 设计模式的概述与类型

设计模式概述设计模式是程序员在面对软件工程问题所总结出的经验,模式不是代码,而是某类问题的通用解决方案。设计模式代表最佳的实践。这些解决方案是众多软件研发人员经过相当长的一段时间实验和错误总结出来的设计模式本身是为了提高软件质量,通用性和扩展性,并且降低软件的复杂度设计模式的类型(1) 创建型 单例模式、抽象工厂、原型模式、建造者模式、工厂模式(2) 结构型 适配器模式、桥接...

2020-03-24 23:21:23 82

原创 设计模式七大原则之迪米特法则

什么是迪米特法则?(1) 一个对象应该对其他对象保持最少了解(2) 类与类关系越密切,耦合度越大(3) 迪米特法则(Demeter Principle)又叫最少知道原则,即一类对自己依赖的类知道越少越好。也就是说,对于被依赖的 类不管有多么复杂,都尽量将逻辑封在在自己类内部。对外除了提供public方法,不对外泄漏任何信息(4) 迪米特法则还有个更简单的定义: 只与最直接的朋友通...

2020-03-24 23:14:09 126

原创 设计模式七大原则之开闭原则

什么是开闭原则?开闭原则(Open Closed Principle), 简称OCP。是编程中最基础、最重要的设计原则一个软件实体如类,模块和函数应该对扩展开放(对提供方),对修改关闭(对使用方)。用抽象构建框架,用实现扩展细节当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化。编程中遵循其他原则,以及使用设计模式的目的目的就是遵循开闭原则为什么...

2020-03-24 22:35:55 189

原创 设计模式七大原则之里氏替换原则

先来说一说面向对象中的继承(1) 继承的含义: 父类凡是已经实现好的方法,实际上是在设定规范和契约, 虽然它不强制要求所有的子类都必须要遵守这 些契约,但是如果子类对这些已经实现的方法任意修改,那么就会对整体继承体造成破坏(2) 继承的优缺点: 继承在给程序设计带来便利的同时,也带来了弊端。比如使用继承会给程序带来入侵性,程序的可移植 性就会降低,增加对象之间的...

2020-03-24 21:12:29 111

原创 设计模式七大原则之依赖倒转

什么是依赖倒转原则?依赖倒转原则是基于这样的理念: 相对于细节的多变性, 抽象的东西要稳定的多。以抽象为基础搭建的架构比以细节为基础的架构要稳定的多。在java中, 抽象值得是接口或抽象类,细节就是具体的实现类。其核心的思想就是面向接口编程应当遵循高层模块不应该依赖底层模块, 二者都应该是依赖其抽象。抽象不应该依赖细节,细节应该依赖于抽象。为什么要设计依赖倒转原则?(1) 制定规范(...

2020-03-24 19:16:24 85

原创 设计模式七大原则之接口隔离

什么是接口隔离原则?对于类的接口依赖,客户端不应该依赖它不需要的接口,即一个类对另一个类的依赖应该建立在最小接口上为什么要设计接口隔离(1) 降低了耦合度(2) 可以达到代码"瘦身效果"案例演示 - 非接口隔离原则可以先看下方的实现图![在这里插入图片描述](https://img-blog.csdnimg.cn/20200324163851135.png?x-oss-proce...

2020-03-24 17:12:22 110

原创 设计模式七大原则之单一原则

什么是单一职责?单一职责的规定是某一个类只做一项专门的职责。对于类来说, 一个类应该只负责一项专有的职责,如果A类负责两个不同的职责: 职责1,职责2.当职责1需求变更而改变A 时,可能造成职责2执行错误,所以需要将类A的力度分解为A1,A2案例演示01 - 非单一原则public class Normal { public static void main(String[]...

2020-03-24 16:11:01 185

原创 Mybatis插入数据后返回Id

Mybatis插入数据后返回Id(1) 需要在标签中添加如下三个属性:1) useGeneratedKeys=“true” // 表示使用生成的主键2) keyProperty=“id” // 对应JAVA实体中的id属性3) keyColumn=“id” // 对应数据库中的列<insert id="insert" parameterType="xxx.xxx.xxx.dao...

2020-03-12 19:12:52 811

原创 BigDecimal正确的累加计数姿势

还在为BigDecimal累加计数为"0"而苦恼么?(1) 错误姿势, 这样会导致amount一直为 “0”BigDecimal amount = BigDecimal.ZERO;while (iterator.hasNext()) { amount.add(mallProduct.getPrice().multiply(BigDecimal.valueOf(cartFromRe...

2020-03-12 15:07:26 3141 2

原创 Mybatis中Mapper.xml遍历集合

代码案例<select id="selectProductByCategoryId" resultMap="BaseResultMap"> select id, category_id, product_name, subtitle, main_image, price, stock, product_status, create_time, update_time, sub...

2020-03-10 18:10:16 1392

原创 SpringBoot基于IDEA设置热部署

热部署设置(1) 加入Maven的相关依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true...

2020-03-09 23:43:40 67

原创 Mybatis打印SQL

以SpringBoot项目为例在application.yml配置文件中加上如下配置:mybatis:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

2020-03-09 14:56:15 81

原创 单元测试如何避免测试数据"污染"数据库?

单元测试如何避免测试数据"污染"数据库?可以在测试类上加上@Transactional注解。测试方法在执行完相关的SQL后就会自动回滚,就不会对数据库造成数据"污染"...

2020-03-09 14:45:36 1318 1

原创 Redis安装与启动

Redis安装与启动redis安装详情redis安装详情(1) 官网下载redis 进入: https://redis.io/download 手动下 或使用Linux命令: wget http://download.redis.io/releases/redis-5.0.7.tar.gz(2) 解压安装包 Linux命令: tar -zxvf redis-5.0.7.tar.gz -...

2019-12-03 17:43:01 98

原创 Redis概述

Redis概述redis是什么redis可以做什么redis的特点redis是什么redis: remote dictionary server(远程字典服务), 是一款开源免费用C语言编写的遵守BSD协议的一个高性能分布式内存数据库, 基于KV键值存储。并支持持久化的NoSQL数据库, 被人们称为数据结构服务器redis可以做什么(1) 内存存储并且可以设置持久化,支持异步将内存中...

2019-12-03 17:25:55 53

原创 CAP原理 CAP+BASE

CAP原理 CAP+BASE传统的ACID分别是什么CAP分别是什么CAP的3进2什么是CAP搭配案例BASE什么是BASE传统的ACID分别是什么(1) A : Atomicity 原子性(2) C : Consistency 一致性(3) I : Isolation 独立性(4) D : Durability 持久性CAP分别是什么(1) C : Consistency 强一致...

2019-12-03 16:20:38 161

原创 NoSQL概述

NoSQL概述什么是NoSQLNoSQL能干嘛易扩展大数据量高性能多样灵活的数据模型传统RDBMS vs NoSQLRDBMSNoSQL常用的NoSQL哪些场景下需要NoSQL当代互联网环境NoSQL的实际应用阿里巴巴中文网的商品信息存储NoSQL数据模型简介NoSQL数据库的四大分类KV键值文档型列存储图关系型什么是NoSQLNoSQL = "not only sql"泛指非关系型数据库...

2019-12-03 15:47:56 151

原创 为什么需要NoSQL

MySQL存储一些大文本的数据, 这样就导致数据库表和数据过于庞大, 在做数据查询和数据恢复的时候速度就会非常的慢。MySQL扩展性差, 操作难度较高, 在大数据量的I/O下很难更改表结构。MySQL已经无法应用到所有场景, 所以需要NoSQL来支撑我们的技术体系,...

2019-12-03 14:48:57 92

原创 maven项目由于环境问题报错:Unable to compile class for JSP

小弟初学,在学习maven的时候遇见了不少问题,希望在这里总结下一些自己遇见的问题以及解决方案,希望可以帮助到以后学习的朋友,大牛绕道,勿喷。当时在做一个简单maven项目,该项目整合了struts,每次跳转到jsp页面都会报错Unable to compile class for JSP,于是想到可能是环境问题,我按照下面图片环境来配置了下 换了servlet-api、jsp-api

2017-10-27 00:16:58 348

原创 MyEclipse中Maven build...项目控制台不输出log 没有反应

小弟初学,在学习maven的时候遇见了不少问题,希望在这里总结下一些自己遇见的问题以及解决方案,希望可以帮助到以后学习的朋友,大牛绕道,勿喷。一开始项目与都是可以通过maven build... 然后输入tomcat:run 跑起来的,后来忘记做了啥操作跑步起来了,控制台也不输出log了,总是一闪就过去了,后来也是试了各种方法,可能是自己换了当前项目的jdk版本,下面用图片给大家看下我

2017-10-26 23:59:12 3710 3

原创 卸载MyEclipse后建立Maven项目报错

小弟初学,在学习maven的时候遇见了不少问题,希望在这里总结下一些自己遇见的问题以及解决方案,希望可以帮助到以后学习的朋友,大牛绕道,勿喷。当时自己的MyEclipse出了问题于是就卸载掉重新安装了,可是谁知道坑爹的问题来了,卸载后建立maven项目报错,总是会有一个弹框弹出来:  Could not calculate build plan: Plugin org.apache.mav

2017-10-26 23:46:11 204

原创 Maven的jar包下载与settings文件的优化配置

小弟初学,在学习maven的时候遇见了不少问题,希望在这里总结下一些自己遇见的问题以及解决方案,希望可以帮助到以后学习的朋友,大牛绕道,勿喷。    问题 1: 当时接触maven时候不知道如何下载jar包        解决方案 : 在maven项目中的pom.xml文件中添加以下的标签,与build标签同一级,这里也可以很快的查找到你想要的jar包,直接把复制到你

2017-10-26 23:19:36 900

空空如也

空空如也

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

TA关注的人

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