自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MOKE_SPACE

Java学习记录与笔记分享。个人小站:https://mokespace.cn/

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

原创 SpringCloud(1)--入门、版本、环境搭建

SpringCloud 入门文章目录SpringCloud 入门版本的选择部分组件停用环境搭建父工程创建支付模块创建Module业务类订单模块创建Module业务类重构系列链接:…版本的选择查看SpringCloud和SpringBoot之间版本的依赖关系:https://spring.io/projects/spring-cloud#overviewhttps://start.spring.io/actuator/info,返回详细json信息部分组件停用首先连接下各个组件:

2020-07-08 17:00:34 6099 5

原创 在校期间的 Java 学习路线

最近老有人问我,关于在校期间 Java 相关的学习路线,以及校招相关的东西,这里开篇博客说一哈。吐血整理,引用资源皆为网络资源。与其说学习路线,不如说是学习方法。没人我也莫得办法。注:以下只是本人的学习过程以及补充,如果有大佬有修改意见,可以评论或私信交流。本人主要学习的是 Java 后端开发的相关技术。首先,针对校招,先来几个干货:JavaGuide:Java学习+面试指南...

2020-02-27 14:03:36 5221 1

原创 Spring Boot 入门(配置、原理、日志)

之前只在项目中使用,这里还是再总结一下,分为几个部分:文章目录SpringBoot 入门概述环境配置SpringBootApplication 注解SpringBoot 入门概述Spring Boot 简化了 Spring 应用开发:由原来的 Spring 全家桶简化成 SpringBoot 的 J2EE一站式解决方案以及后来的 Spring Cloud 分布式整体解决方案。优...

2019-10-03 16:35:49 11253 1

原创 Java基础学习笔记(完整版)

弱弱的大学党也想学一下写写博客,记录下自己的学习足迹。 虽然也许记录的东西都很浅显,但也希望有人能撇到我的博客,揪揪我笔记的错误或者补充下我没有注意到的知识点。 注:第一次写,排版可能比较辣眼睛,还望多多包涵。 / /大概也许估计也没人会看ಥ_ಥ 目前情况 暂定学习路线: 基础√-接口√-常用类√-GUI√-异常处理√-集合框架√-IO流–HTML-CSS-JavaScrip...

2018-05-12 15:46:15 3941 5

原创 关于 Spring 中事务方法的调用

前言Spring 提供了事务的管理机制,我们只需要在方法或者类上加上 @Transactional 注解进行事务管理。而非事务方法与事务方法之间相互调用,有时会使事务失效,本文是对该情形下的事务总结。什么是事务传播机制事务在多个方法的调用中是如何传递的,是重新创建事务还是使用父方法的事务?父方法的回滚对子方法的事务是否有影响?这些都是可以通过事务传播机制来决定的。Spring 中定义了7中事务传播机制:PROPAGATION_REQUIRED支持当前事务,如果当前没有事务,就新建一个事务。P

2020-11-02 19:36:19 1789

原创 Oracle与MySQL的学习

文章目录前言用户与存储区别字段数据类型区别其他区别EXPLANIN 执行计划分区前言已经入职几个月的时间了,不同于平常学习使用的 MySQL,公司内使用的是 Oracle 数据库。针对以前 MySQL 的学习笔记,这里主要总结下 Oracle 数据库,以及其与 MySQL 的一些区别。用户与存储区别mysql:对数据的管理可以有很多个用户,登录用户后可以看到该用户权限下的所有的数据库一般来讲都是一个项目对应着一个数据库,该数据库下存放着所有该项目所要用到的表,视图等东西查看所有的数据库命

2020-10-17 15:44:56 2020 4

原创 Spring 五种常见的异常处理方式

异常处理能够给Controller加切面的机制都能变相的进行统一异常处理,比如之前通过 AOP 实现的全局统一的异常处理:Spring aop 统一异常处理和日志输出。这里总结一下,其他常用的异常处理方式。接下来主要介绍五种处理异常的方式:HandlerExceptionResolver@ControllerAdvice 与 @ExceptionHandlerResponseEntityExceptionHandlerResponseStatusExceptionErrorControll

