保存成功
订阅成功
保存失败,请重试
提交成功
最新热门免费
严选

漫画讲解 git rebase VS git merge

关于 `git rebase` ,首先要理解的是它解决了和 `git merge` 同样的问题。这两个命令都旨在将更改从一个分支合并到另一个分支,但二者的合并方式却有很大的不同。 当你在专用分支上开发新 feature 时,然后另一个团队成员在 `master` 分支提交了新的 commit,这会发生什么?这会导致分叉的历史记录,这个问题对使用 Git 作为协作工具的任何人来说都应该很熟悉,那么该如何解决呢,这就是本文要讲解的内容。 Chat 内容: 1. 分析代码冲突的原因,并通过漫画的形式举例讲解。 2. git merge 合并分支代码, 3. git rebase 合并分支代码,并通过漫画的形式举例讲解 4. git merge 对比 git rabase 该如何选择? 5. 加餐学习:git stash 解决线上代码冲突
莫小钱莫小钱 · 研发工程师
7 订阅

多线程 Python 爬虫+可视化,手把手教你使用多线程爬取瓜子二手车并且可视化展示

当你看到别人使用 Python 网络爬虫做出一些高大上的项目你是否也有那么一点点的心动?羡慕别人用几行简单的代码就能获取到自己想要的数据?羡慕别人用几行代码就能做出优美的可视化图案?如果你对爬虫可视化充满兴趣,那你一定不要错过本场 Chat。 本场 Chat 我将使用最新 Python 3.9 为大家抓取瓜子二手车 5000+ 车辆并使用 Openpyxl 存入 Excel,然后做可视化分析。通过这样一个简单的案例你将学到: 1. 最新 Python 3.9 环境安装配置; 2. Xpath 快速爬取数据; 3. 二级页面数据的获取; 4. 调用 Openpyxl 对 Excel 数据进行读写处理; 5. Pandas 对数据数据处理(清洗、筛选、过滤等); 6. 使用 Pyecharts 对处理后的数据进行直方图、折线图、饼图以及漏斗图的使用 7. 熟悉爬虫多线程生产者消费者模块。
酷头酷头 · Python工程师
10 订阅

MyBatis-Plus 从入门到精通

MyBatis-Plus 是一套简化 MyBatis开发的插件。在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 在本场 Chat 中将会看到如下内容: 1. 什么是 MyBatis-Plus 2. MyBatis-Plus Hello World 3. MyBatis-Plus 核心功能 4. MyBatis-Plus 扩展 5. MyBatis-Plus 插件 6. 总结
小小小小 · 阿里云社区认证专家
7 订阅

Spring Boot 小白入门

Spring Boot 现在基本成了 Java 开发的必备技能,随着微服务,云原生这些技术的逐渐成熟,Spring Boot 开发对 Java 程序员来说成了一定要学习的框架之一。 在本场 Chat 中,作者将基于一个小小的例子,引出 Spring Boot 的相关基础,并将这些基础全部融入开局的例子中。让大家不但可以快速了解这些基础知识,并且可以做简单使用。 包括的基础知识包含但不限于: 1. 基于 Maven 构建 Spring Boot 项目; 2. 引入 Web 依赖开发对外接口; 3. 了解目前基本的开发模式(前后端分离 or 传统 Web 项目); 4. 为项目添加数据库支持; 5. 为项目添加前台页面支持; 6. 打包部署项目; 7. 使用过程中如何使用好官方文档。 8. …… 适合人群:有 Java 基础,对 Spring Boot 感兴趣或者想需要快速入门 Spring Boot 的开发人员。
韩斌韩斌 · 架构师
15 订阅

规则引擎 Drools

Drools 是一个用 Java 编写的业务逻辑集成平台,可以很方便的实现逻辑与数据分离,方便扩展。 在本场 Chat 中,会讲到如下内容 1. Drools 的 Rule 语法 2. 如何在业务环境中使用 Drools;SpringBoot+Drools 实战,提供源码下载 3. 在 Excel 中配置 Rule 并读取
天道酬勤,地道酬善天道酬勤,地道酬善 · 架构师
33 订阅

