mall整合Swagger-UI实现在线API文档
本文主要讲解mall是如何通过整合Swagger-UI来实现一份相当完善的在线API文档的。 mall项目全套学习教程连载中,关注公众号第一时间获取。
mall整合SpringBoot+MyBatis搭建基本骨架
本文主要讲解mall整合SpringBoot+MyBatis搭建基本骨架,以商品品牌为例实现基本的CRUD操作及通过PageHelper实现分页查询。 mall项目全套学习教程连载中,关注公众号第一时间获取。
mall学习所需知识点
由于mall项目涉及到很多知识点,比如SpringBoot、ElasticSearch、Redis、Mongodb等,本教程不会详细讲述这些,只会讲述本项目相关部分,所以推荐以下资料。对其中一些知识点并不熟悉的同学,可以看下下面推荐的资料。 mall项目全套学习教程连载中,关注…
在 Android 上使用协程(三) :Real Work
这里是关于在 Android 上使用协程的一系列文章。本篇文章将着重于介绍使用协程来解决实际问题。 系列前两篇文章着重于介绍协程如何简化代码,在 Android 上提供主线程安全,避免泄露任务。以此为背景,对于在 Android 中处理后台任务和简化回调代码,这都是一个很好的解…
mall架构及功能概览
mall项目是一套电商系统,包括前台商城系统及后台管理系统,基于SpringBoot+MyBatis实现。 前台商城系统包含首页门户、商品推荐、商品搜索、商品展示、购物车、订单流程、会员中心、客户服务、帮助中心等模块。 后台管理系统包含商品管理、订单管理、会员管理、促销管理、运…
在 Android 上使用协程(二):Getting started
这是关于在 Android 中使用协程的一系列文章。本篇的重点是开始任务以及追踪已经开始的任务。 在上篇文章中,我们探索了协程擅长解决的问题。通常,协程对于下面两个常见的编程问题来说都是不错的解决方案: 为了解决这些问题,协程基于基础函数添加了 suspend 和 resume…
在 Android 上使用协程(一):Getting The Background
这是关于在 Android 中使用协程的一系列文章。本篇让我们先来看看协程是如何工作的以及它解决了什么问题。 Kotlin 的 Coroutines (协程) 带来了一种新的并发方式,在 Android 上,它可以用来简化异步代码。尽管 Kotlin 1.3 才带来稳定版的协程…
Android 逆向笔记 —— ARSC 文件格式解析
我们在解压缩 APK 文件之后,会看到一个叫做 resources.arsc 的文件,它的格式称之为 ARSC 文件格式 。那么它的作用是什么呢?大家对 R 文件肯定都十分熟悉,它存储了资源的 ID。在打包过程中,但凡使用到资源的地方都是使用这个 ID 来代替的。ARSC 文件…
Android 逆向笔记 —— 一个简单 CrackMe 的逆向总结
无意中在看雪看到一个简单的 CrackMe 应用,正好就着这个例子总结一下逆向过程中基本的常用工具的使用,和一些简单的常用套路。感兴趣的同学可以照着尝试操作一下,过程还是很简单的。APK 我已上传至 Github,下载地址。 要求就是通过注册。爆破的方法很多,大致可以归为三类,…
Android逆向笔记 —— DEX 文件格式解析
DEX 文件结构思维导图及解析源码见文末。 系列第一篇文章就分析过 Class 文件格式,我们都知道 .java 源文件经过编译器编译会生成 JVM 可识别的 .class 文件。在 Android 中,不管是 Dalvik 还是 Art,和 JVM 的区别还是很大的。Andr…
什么是单点登录(SSO)
在前阵子有个读者来我这投稿,是使用JWT实现单点登录的(但是文章中并没有介绍什么是单点登录),所以我觉得是时候来整理一下了。 单点登录的英文名叫做:Single Sign On(简称SSO)。 在初学/以前的时候,一般我们就单系统,所有的功能都在同一个系统上。 后来,我们为了合…
走进 JDK 之 PriorityQueue
这是 Java 集合框架的第三篇文章了,前两篇分别解析了 ArrayList 和 LinkedList,它们分别是基于动态数组和链表来实现的。今天来说说 Java 中的优先级队列 PriorityQueue,它是基于堆实现的,后面也会介绍堆的相关概念。 PriorityQueu…
走进 JDK 之 LinkedList
如果你了解链表的基本结构的话,LinkedList 的源码其实还是比较容易理解的。LinkedList 是基于双向链表实现的,与 ArrayList 不同的是,它在内存中不占用连续的内存空间,相连元素之间通过 “链” 来链接。对于单链表,每个节点有一个 后继指针 指向下一个节点…
早恋与加密第一回: 古典加密
近日听到坊间传闻,儿子早恋了,给小姐姐塞 “情书” 被班主任当场截获。儿子却不以为然,理直气壮的反驳:“现在凡事都得讲究证据,老师您不能污蔑我!这根本不是情书呀!” 。无奈之下,老师把情书转交给老父亲我,叫我自己处理。 老父亲我是一位程序员,打开 “情书” 一看,好家伙。果然是…
走进 JDK 之 ArrayList(二)
上篇文章 走进 JDK 之 ArrayList(一) 简单分析了 ArrayList 的源码,文末留下了一个问题,modCount 是干啥用的?下面我们通过一个小例子来引出今天的内容。 报错位置是 ArrayList 的内部类 Itr 中的 checkForComodifica…
走进 JDK 之 ArrayList(一)
这篇本来是准备写 Java 集合框架概述 的,就是写起来效果不怎么样,可能是对整个 Java 集合框架还没有做到了然于心。所以还是先来源码分析,写完所有集合类的分析之后,再来总体概述。今天就从最最常用的 ArrayList 说起。 ArrayList 是一种可以动态增长和缩减的…
可以提高程序员效率的工具!
后来去到公司,换了Mac。MarkdownPad2在Mac平台是不支持的,所以我只能去找别的Markdown编辑器了。也体验了几款Markdown编辑器,还是觉得没有MarkdownPad2用得顺手(所以在刚换的上Mac的时候,会把我的Windows打开来写文章...haha)…
方舟编译器最新技术细节
今天的 华为有技术·EMUI媒体沙龙 中,华为消费者BG软件部总裁王成录博士和大家分享了华为黑科技背后的故事,其中透露了关于方舟编译器的更多细节。作为一名 Android 开发,我也一直关注着方舟的最新动态。在方舟发布的第一时间,我也写了一篇相关的文章 说说方舟编译器,对方舟和…
什么是TensorBoard?
首先来讲讲TensorBoard是什么吧,我当时是在官方文档里学习的,官网也放出了介绍TensorBoard的视频。我在b站搜了一把,发现也有,大家可以先去看看视频了解一下(其实已经说得很好了): 因为我们编写出来的TensorFlow程序,建好一个神经网络,其实我们也不知道神…
钻钻 “单例” 的牛角尖
上篇文章 走进 JDK 之 Enum 提到过,枚举很适合用来实现单例模式。实际上,在 Effective Java 中也提到过(果然英雄所见略同): 首先什么是单例?就一条基本原则,单例对象的类只会被初始化一次。在 Java 中,我们可以说在 JVM 中只存在该类的唯一一个对象…