2020-07-26 15:21:29 1747

原创 Swagger(配置、使用、注解)

SwaggerSwagger是全球最大的开源API规范(OAS)API开发工具框架,支持从设计和文档到测试和部署的整个API生命周期的开发。Swagger2是2.x版本,目前已经到了3.x,使用的主要区别是引入的依赖SpringBoot整合引入依赖 <!-- swagger2 --> <dependency> <groupId>io.springfox</groupId>

2020-07-26 11:54:01 498

原创 SpringBoot 数据校验(普通校验、分组校验)

文章目录概述普通校验概述Spring Validation 验证框架与 javax 都提供了对数据的校验功能,一个是 @Validated(JSR-303变种),一个是 @Valid(标准JSR-303)。普通校验添加validation依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-b

2020-07-25 19:24:16 1972

原创 Git总结

文章目录GitGit与SVN的区别相关配置基本理论项目搭建免密登录IDEA 使用 Git分支操作参考:地址Git之前总结了集中式版本控制工具:SVN,这次总结一下 Git 相关的使用。Git与SVN的区别集中版本控制 SVN所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改:分布式版本控制 Git所有版本信息仓库全部同步到本地的每个用户,可以在本地查看所有版本历史,也可以离线在本地提交:区别SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而工

2020-07-19 14:28:20 243

原创 SpringCloud(5)--服务网关(GateWay)

文章目录服务网关GateWay工作原理GateWay的使用动态路由Pridicate断言Filter过滤器系列链接:GitHub:源码SpringCloud(1)–入门、版本、环境搭建SpringCloud(2)–服务注册与发现(Eureka、Zookeeper、Consul)SpringCloud(3)–服务调用(Ribbon、OpenFeign)SpringCloud(4)–服务降级(Hystrix、降级、熔断、监控)…服务网关基本架构如下:GateWayGateway 是

2020-07-14 18:16:41 1176

原创 SpringCloud(4)--服务降级(Hystrix、降级、熔断、监控)

