01 2021 档案
摘要:其实项目网上有很多了,但是教程比较详细的没多少,今天分享的项目从安装部署到代码具体功能都有很详细都说明 eladmin 是一款基于 Spring Boot 2.1.0 、 Jpa、 Spring Security、redis、Vue 的前后端分离的后台管理系统,项目采用分模块开发方式, 权限控制采用
阅读全文
摘要:Erupt 可快速的构建管理页面,零前端代码、零CURD、自动建表,仅需单个类文件 + 简洁的注解配置,即可快速开发企业级Admin管理后台! 后台管理系统非常重要,但开发存在一定的痛点,如:开发效率低、界面不美观、交互不理想、工作量重复、存在安全漏洞、后端研发被迫写前端代码等。我是程序汪 Erup
阅读全文
摘要:学技术的,多多少少都仿过出名的产品。 一来,可以练练手,二来对知识点能查漏补缺。欢迎关注Java项目分享 更重要的一点是能给你带来及时的正反馈,让学习的过程不那么枯燥。 今天给大家介绍 GIthub 上几个仿造大厂的 app 项目。我是程序汪 *高仿微信* ▼ iOS 版: Github 地址:ht
阅读全文
摘要:Web 开发中几乎所有平台都需要一个后台管理,但是从零开发一套后台控制面板并不容易,幸运的是有很多开源免费的后台控制面板可以给开发者使用,那么有哪些优秀的开源免费的控制面板呢?我在 Github 上收集了一些优秀的后台控制面板,并总结得出 Top 10。 1. AdminLTE Github Sta
阅读全文
摘要:1 了解工作 博客中用的笔记软件——Typora(Markdown语法) 博客中用的图床——阿里云对象存储(Object Storage Service,简称OSS) 图床平台介绍 七牛云 七牛云, 很多大佬也是推荐,注册认证后有10G永久免费空间,每月10G国内和10G国外流量,速度相当快,插件支
阅读全文
摘要:1.1 数据库对比 缓存: 将数据存储到内存中,只有当磁盘胜任不了的时候,才会启用缓存 缺点:断电数据丢失(双电),用缓存存储数据的目的只是为了应付大并发的业务。 数据库: mysql(关系型数据库,能够保证数据一致性,保证数据不丢失,当因为功能太多,导致性能不高) 数据参考 缓存数据库: memc
阅读全文
摘要:站点版 (一)、企业站 搜狐:http://mirrors.sohu.com/ 网易:http://mirrors.163.com/ 阿里云:http://mirrors.aliyun.com/ 腾讯:http://android-mirror.bugly.qq.com:8080/(仅针对APP开发
阅读全文
摘要:我们知道微服务是一种理念,没有确切的定义和边界,好比设计原则,是属于抽象的概念。在定义不明确的情况下谈划分也是一种各说各话,具体问题需要具体分析,所以这篇文章谈到的划分也不是绝对标准,仅供参考。 有人说微幅不难,难的是服务的划分,虽然我持保留意见。但是从侧面也反应了划分具有一定的困难。这里的矛盾在于
阅读全文
摘要:为什么选择微服务? 虽然刘老师的说辞有点举重若轻,说的是因为执着和技术人的专研精神选择了微服务,甚至也对比和调研过,但是在只有四个人的团队里,连一张披萨都没有凑齐的前提下就“冒然”选型,显然不能让我信服。可能是刘大佬有比较充分的调研和把握,或者说有一定的技术自信。否则换成我,我是无论如何不敢带着四个
阅读全文
摘要:很多做软件开发同学的梦想都是成为一名架构师,而架构师的核心工作就是做好软件设计。软件设计是软件开发过程中的一个重要环节,那么如何进行软件设计,其输出标准又是什么呢?软件设计过程中,如何和各个相关方沟通,使软件设计能同时满足用户的功能需求和非功能需求,并降低公司的开发成本? 前期思考 很多软件开发同学
阅读全文
摘要:代码如熵,不加外力很容易就会随着代码的不断堆积而发生腐烂和溃败。我们不是不知道代码问题,而是对既成事实难有改变。但是如果站在迭代的角度思考下一次升级,如何确保新的代码质量就显得很有必要,特别是你的代码需要重写的时候,我想你一定会遇到和我一样的问题,我们究竟应该如何保证我们的代码的质量?于是就有了这篇
阅读全文
摘要:这篇文章会从更高的形而上的角度来审视自己的学习。其中的思想来源比较复杂,主要是受了老子、王东岳、李善长、古典文学和计算机科学等的影响,不知其所踪。 学什么? 抽象模型 庄子说过吾生有崖,知无涯。以有限的生命去学习无尽的知识是很愚蠢的。所以,学习的终极目标一定不是知识本身,因为知识是表象的、不稳定、会
阅读全文
摘要:在分布式系统中著有 CAP 理论,该理论由加州大学伯克利分校的 Eric Brewer 教授提出,阐述了在一个分布式系统中不可能同时满足 一致性(Consistency)、可用性(Availability),以及 分区容错性(Partition tolerance)。 C:一致性 在分布式系统中数据
阅读全文
摘要:领域驱动实践总结三:具体应用设计分析 领域驱动设计DDD是一种设计思想,它可以同时指导中台业务建模和微服务设计(中台本质是业务模型,微服务是业务模型的系统落地),领域驱动设计强调领域模型和微服务设计的一体性,先有领域模型然后才有微服务,而不是脱离领域模型来谈微服务设计。 微服务拆分困境产生的根本原因
阅读全文
摘要:今天遇到一个奇怪的Java三元表达式中的空指针异常。特此记录。 代码 代码示意如下: Integer itemVO = null; Integer globleLatenessToleranceUseAlternate = null; Integer latenessToleranceUseAlte
阅读全文
摘要:正常情况下,在Java中入参是不建议用做返回值的。除了造成代码不易理解、语义不清等问题外,可能还埋下了陷阱等你入坑。 问题背景 比如有这么一段代码: @Named public class AService { private SupplyAssignment localSupply = new S
阅读全文
摘要:IntelliJ IDEA一个吸引人的地方在于,他有比较好的反编译工具,这让Eclipse用户牙痒痒。但不要紧,本文介绍如何在Eclipse IDE中使用IntelliJ IDEA的反编译工具Fernflower。 为啥需要反编译 很多jar不提供源码,那么打开class是这个鸟样。 不具备人类可读
阅读全文
摘要:本文通过探析JDK提供的,在开源项目中比较常用的Java SPI机制,希望给大家在实际开发实践、学习开源项目提供参考。 1 SPI是什么 SPI全称Service Provider Interface,是Java提供的一套用来被第三方实现或者扩展的API,它可以用来启用框架扩展和替换组件。 整体机制
阅读全文
摘要:于elasticsearch的深度好文。 生活中的数据 搜索引擎是对数据的检索,所以我们先从生活中的数据说起。我们生活中的数据总体分为两种: 结构化数据 非结构化数据 **结构化数据:**也称作行数据,是由二维表结构来逻辑表达和实现的数据,严格地遵循数据格式与长度规范,主要通过关系型数据库进行存储和
阅读全文
摘要:1. 背景 1.1. 话题来源 最近很多从事移动互联网和物联网开发的同学给我发邮件或者微博私信我,咨询推送服务相关的问题。问题五花八门,在帮助大家答疑解惑的过程中,我也对问题进行了总结,大概可以归纳为如下几类: Netty 是否可以做推送服务器? 如果使用 Netty 开发推送服务,一个服务器最多可
阅读全文
摘要:前言 前段时间,有读者希望我写一篇关于 IP 分类地址、子网划分等的文章,他反馈常常混淆,摸不着头脑。 那么,说来就来!而且要盘就盘全一点,顺便挑战下小林的图解功力,所以就来个 IP 基础知识全家桶。 吃完这个 IP 基础知识全家桶全家桶,包你撑着肚子喊出:“真香!” 不多说,直接上菜,共分为三道菜
阅读全文
摘要:搞清楚AQS独占锁的实现原理之后,再看共享锁的实现原理就会轻松很多。两种锁模式之间很多通用的地方本文只会简单说明一下,就不在赘述了 一、执行过程概述 获取锁的过程: 当线程调用acquireShared()申请获取锁资源时,如果成功,则进入临界区。 当获取锁失败时,则创建一个共享类型的节点并进入一个
阅读全文
摘要:redis作为目前最流行的nosql缓存数据库,凭借其优异的性能、丰富的数据结构已成为大部分场景下首选的缓存工具。 由于redis是一个纯内存的数据库,在存放大量数据时,内存的占用将会非常可观。那么在一些场景下,通过选用合适的数据结构来存储,可以大幅减少内存的占用,甚至于可以减少80%-99%的内存
阅读全文
摘要:一、读写锁简介 现实中有这样一种场景:对共享资源有读和写的操作,且写操作没有读操作那么频繁。在没有写操作的时候,多个线程同时读一个资源没有任何问题,所以应该允许多个线程同时读取共享资源;但是如果一个线程想去写这些共享资源,就不应该允许其他线程对该资源进行读和写的操作了。 针对这种场景,JAVA的并发
阅读全文
摘要:本文主要包括以下内容: 优化目标与策略(Ergonomics) 垃圾收集器实现(Garbage Collector Implementation) 影响垃圾收集性能的因素 总堆(Total Heap) 年轻代 可用的收集器(Available Collectors) 串行收集器(Serial Col
阅读全文