基于百度地图的路径规划系统

在网络优化问题中,路径规划是典型的一个问题,无论是导航还是运输都离不开路径规划。本 Chat 采用 Java 语言实现路径规划算法,并利用百度开放地图API实现路径规划系统,该系统采用 SSM 框架、JavaScript框架、MySQL 数据库实现。 在本场 Chat 中,会讲到如下内容: 1. 经典路径规划算法 Dijkstra 算法,利用 Java 语言实现多点路径规划,可通过前台页面动态添加地址节点。 2. 利用 SSM 框架、JavaScript 框架和 MySQL 数据库实现 WebGis 系统。 3. 利用百度地图 API 实现按步行、驾车、公交、地铁等方式的两点间路径规划、电子地图关键词查询、电子地图缩放插件的使用。其中包括根据后台程序实现的地址获取功能,相比百度提供的 JavaScript 实现的地址获取功能更加稳定。
工以成真工以成真 · 数据科学教师、技术总监
30 订阅

Spring 数据库事,教你吊打面试官

数据库事务问题,不仅在面试中问的特别多,而且,在项目开发中也经常应用,特别是当业务线特别长,涉及多次对数据库的查询与修改,如果我们对事务不能数量理解,就很容易出错。 当业务层抛出异常,数据库操作却不回滚,怎么办? 当业务方法出现多层嵌套,分不清楚如何处理事务怎么办? 接下来,我们将详细了解数据库事务在 Spring 中的应用。 1. 什么是事务?事务的基本概念解释。 2. 事务的基本原理解释。 3. 事务的传播机制详解。 4. Spring 事务的隔离机制。 5. 事务的嵌套详解。 6. 举例说明事务的相关特性。
二泉二泉 · 架构师
48 订阅

如何在 21 届校招中获得包括 6 家银行信息科技岗的 12 个 offer

大家好,我是 21 届的应届毕业生,软件工程专业硕士。我去年差不多是 6 月份开始准备的秋招。眼看马上将进入 2022 届的秋招,相信很多小伙伴有和我当年一样的困扰,例如:我是学计算机/软件的,怎么才能考进银行呢?其实当时的我也非常发愁,觉得自己什么都不会,又不知道该准备些什么,走了不少弯路。其实现在回头看,可能是信息匮乏,有些盲目学习。其实所谓的秋招难其实都是相对的,只要自己掌握方法并且准备充分,其实很容易在面试中脱颖而出。 其实我是需求方向的,在银行的招聘中也比较局限,但是仍然收获了满意的 offer。如果你是软开、测试、运维等等其实更不在话下。相信这时候很多小伙伴都摩拳擦掌了,希望能够在秋招中斩获心仪的 offer。本文将结合我自己在多家银行面试的经历为大家介绍和总结经验。 具体内容会包括: 1. 简历方面:银行笔试侧重点与考察范围、银行互联网笔试差异化、高效准备笔试技巧 2. 面试方面:我的各个面试经历(包含回答内容)、面试准备技巧(结构化面试、半结构化面试、小组群面) 3.签约方面:薪资待遇情况等 我的offer情况: - 中国银行软开(offer); - 邮储银行软开(一面通过); - 交通银行北分科技岗(offer); - 农业银行北分科技岗、农银金科(offer); - 工商银行业研、数据中心(一面); - 中信银行软开(offer); - 民生银行信用卡中心科技岗(offer); - 浦发银行北分科技岗(一面); - 中国邮政信息科技(offer)。 其他还有联通、京东以及中国电子下属之类的其他国企和互联网公司共 6 家,共计 12 个 offer。
狐狸狐狸狐狸狐狸狐狸狐狸 · 应届生
30 订阅

Apache Poi 从入门到精通