文章目录服务降级Hystrix服务降级创建带降级机制的pay模块创建带降级的order模块配置服务降级修改pay模块修改order模块重复代码的问题代码耦合度的问题服务熔断继续修改pay模块总结补充Hystrix所有可配置的属性熔断整体流程服务监控HystrixDashboard系列链接:GitHub:源码SpringCloud(1)–入门、版本、环境搭建SpringCloud(2)–服务注册与发现(Eureka、Zookeeper、Consul)SpringCloud(3)–服务调用(Ribb

2020-07-13 17:06:31 3277 2

原创 SpringCloud(3)--服务调用(Ribbon、OpenFeign)

文章目录服务调用RibbonRibbon的使用Ribbon常用负载均衡算法修改Order模块自定义负载均衡算法OpenFeignOpenFeign的使用OpenFeign超时机制OpenFeign日志系列链接:GitHub:源码SpringCloud(1)–入门、版本、环境搭建SpringCloud(2)–服务注册与发现(Eureka、Zookeeper、Consul)…服务调用RibbonSpring Cloud Ribbon 是基于 Netflix Ribbon 实现的一套客户端,

2020-07-11 17:25:05 1490 1

原创 SpringCloud(2)--服务注册与发现(Eureka、Zookeeper、Consul)

文章目录服务注册中心Eureka单机版eureka创建Module其他服务注册到eureka集群版eureka集群原理![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9ody5tb2tlc3BhY2UuY24vaW1hZ2VzLzIwMjAvMDcvMDcvOGM0YzAxMGIxMTM0ZTY0MzVkMWRhNjUxNjhiYzI3YjYucG5n?x-oss-process=image/format,png)构建新erueka项目其他服务注册到

2020-07-10 17:56:14 4117 3

原创 devtools工具配置

作用在我们的开发过程中,每次修改代码就需要将项目重启,重新部署,对于一些大型应用来说需要花费大量的时间成本。所以可以使用热部署的方式,来自动重新加载修改过后的文件,一般可以使用 devtools 工具。POM依赖 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId&

2020-07-05 16:34:43 733

原创 从零开始大数据--Hadoop、HDFS、MapReduce、HBase、Hive

文章目录概述HadoopHDFSHBase实现原理Regin服务器原理HBase安装与使用NoSQL数据库MapReduceHive概述IT领域每隔十五年就会迎来一次重大变革:1980:个人计算机1995:互联网2010:物联网、云计算和大数据信息科技为大数据时代提供技术支撑:存储设备容量不断增加CPU处理能力大幅提升网络带宽不断增加大数据是由结构化和非结构化数据组成的10%的结构化数据,存储在数据库中90%的非结构化数据,它们与人类信息密切相关大数据技术的不同层面

2020-05-21 15:58:07 2986

原创 从零开始SVN(2)--Eclipse、Subclipse、分支开发

Eclipse使用 SVN 插件插件的选择、安装Eclipse 可以使用的 SVN 插件在市面上主要有两种:Subversive:Eclipse 团队开发的插件Subclipse:Apache 的 SVN 团队开发的插件。博主试过了,2020-3 版的 Eclipse 没有可以用的 Subversive 版本,所以在这里选择安装 Subclipse。Subclipse 的安装在 Eclipse 中的应用市场安装:搜索 Subclipse 并安装,一路默认 next,最后重启 E

2020-05-16 19:05:08 2123

原创 从零开始SVN(1)--服务端与命令行操作

概述在团队开发的过程中,通常有如下需求:协同修改、数据备份、版本管理、权限控制、历史记录等,因此有了版本控制的思想。版本控制指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一。版本控制工具对版本控制思想的具体实现,版本控制工具可以分为集中式、分布式两种。集中式:CVS、SVN、VSS···分布式:GIT由于将入职的公司使用 SVN 较多,所以在这具体地学习一下。SVNSVN 全称 Subversion,采用 C/S 结构设计,常用的操作如

2020-05-15 16:14:25 3738 1

原创 轻松入门微信小程序开发

文章目录

2020-01-21 16:39:23 518

原创 ElasticSearch 入门与整合

文章目录概述概述之前我们学过 Solr,而 Elasticsearch 与 solr 相比:solr优点solr有一个更大、更成熟的用户、开发和贡献者社区支持添加多种格式的索引,如:HTML、PDF、微软 Office 系列软件格式以及 JSON、XML、CSV 等纯文本格式Solr比较成熟、稳定不考虑建索引的同时进行搜索,速度更快缺点建立索引时,搜索效率下降,实时索引搜索...

2019-12-21 21:30:21 1397

原创 SpringBoot 与消息队列并整合 RabbitMQ

文章目录消息队列补充RabbitMQ 补充整合 RabbitMQ消息队列补充补充:消息队列概念和使用场景大多数应用中,可以通过消息服务中间件来提升系统异步通信、扩展解耦能力。而消息服务中两个重要的概念:消息代理目的地当消息发送者发送消息以后,将由消息代理接管,消息代理保证消息传递到指定目的地。消息队列主要有两种形式的目的地:队列(queue):点对点消息通信。一个消息只...

2019-12-16 16:23:20 533

原创 SpringBoot 与缓存并整合 Redis

文章目录缓存消息队列缓存消息队列

2019-12-05 17:49:02 539

原创 SpringBoot 数据访问、启动配置原理以及自定义Starter

文章目录JDBCMyBatisSpring Data JPAJDBCMyBatisSpring Data JPA

2019-11-07 18:05:34 1149

原创 J.U.C并发包梳理与补充

文章目录原子操作类 atomic并发集合 collectionsCopyOnWriteBlockingQueue并发工具类 tools线程执行器 Executor锁 locks在不同的地方学习了许多和并发相关的工具或者类并总结在了不同的博文中,这里做一个总的关系梳理并进行相关的补充,首先来看下 J.U.C 包下的分类:主要分为如下几个部分:线程执行器 executor 及其线程池实现类...

2019-10-10 15:11:09 584

原创 Spring Boot中的Thymeleaf、自动配置、国际化、容器

SpringBoot 系列:1.Spring Boot 入门文章目录SpringBoot 开发 WebThymeleafweb 定制容器定制SpringBoot 开发 Web在 Spring Boot 入门 中,我们知道了:如何根据我们需要的模块创建一个 Spring Boot 应用自动配置的原理SpringBoot对静态资源的映射规则:以 jar 包的方式引入静态资源,...

2019-10-06 17:01:57 2036

转载 JVM常用参数

常用参数Xms:初始堆内存Xmx:最大堆内存Xmn:新生代大小Xss:每个线程栈大小XX:MaxPermSize:永久代大小XX:NewRatio 默认为2 ,老年代为新生代的2倍XX:SurvivorRatio 默认为8 ,eden:survivor=8XX:PretenureSizeThreshold=3145728 超过阈值大小的新对象直接分配进入老年代XX:MaxTen...

2019-09-22 14:47:08 168

原创 Java 中线程池的原理与源码浅析

在 并发编程 中,我们只介绍了几种常用的线程池,以及它们的使用,那线程池是如何管理一组线程的呢?介绍先来看下关系图:图片来源网络从图中我们可以看出,之前我们学习的几个常用的线程池 CachedThreadPool、FiedThreadPool 等都是通过 Executors 调用创建的: ExecutorService pool = Executors.newCachedThreadP...

2019-09-22 13:56:29 738

原创 Spring security 总结

在之前的一个项目中有使用到,方便以后项目框架的搭建,这里还是再总结一下。文章目录Spring Security 的认证流程Spring 中整合 Spring securitySpring Security 的认证流程用户发出登录请求。首先经过 SecurityContextPersistenceFilter 过滤器,将 Session 中的认证信息保存到 SecurityCon...

2019-09-17 22:32:39 516

原创 Spring源码分析之从refresh方法分析Spring的IoC原理

我们先来看看 refresh() 的官方描述: public void refresh() throws BeansException, IllegalStateException { synchronized(this.startupShutdownMonitor) { this.prepareRefresh(); Con...

2019-09-14 14:36:04 3063 1

原创 正则表达式与DFA、NFA

前天笔试遇到,这里学习一下。概述正则表达式的规则很容易理解,有穷状态自动机是一种计算机程序的模型,可以用来转化解析正则表达式。有穷状态自动机 包含一个有限状态的集合,还包含了从一个状态到另外一个状态的转换。而有穷状态自动机又可以分为确定的(DFA)、不确定的(NFA)确定的有穷自动机就是说当一个状态面对一个输入符号的时候,它所转换到的是一个唯一确定的状态;不确定的有穷自动机是说当一个...

2019-09-13 12:00:27 1631

转载 linux最常用的命令

最近笔试发现有些命令的概念与作用不是很清楚,这里借鉴一下前辈们的总结,也方便以后使用查询。命令cdlsgrepfindcpmvrmpskillkillallfiletarcatchgrpchownchmodtopgcctimecd 命令这个不用多说,是一个非常基本的命令,用于切换当前目录,可以是绝对路...

2019-09-10 16:27:22 225

转载 JVM垃圾收集器

内存区域:地址垃圾回收算法:地址文章目录概述SerialParNewParallel ScavengeSerial OldParallel OldCMS(Concurrent Mark Sweep)G1收集器概述垃圾收集算法是垃圾回收的方法论, 垃圾回收器则是垃圾回收的具体实现。各个厂商差异较大, 这里只讨论常用的HotSpot虚拟机。HotSpot垃圾收集器可搭配使用的关系图。...

2019-09-08 10:35:05 184

原创 MySQL 的存储过程和存储函数

文章目录存储过程例子其他操作存储函数存储过程SQL语句需要先编译然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。存储过程是可编程的函数,在数据库中创建并保存,可以由SQL语句和控制结构组成。当想要在不同的应用程序或平台上执行相同的函数,或者封装特...

2019-09-06 21:34:00 436

原创 操作系统--内存扩充、分配与回收、虚拟内存、页面置换

文章目录内存概述进程运行的基本原理内存管理内存空间的扩充内存空间的分配与回收动态分区分配算法内存概述什么是内存:内存是用于存放数据的硬件,程序执行前需要先放到内存中才能被CPU处理。存储单元将内存分为一个一个的小区间,每个区间就是一个存储单元。内存地址给内存的存储单元编地址,有两种:按字节编址:每个存储单元的大小为1字节(8位)按字编址:字长为16位的计算机,每个存储单元的大...

2019-09-05 12:44:44 3299

原创 再见 Redis

此再见非彼再见,在之前的一篇文章中,学习了 Redis 的安装和基本的使用,在边实习边学习的过程中,加深了对其的理解,所以在这里总结一哈。文章目录回顾 Redis键 Key 的管理StringHashJava 操作 RedisList回顾 RedisRedis 支持五种的数据类型:String(字符串)、Hash(哈希)、List(列表)、Set(集合)及 ZSet(sorted set...

2019-08-25 13:16:13 551

原创 实现生产者-消费者模式的五种方式

在学习完 RabbitMQ 后,才明白为什么那么喜欢问生产者-消费者问题,因为在很多开发领域都能派上用场。在 Java基础 以及 操作系统 都有接触,但还是要在这里再总结一下。synchronized、wait()、notify()wait():当缓冲区已满/空时,生产者/消费者线程停止自己的执行,放弃锁,使自己处于等待状态,让其他线程执行。notify():当生产者/消费者向缓冲区放...

2019-08-23 14:58:49 2362

原创 RabbitMQ 入门与应用

文章目录RabbitMQ 概述RabbitMQ 的后台操作Java 连接 RabbitMQ简单队列工作队列轮询分发公平分发订阅者模式RabbitMQ 概述消息队列:地址几种消息队列的区别:安装1.RabbitMQ 依赖 erlang,所以先安装 erlang 环境,配置环境变量:2.在 RabbitMQ 目录下,执行命令rabbitmq-plugins enable rab...

2019-08-21 15:44:58 1012

转载 消息队列概念和使用场景

消息即是信息的载体。为了让消息发送者和消息接收者都能够明白消息所承载的信息(消息发送者需要知道如何构造消息;消息接收者需要知道如何解析消息),它们就需要按照一种统一的格式描述消息,这种统一的格式称之为消息协议。所以,有效的消息一定具有某一种格式;而没有格式的消息是没有意义的。而消息从发送者到接收者的方式也有两种。一种我们可以称为即时消息通讯,也就是说消息从一端发出后(消息发送者)立即就可以达到另...

2019-08-20 15:13:03 610

原创 MYSQL 的 MVCC 机制

文章目录MVCC 概念MVCC 的原理版本链和 ReadViewMVCC 概念Multi-Version Concurrency Control,即多版本并发控制当前读当前读即加锁读,读取记录的最新版本号,会加锁(排他锁)保证其他并发事物不能修改当前记录,直至释放锁。插入/更新/删除操作默认使用当前读,显示的为select语句加lock in share mode或for update的...

2019-08-20 15:06:10 588

原创 Java 实现附近视频功能

在实习的项目中,获取视频列表时,需要实现一个按照附近视频获取列表的接口,通过爬文,一般有如下三种解决方法:上传视频时,保存地点的经、纬度到数据库,根据用户位置计算边界值,数据库进行范围索引查询。通过 geohash 算法将经纬度转换成一个字符串,保存到数据库,用户位置也转换成字符串,然后进行模糊查询。使用能保存地理位置信息的数据库,如:mongodb、sqlserver、mysql5.7+...

2019-08-08 18:01:28 652

空空如也

空空如也

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

TA关注的人

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