Apache Poi 是一款能够实现对 Word、Excel 等文件实现读取的 Java 包。 在本场中主要介绍 Apache Poi 相关内容,将会介绍如下内容: 1. 什么是 Apache Poi 2. Apache Poi 实现原理 3. Spring Boot 集成 Apache Poi 4. Apache Poi 如何读取 Word 文档内容 5. Apache Poi 如何读取 Excel 内容 6. 如何生成一个 Excel 文档 7. 总结
小小小小 · 阿里云社区认证专家
33 订阅

Python 使用 PyQt 实现视频播放器

PyQt 是 Python 版的 Qt 工具,Qt 是是制作图像界面的利器,里面封装了大量好用的模块。包括基本的图形控件、多媒体控件、网络模块、多进程模块、3D 模块等。使用 PyQt 我们可以实现很多有趣的功能。今天我们就使用 PyQt 来实现一个视频播放器程序,具体内容如下。 1. PyQt 安装 2. PyQt 快速开发 3. QVideoWidget 4. QMediaPlayer 控制视频 5. 播放暂停 6. 时移 适合读者,对图形用户界面开发感兴趣的读者。
扎克斯扎克斯 · Java开发工程师
25 订阅

70 行 Python 代码理解加密、安全的前世今生

信息是如何加密、解密和安全传输的?如今加密货币满天飞,其中公钥、私钥、非对称加密,到底什么意思呢?数据库中存储的密码又是什么样子?什么是彩虹表?为什么数字签名能能确认签字人? 本文使用 70 行 Python 代码来逐个演示常见加密、安全技术。 ### 特点: - 码说“加密”:代码是程序员的本能,一码胜千言! - Python:几行代码,就可实现对称加密、非对称加密功能,大大减轻认知负担。 - 共七十行代码:七十行代码,带你一窥加密的前世今生。 ### 主要内容: - 明文字符串编码 - 字节文件在文本协议中传输 - 哈希函数和其功用:验证完整性及存储密码,及两种改进。 - 对称加密 - 秘钥交换 - 非对称加密 - 数字签名 **适合人群** :对加密、安全感兴趣的小白用户。 **定位**:本文定位较简单,从宏观上认识安全技术,大家可以动手自己敲一敲代码。
大奎大奎 · 高级工程师
63 订阅

Spring Boot 自定义定时器实战(含完整代码)

我相信大家都会使用 Spring Boot 的 `@Scheduled(cron = "0/5 * * * * *")` 方式创建定时器,这种方式在项目启动后就会每隔 5 秒就会执行一次,而且一直以这频率定时执行,直到停止工程后定时器才会停止执行,如果你不想定时器在项目启动后就开始执行,而是由自己随意在某个时刻创建定时器,随意开启、暂停、删除定时器,此时自定义定时器就应运而生了。 本 Chat 你将会获得以下知识: 1. 自定义定时器实战代码 2. 工厂模式实战代码 3. 策略模式实战代码 4. JPA 操作 MongoDB 数据库 适合人群: Java 中高级开发。
老牛老牛 · 资深开发
63 订阅

一文掌握 JDK8 CompletableFuture 的核心原理与实战技能

提到 CompletableFuture,就不得不提到异步编程(异步调用)。所谓异步调用其实就是指调用一个方法(函数)后调用者可以无需等待其返回结果,调用者代码可以直接继续运行。比如在 Java 中,我们可以通过启动一个线程的方式来完成方法调用中的部分计算逻辑,而调用者本身无需同步等待返回结果,可以继续运行或者直接返回。但是某些场景下调用者仍需要获取异步线程的计算结果。此时我们会想到 JDK5 新增的 Future 接口。Future,顾名思义,表示未来(将来时),即用于描述一个异步计算的结果。 虽然说 Future 提供了异步执行任务的能力,但是对于异步计算结果的获取却只能通过阻塞或者主动轮询的方式得到。阻塞的方式显然违背了异步编程的初衷;而轮询的方式又会浪费 CPU 资源,并且不能及时获取到计算结果。能不能让执行异步计算的线程主动向主线程通知其进度,以及成功失败与否呢?这就是本文要介绍的 JDK8引入的 CompletableFuture。 在 Java8 中引入的 CompletableFuture 提供了非常强大的 Future 的扩展功能,降低了异步编程的复杂度,并且提供了函数式编程的能力。相比 Future 的一个明显的优势是可以传入回调函数,当异步计算任务完成或者发生异常时,会主动调用回调对象的回调方法,这就省去了我们主动等待、获取异步计算结果,后者可以认为是一种伪异步模式。CompletableFuture 还提供了多种转换和合并 CompletableFuture 的方法,即可以实现异步任务链。所有的特性和用法都将在本文中娓娓道来。 在本场 Chat 中,将会讲到如下内容: - CompletionService 详解 - CompletableFuture 的基本用法 - 执行有返回值类型(Supplier)的任务 - 执行无返回值类型(Runnable)的任务 - 执行异步任务链 - 多 Future 合并计算 - 多 Future 并行计算 - 自定义 CompletableFuture 使用的线程池 - 任务异常处理 **适合人群**:需要在实际开发中使用异步编程的同学,想全面掌握 JDK8 CompletableFuture 用法的初学者。
程猿薇茑程猿薇茑 · 攻城狮||程序猿
46 订阅

大厂真题面试讲解:堆

现在的工程师工资越来越高,这也太来了更大的压力。所以所有的大公司都开始加入了算法的面试,那就是你别和我瞎逼逼,扯那些没用的,能力行不行,你走两步,你写写算法。而这其中堆是一个很高效却又很神秘的结构,毫不谦虚的说,我当年毕业面试 Yelp 的时候,面我的那个人仿佛嘲笑我一样,不会堆还敢来面试。但是现在的我已经完全不一样,不仅会使用堆,还使用的很熟练,不要学当年的我,希望你能学完这篇堆的讲解来碾压面试官。 相信我,学完这篇文章,你想学不会都难。 在本场 Chat 中, 会讲到如下内容: - 堆的基本概念 - 堆的数据结构 - 堆的添加元素是怎么做的 - 堆的删除元素是怎么做的 - 堆的 Heapify 是怎么做的(这也是一道面试题哦) - 堆排序可以怎么做? - 面试真题 1:丑数 II - 面试真题 2:合并 K 个排序链表 - 面试真题 3:最高频的 K 个单词 - 面试真题 4:排序矩阵中的从小到大第 K 个数 - 面试真题 5:K 个最近的点 - 面试真题 6:神秘字节面试题
chrischris · 技术带头人
47 订阅

Spring TX 事务的实现原理

每天都在用的是 Spring TX 事务管理框架你知道它的实现原理吗,面试的时候有没有面试官问过你事务管理的原理是怎么实现的,这也是阿里面试必问的面试题之一,也是能提升自己技术深度的一个点。 从本文中可以学到: 1. Spring TX 事务的实现原理,进而提升自己的技术深度 2. 从原理上理解 Spring TX 事务不生效的原因 3. 帮你解决掉大厂面试通关的一个路障
天河天河 · 技术专家
66 订阅

iOS 图片编辑的实现

本场 Chat 将讲解到类似微信聊天图片进行编辑的这样一个功能模块。拆解复杂的主要几个功能点: 1. 涂鸦功能点实现及撤销上一次涂鸦操作 2. 裁剪和旋转操作 3. 文字贴图功能点实现 4. 如何保证裁剪和旋转后的涂鸦线条方向,文字方向 5. 图片马赛克虚化功能点实现,以及如何保证马赛克在最底层,文字贴在最上层
Q.G.YQ.G.Y · 前端工程师
5 订阅

超详细的 ClassLoader 详解以及案例分享

ClassLoader 被称为 JVM 中的类加载器,具体的作用是将编译的 Class 文件加载到 JVM 运行时数据区中。对于开发者,没搞明白 ClassLoader 的源码以及运行原理,对于日常开发看似没什么太大的影响,但是对于我们理解优秀的开源框架源码以及编写一些底层的平台工具的时候,学会 ClassLoader 定会事半功倍。 本场 Chat 您将收获如下: - 源码剖析 ClassLoader 底层运行机制 - 介绍常用的开源框架是如何使用 ClassLoader - 分享工作中 ClassLoader 的实战经历
songyajunsongyajun · 架构师
62 订阅

一文掌握 Java 线程池核心原理及基于 Spring Boot 的最佳实践

日常开发中我们经常使用线程池去提升程序的性能。通过池化的思想进行线程复用、管理,可以降低系统资源消耗、提升系统响应速度、减少系统处理耗时。 熟悉服务器端开发的同学都知道,Web 服务器在接收客户端请求时,通常不会采取来一个请求就新建一个线程处理的方式。虽然这种方式实现起来简单易懂,但是如果并发的请求数非常多,并且每个请求的实际处理耗时又非常短,那么就会导致频繁地创建和销毁线程,这将大大降低系统的性能。因为线程切换是有成本的,CPU 需要保存当前执行线程的上下文,并且后期还要恢复执行线程的上下文,即所谓的“上下文切换开销”。 线程池则为多线程创建的开销和资源不足问题提供了解决方案。通过多任务下线程的重用,将线程创建的开销摊薄到了多任务上,取得了高并发环境下系统性能上的提升。 在本场 Chat 中将会讲到如下内容: - Java 中线程池的基本概念和原理以及使用案例 - Java 中的线程池调优,参数配置详解 - 使用 Spring 内置的各种线程工具类创建线程池 - 在 Spring Boot 采用优雅的方式使用线程池 - 线程池的监控与管理以及线上动态调优实践 **适合人群**:Java 前后端开发人员。想深入理解、掌握线程池的使用、配置,在项目中需要自定义线程池的开发人员。
程猿薇茑程猿薇茑 · 攻城狮||程序猿
67 订阅

Spring Boot Validation 参数校验及统一异常处理最佳实践

在后端开发中,我们常常需要对接口的请求参数进行“参数合法性性”校验。比如我们要进行入参的判空、格式检查等来避免程序出现异常。首先想到的实现方式是采用 if(){...} else{...} 方式逐个对参数进行判断,这种方式功能上没有问题,能够达到目的。但是在入参很多的场景下,代码中将会充斥着大量的 if else 判断,降低了代码的美观性和可读性,显然不够优雅。那么有没有更好的方式来做这件事呢? 回答上述问题前我们再来看看另一个问题。 在后端开发中,还有个常见的问题。就是在程序中,我们不可避免地需要处理各种异常。代码中常常会看到大量的 try {...} catch {...} finally {...}。这同样造成了代码冗余,降低了可读性。那么有没有更优雅的方式来处理程序中的异常呢? 好了,带着上述问题,我们来引出本文的主要内容。在本场 Chat 中,将会讲述下列内容: - Bean Validation 概述及其具体实现介绍 - Spring Boot 中 Validation 的使用入门 - RequestBody/RequestParam/PathVariable 参数校验 - 分组校验、嵌套类校验、集合元素校验 - 自定义注解式规则校验、编程式校验 - 在 Service 接口中使用参数校验 - 后端接口统一数据格式响应 - 后端接口统一异常处理 **适合人群:** 本文篇幅较长,适合日常开发中使用 Spring Boot、Spring Cloud 微服务架构,需要经常面向 API 接口编程的开发人员。
程猿薇茑程猿薇茑 · 攻城狮||程序猿
Spring Boot · 80 订阅

服务监控系统 Prometheus 实战(一):服务器监控

Prometheus 是一个开源的服务监控系统和时间序列数据库。它可以对系统的各服务进行有效的实时的监控、预警,使你可以随时了解内存、线程、磁盘、网络 IO 、并发操作等情况进行系统的调优工作。接一下我们根据实例,一步一步介绍 Prometheus 的使用,包括数据的采集、Dashboard 的制作及预警的配置。 本篇我们主要介绍以下几点: 1. Prometheus 的安装及介绍 2. Grafana 的安装 3. 监控各服务器并生成图形化展示 适合人群:运维或架构
japhonejaphone · java飞行者
60 订阅
-- 我们是有底线的 --