程序员
文章平均质量分 85
Python炭烧
分享自己工作方面的一些经验和技术知识点,以及自己的一些成长感悟。欢迎关注!
展开
-
Python机器学习笔记
Python机器学习笔记一 机器学习概述1.1 人工智能概述1.1.1 机器学习与人工智能、深度学习关系机器学习和人工智能、深度学习的关系机器学习是人工智能的一个实现途径深度学习是机器学习的一个方法发展而来达特茅斯会议(Dartmouth Conferences)- 人工智能的起点1956年,几个计算机科学家相聚在达特茅斯会议(Dartmouth Conferences),提出了“人工智能”的概念。1.1.2 机器学习、深度学习能够做什么机器学习应用场景非常多,可以说原创 2021-12-14 20:47:06 · 597 阅读 · 0 评论 -
22岁专科菜逼Python的2021年终总结
前言转眼已经到了2021年的末尾,回首这过去的一年,发现自己曾经定下的目标一个都没有完成。????1.自身情况 && 上家公司我是一个专科毕业的菜逼,大学的最后一年发现自己什么都不会,听说程序员赚的多等学完了出来也只能在二线城市找了个7.5k的工作,这期间边上班边还贷款还是挺吃力的。虽说之前的拿个公司虽小,但好歹是个甲方,过年过节的福利是真的挺不错的,干了一年半这期间还给我涨了20%的薪水,过年还有三个月的年终奖,唯一我不太喜欢的就是里面的人挺卷的,尤其是我的老大,天天卷到8、9点原创 2021-12-13 21:26:53 · 311 阅读 · 20 评论 -
Python头像动漫化,快来生成一个自己的动漫头像吧
一、前言很多时候我们都会为头像发愁,像我这种万年不换头像的咸鱼从来没有这种烦恼。但是吧,有个个性化的头像还是非常有趣的,因为这个抠鼻屎的头像除了抠鼻屎这点,其它都很符合本人的气质,所以已经够用了。但是我还是打算把这个小技巧给大家分享。二、效果展示在我多次测试后,发现女生头像的生成还是比较不错的,而且最好是正面照。而男生动漫头像的生成就有点差强人意了,大家可以自己试试,下面我们看看我用有村大妹子生成的两张图片,我们先看第一张: 接下来是第二张,我用的是垫底辣妹中的形象: 两张效果都还可以,主要还是人原创 2021-12-13 20:58:21 · 973 阅读 · 0 评论 -
python学习一定用pycharm吗?
PyCharm是真的好,尤其是适合大型项目。但除此之外,我也想强力推荐Spyder作为配套编程IDE。作为一个开源老铁,今天我给大家简单介绍一下如何使用两者中的功能进行高效开发。我个人的经验:初期开发用Spyder,调试、debug和部署用PyCharm。搭配起来,效率加倍!Spyder的编程界面最重要是啥,就是右边红框里面的变量查看的部分。你可以一段一段的运行程序,也可完整的运行,而中间产生的变量值°都可以在这个变量窗口查看。其中绝大部分变量都可以通过双击打开查看具体数值,比如我可以双击查看一个n原创 2021-12-12 20:07:31 · 197 阅读 · 0 评论 -
知道后每个人都封神的 20 个 Python 技巧
MongoDB是由C++语言编写的非关系型数据库,是一个基于分布式文件存储的开源数据库系统,其内容存储形式类似JSON对象,它的字段值可以包含其他文档、数组及文档数组,非常灵活。在这一节中,我们就来看看Python 3下MongoDB的存储操作。1. 准备工作在开始之前,请确保已经安装好了MongoDB并启动了其服务,并且安装好了Python的PyMongo库。2. 连接MongoDB连接MongoDB时,我们需要使用PyMongo库里面的MongoClient。一般来说,传入MongoDB的IP及原创 2021-12-10 22:36:42 · 104 阅读 · 0 评论 -
从15000个Python开源项目中精选的Top30,Github平均star为3707,赶紧收藏
继推出2017年机器学习开源项目Top 30榜单后,Mybridge AI又推出了一个Python开源项目Top 30榜单,包括开源Python库、工具等。该榜单基于项目质量、用户参与度以及其他几个方面进行了评估,从大约15000个开源项目中挑选了Top 30,差不多都是在2017年1-12月发布。这些项目在Github上的平均star为3707。No 1:Home-assistant (v0.6+)基于Python 3的开源家庭自动化平台[Github 11357stars,由Paulus Schou原创 2021-12-09 18:01:03 · 278 阅读 · 2 评论 -
必须收藏 零基础自学Python资源大全,学完这些自学Python学习资料,找工作不用愁
这是一篇 Python 入门指南,针对那些没有任何编程经验,从零开始学习 Python 的同学。不管你学习的出发点是兴趣驱动、拓展思维,还是工作需要、想要转行,都可以此文作为一个参考。在这个信息爆炸的时代,以 “Python入门” 为关键字搜索出的结果成千上万。不少小白选手难免会东一榔头西一棒槌,最终看了很多文章,却仍没跨过新手那道门槛。结合自身的学习经验以及与很多自学者的沟通了解,我们整理出一条可操作性较强的自学路线,同时收集了多种形式的 Python 优质学习资源,供诸位尚未入门或刚入门不久的同学参原创 2021-12-07 22:35:49 · 318 阅读 · 5 评论 -
冻成狗啦 我用Python爬取某宝2008条棉袄,终于买到心仪的棉袄了
转眼就到12月份了,但是没想到今年的冬天这么冷,基本取暖靠抖,太冷啦!于是,赶紧打开了Python,用它爬取并分析一波棉袄,找到一件最合适的棉袄给裹到身上。01 数据采集数据采集是数据可视化分析的第一步,也是最基础的一步,数据采集的数量和质量越高,后面分析的准确的也就越高,我们来看一下淘宝网的数据该如何爬取。淘宝网站是一个动态加载的网站,我们之前可以采用解析接口或者用Selenium自动化测试工具来爬取数据,但是现在淘宝对接口进行了加密,使我们很难分析出来其中的规律,同时淘宝也对Selenium.原创 2021-12-06 17:13:26 · 312 阅读 · 7 评论 -
微软开源最强Python自动化神器Playwright 不用写一行代码
相信玩过爬虫的朋友都知道selenium,一个自动化测试的神器工具。写个Python自动化脚本解放双手基本上是常规的操作了,爬虫爬不了的,就用自动化测试凑一凑。虽然selenium有完备的文档,但也需要一定的学习成本,对于一个纯小白来讲还是有些门槛的。最近,微软开源了一个项目叫「playwright-python」,简直碉堡了!这个项目是针对Python语言的纯自动化工具,连代码都不用写,就能实现自动化功能。可能你会觉得有点不可思议,但它就是这么厉害。下面我们一起看下这个神器。1. Playwr.原创 2021-12-02 21:49:13 · 268 阅读 · 0 评论 -
我入门 Python 后总结的基础教程
先唠叨几句学习 Python 有几周了,也写了 2 个小项目来解决自己的实际需求。简单记录一下,供自己备忘,也供后来者参考。0.0) 我为什么选择 Python我之前使用 Swift + Vapor 开发了 iPic (图床工具) 的后端服务,遇到很多问题:主要还是 Swift 在 Ubuntu 下并不成熟,甚至很多关键性、基础性的库,都是 TBD;以及,基于 Swift + Ubuntu 的库并不多,开发起来很吃力。接下来要开发 Klib (Kindle、iBooks 标注管理) 的.原创 2021-11-29 20:42:27 · 119 阅读 · 0 评论 -
超全Python学习路线图+14张思维导图,让python初学者不走弯路
这几天得到许多朋友的支持,我的分享能帮助到大家我也很开心。突发奇想,想把当初自学python时收藏的关于python的14张思维导图和学习路线拿出来分享给许多同样处于"初级"阶段的各位攻城狮们。话不多说,直接见图吧~~【字符串】【序列】【文件对象】【条件循环】【数据类型】【模块】【面向对象编程】【列表元组】【基础知识1】【基础知识2】【函数1】【函数2】【错误异常】铛铛铛,接下来就是要展示关于Python的学习路线了,不要眨眼!Python必原创 2021-11-25 22:17:47 · 3290 阅读 · 0 评论 -
微软推出的Pylance,随着VS Code的更新,性能又前进了一步
微软推出的 VS Code Python 语言插件 Pylance,给 Python 带来编译语言般的开发支持。对于最近更新的 VSCode 版本,除了保留 Pylance 原始特性外,又引入了新特性。Pylance 是微软今年推出的 Python 语言服务器,可以利用语言服务器协议与 VS Code 进行通信。Pylance 在 VS Code 中为 Python 提供了快速、特性丰富的语言支持,并依赖于核心的 Python 扩展,从而极大地改善了 VS Code 中的 Python 体验。随.原创 2021-11-23 15:41:32 · 309 阅读 · 0 评论 -
不踩坑的Python爬虫:如何在一个月内学会爬取大规模数据
Python爬虫为什么受欢迎如果你仔细观察,就不难发现,懂爬虫、学习爬虫的人越来越多,一方面,互联网可以获取的数据越来越多,另一方面,像 Python这样的编程语言提供越来越多的优秀工具,让爬虫变得简单、容易上手。利用爬虫我们可以获取大量的价值数据,从而获得感性认识中不能得到的信息,比如:知乎:爬取优质答案,为你筛选出各话题下最优质的内容。淘宝、京东:抓取商品、评论及销量数据,对各种商品及用户的消费场景进行分析。安居客、链家:抓取房产买卖及租售信息,分析房价变化趋势、做不同区域的房价分析。拉勾.原创 2021-11-12 22:12:01 · 256 阅读 · 0 评论 -
秀的一批,那些你不得不知的 Python 杀手级框架
Python 作为一门极易入门的编程语言,一是得益于其简洁的语法,而是因为有着丰富的第三方库的支持,很多复杂的功能,比如机器学习,数据分析等直接调用第三方库封装好的函数,一行代码即可搞定。那在 Python 届有哪些被封神的库呢,今天就给大家介绍十个堪称杀手级别的工具包。0x00 IPython学习 Python 一定对其交互环境非常熟悉,但 Python 自带的交互环境有很多限制,而且也不够美观。IPython 是对 Python 自带交互环境的增强,支持变量自动完成,bash shell 命令原创 2021-11-11 21:52:56 · 109 阅读 · 0 评论 -
Python线程指南
1. 线程基础1.1. 线程状态线程有5种状态,状态转换的过程如下图所示:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-J67eSBgB-1636273815328)(https://images.cnblogs.com/cnblogs_com/huxi/WindowsLiveWriter/Python_11F5/thread_stat_simple_3.png “thread_stat_simple”)]1.2. 线程同步(锁)多线程的优势在于可以同时运行多个任务原创 2021-11-07 16:34:08 · 95 阅读 · 0 评论 -
Python就该这样学,我如何2个月快速掌握Python的?实现月入破万
一、学习建议找到自己感兴趣的方向,并且结合市场需求进行选择1、Python的应用范围测试运维web人工智能大数据爬虫及数据分析办公自动化2、学习过程中一定要勤加练习,并且尝试去使用学习过的内容实现一些简答的功能遇到技术问题不要慌,解决问题的过程也是加速自己成长的途径学会使用搜索引擎寻找答案。不知道使用搜索工具的同学,直接把错误信息复制到搜索框,即可找到很多的相关错误的内容百度谷歌3、一定要学会看报错的信息,错误信息代表的是程序问题出现的原因,通过不断积累发现和分析问题,原创 2021-11-06 22:11:27 · 1567 阅读 · 0 评论 -
5个酷毙的Python工具
工欲善其事必先利其器,一个好的工具能让起到事半功倍的效果,Python社区提供了足够多的优秀工具来帮助开发者更方便的实现某些想法,下面这几个工具给我的工作也带来了很多便利,推荐给追求美好事物的你。Python TutorPython Tutor 是由 Philip Guo 开发的一个免费教育工具,可帮助学生攻克编程学习中的基础障碍,理解每一行源代码在程序执行时在计算机中的过程。通过这个工具,教师或学生可以直接在 Web 浏览器中编写 Python 代码,并逐步可视化地运行程序。如果你不知道代码在内存中是原创 2021-11-05 21:34:04 · 84 阅读 · 0 评论 -
HR:你Python精通数据分析吗?分享给刚入门零基础的学习伙伴
之前看到一个段子:以前去面试,HR会问你“精通office吗?”现在去面试,HR会问你“会Python数据分析吗?”大数据时代,无论是数据分析师、研发,到运营、市场、产品经理,「数据分析+数据可视化」的能力都是基本要求。数据挖掘工程师这一岗位应运而生,成为市场争抢的稀缺人才!逛一下招聘网站,接近50%的岗位都需要具备「数据分析」能力,python数据分析广泛应用于制造、金融、快消、电商、医疗等行业,几乎是职场必备技能。根据招聘网站信息显示,1年左右经验的数据分析师薪资都到了 15-20k 之间原创 2021-11-04 15:35:29 · 267 阅读 · 0 评论 -
GitHub 上适合刚接触学习Python的开源项目
随着 Python 语言的流行,越来越多的人加入到了 Python 的大家庭中。为什么这么多人学 Python ?我要喊出那句话了:“人生苦短,我用 Python!”,正是因为语法简单、容易学习,所以 Python 深受大家喜爱。(Python!Python!Python!)Python 初学者在迈过安装编程环境和基本语法的门槛 ,准备大展身手的时候,可能突然就会进入迷茫期:不知道做些什么、再学些什么。然后对编程的兴趣就会慢慢消退,找不到坚持下去的理由,从而慢慢淡忘之前学会的编程知识。所以找到自己感兴趣、原创 2021-11-03 21:59:06 · 267 阅读 · 0 评论 -
使用深度 Q 学习的 AI 驱动蛇游戏 源码分享
在构建基本的蛇游戏之后,现在我们将专注于如何将强化学习应用于它。我们必须在这个项目中创建三个模块:1.环境(我们刚刚构建的游戏)2.模型(移动预测的强化模型)3.代理(环境和模型之间的中介)算法:我们在棋盘上随机放置了蛇和食物。使用 11 个值计算蛇的状态。如果有任何条件为真,则将该值设置为0,否则设置1。如何定义 11 个状态基于当前的 Head 位置代理将计算 11 个状态值,如上所述。获得这些状态后,代理会将其传递给模型并执行下一步操作。执行下一个状态后计算奖励。奖励定.原创 2021-08-20 16:46:27 · 215 阅读 · 0 评论 -
弘扬奥运精神,我们49行画个奥运五环
虽然这届奥运遇到重重阻碍,疫情影响而延后,延后了要举办民众反对,再然后彩排后还爆出xq案件,更有小道爆出黑幕。这些种种我们就忽略掉吧~截止本文发表,我们看看战况:弘扬奥运精神,今天我们用49行写歌奥运五环~本文效果预览: 奥林匹克标志奥林匹克 标志 (Olympic Logo /Symbole Olympique/Olympic Rings)是由皮埃尔·德·顾拜旦先生于1913年构思设计的,是由《奥林匹克宪章》确定的,也被称为奥运五环标志,它是世界范围内最为人们广泛认知的奥林匹克运动会原创 2021-08-04 19:04:56 · 11213 阅读 · 0 评论 -
源码解析 MyBatis 架构
MySQL 安装与启动安装并启动一个关系型数据是调试 MyBatis 源码的基础。目前很多互联网公司都将 MySQL 作为首选数据库,所以这里我也就选用 MySQL 数据库来配合调试 MyBatis 源码。1. 下载 MySQL首先,从 MySQL 官网下载最新版本的 MySQL Community Server。MySQL Community Server 是社区版本的 MySQL 服务端,可以免费试用。这里我选择使用 tar.gz 的方式进行安装,所以需要下载对应的 tar.gz 安装包,如下图红原创 2021-08-02 15:55:12 · 124 阅读 · 0 评论 -
进入后端Java行业前明白个道理:程序员解决的问题,大多不是程序问题
前言很多人都说,程序员很辛苦,与这个角色联系在一起的词儿,通常是忙碌、加班、熬夜等。作为程序员,我们将其看作一个值得全情投入的职业,希望能够把精力放在设计算法、改进设计、优化系统这些具有创造性与成就感的本职工作上。但现实情况却是,许多人因为一些“意外”,陷入了无休止的忙碌,比如:你辛辛苦苦写的代码还没上线,产品经理就告诉你需求变了;你拼命加班只因错估了工作量,自己造的“孽”,含着泪也要搞定;你累死累活做出来的东西和要求不符,只能从头再来;你大面积地修改代码只是因为设计糟糕,无法适应新的需求变化原创 2021-08-02 10:20:12 · 109 阅读 · 0 评论 -
ShardingSphere4.1.1:Sharding-JDBC数据加密及SPI加密策略实现
0、脱敏规则1、环境构建1.1、创建一个 Spring Boot 项目,引入依赖如下:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/PO.原创 2021-07-31 21:05:58 · 1476 阅读 · 0 评论 -
java根据IP获取当前区域天气信息
大致思路是客户端发起请求,我们首先根据请求获取到外网IP,然后再根据外网IP获取到用户所在城市,最后根据城市获取到天气信息获取外网IP万网获取外网IP地址: www.net.cn/static/cust…/** * @Description:获取客户端外网ip 此方法要接入互联网才行,内网不行 **/public static String getPublicIp() { try { String path = "http://www.net.cn/static/cu原创 2021-07-30 17:49:03 · 409 阅读 · 0 评论 -
我为什么不建议你这样学Java
“没工作经验是不是进不了大厂?这都快金九银十了,来不及了!”在我看来,与其说工作经验,不如说是项目经验或实战经验,而“经验”往往是你拿到offer的关键。不得不说,很多人都有过这类疑问。想要进大厂的Java人很多,同时放弃的人也不少。选择中途放弃往往是因为拿下大厂Java岗没有想象中那么简单,自己的技术能力不能满足大厂要求。一方面是知识积累有要求,除了要面对数不清的资料以及繁杂的学习内容,还要知道在业务场景中哪些技术、工具、架构更受大厂企业欢迎;另一方面就是面试难,使用Java语言的程序员人数最多,原创 2021-07-29 15:48:39 · 226 阅读 · 0 评论 -
讲解JVM原理的文章铺天盖地,希望这篇足够通俗易懂
导读学习过C/C++的同学都有过这样的体验,无论实现什么样的功能,用C/C++实现时,会存在下面两个问题:内存管理:使用C/C++编程,我们必须很好地管理系统内存,如果稍有不慎,可能就会有内存溢出的风险跨平台:比如,我们用C/C++实现聊天工具,为了让该工具可以在Windows、Mac OS、Linux等多个操作系统下使用,就光网络通讯部分,我们就不得不逐个调用这些操作系统自带的库函数来实现,这个代价是很高的于是,Sun公司的大佬们决定开发Java语言,该语言使用JVM运行其编写的程序,让JVM原创 2021-07-29 14:29:52 · 173 阅读 · 0 评论 -
面试官:数据库自增 ID 用完了会咋样?
01 前言哈喽,好久没更新啦。因为最近在面试。用了两周时间准备,在 3 天之内拿了 5 个 offer,最后选择了广州某互联网行业独角兽 offer,昨天刚入职。这几天刚好整理下在面试中被问到有意思的问题,也借此机会跟大家分享下。这家企业的面试官有点意思,一面是个同龄小哥,一起聊了两个小时(聊到我嘴都干了)。他问了我一个有意(keng)思(b)问题:数据库中的自增 ID 用完了该怎么办?这个问题其实可以分为有主键 & 无主键两种情况回答。国际惯例,先上张脑图:02 有主键如果你.原创 2021-07-26 17:54:17 · 122 阅读 · 1 评论 -
被迫“内卷”的程序员,前途真的一片灰暗吗?
没有人的工作是不可取代的,如果你辞职,老板极力挽留,那就说明,你是那帮取代你的候选人当中最便宜的。而现在越来越大的生活压力下,无论是哪个行业都变得越来越“内卷”和焦虑,而什么是内卷呢?简单来说,只有一块蛋糕,怎么分大家都不会满意,就只能 “另辟蹊径”,从而陷入一种恶性竞争。有个形象比喻:看戏时前排站起来看,后排也得站起来看,最终导致全场都站起来看,否则看不着。这是一个竞争不断加码的过程,也是一个煎熬的过程,这意味着你不这样加入竞争就被淘汰出局。而在这个万物可卷的时代,程序员也没能逃离 “卷文化”,更有人评原创 2021-07-26 14:29:15 · 426 阅读 · 0 评论 -
利用Spring的aop原理实现系统级日志管理
背景之前的文章中,对日志记录做过简单的介绍。日常开发中,我们常用的日志有两种,一种是业务日志,该类型主要用于记录系统中某些业务的变化或属性的改变,比如业务流转过程中记录状态的变化或对象属性的变化,此类型主要用于查询业务轨迹使用;另一种是系统日志,主要记录方法的调用信息,比如方法名称,参数以及调用者的名称、ip、调用时间等信息。本文结合项目中的实际情况,介绍下如何使用Spring的aop原理实现系统级日志管理。核心代码1.声明系统日志切面类并交给Spring容器管理代码如下:@Aspect@Com原创 2021-07-24 21:59:09 · 155 阅读 · 0 评论 -
gson 替换 fastjson 引发的线上问题分析
前言Json 序列化框架存在的安全漏洞一直以来都是程序员们挂在嘴边调侃的一个话题,尤其是这两年 fastjson 由于被针对性研究,更是频频地的报出漏洞,出个漏洞不要紧,可安全团队总是用邮件催着线上应用要进行依赖升级,这可就要命了,我相信很多小伙伴也是不胜其苦,考虑了使用其他序列化框架替换 fastjson。这不,最近我们就有一个项目将 fastjson 替换为了 gson,引发了一个线上的问题。分享下这次的经历,以免大家踩到同样的坑,在此警示大家,规范千万条,安全第一条,升级不规范,线上两行泪。问题描原创 2021-07-23 14:00:29 · 590 阅读 · 0 评论 -
「论道架构师」优雅解决历史代码中的新需求
事件起因6月中旬,可爱的产品大大给我提了一个临时需求,需要我对商品创建/更新业务中由开放平台对接而来的请求做一个Check,如果符合要求,则再做一段稍微复杂的逻辑处理。这种Easy程度的需求怎么拦得住我,不到半天我就Coding,Push一气呵成,正当我准备点一杯喜茶开始摸鱼的时候,我却收到了一封邮件。邮件里有一堆的汉字和英文,但有几个字赫然在目:您的代码已被驳回。当我经历了茫然、震惊、不敢相信、最后无奈接受的情绪转变后,问了评审的同事,为什么要驳回我的代码,他说:“历史代码一般业务都很完整(跟屎原创 2021-07-22 14:53:21 · 100 阅读 · 1 评论 -
限量!Alibaba首发“Java成长笔记”,差距不止一点点
前言关于技术人如何成长的问题,一直以来都备受关注,因为程序员职业发展很快,即使是相同起点的人,经过几年的工作或学习,会迅速拉开极大的差距,所以技术人保持学习,提升自己,才能够扛得住不断上赶的后浪,也不至于被“拍死”在沙滩上。近日,经过一朋友的透露,Alibaba也首发了一份限量的“Java成长手册”,里面记载的知识点非常齐全,看完之后才知道,差距真的不止一点点!手册主要是将Java程序员按照年限来进行分层,清晰的标注着Java程序员应该按照怎样的路线来提升自己,需要去学习哪些技术点。0-1年入门:原创 2021-07-20 21:56:50 · 79 阅读 · 5 评论 -
你连对外接口签名都不会知道?有时间还是要学习学习
背景周三,18:00。小明扭了扭微微发酸的脖子,揉了揉盯着屏幕有些干涩的眼睛。终于忙完了,临近下班,整个人心也变得放松起来。“对接方需要我们提供新的服务,下周二上线,需求我发你了,很简单的。”产品经理发过来一条消息,打破了这份美好。“我可去他的吧,每次需求都是快下班就来了。”小明不免心里嘀咕了起来,不过手上可没停。“好的,我先看下需求。”回复完后,点开了需求文档,确实很简单。为外部对接方提供一个新增商户的接口。保持和内部控台新增商户一致确实不太难,小明想了想,内部控台新增商户虽.原创 2021-07-20 21:19:08 · 95 阅读 · 0 评论 -
SpringBoot技术实践-随机端口启动
一、SpringBoot随机端口1.1 基础介绍随机端口可以自动找指定范围内可使用的端口,不需要在配置文件中指定固定的启动端口例如在SpringBoot中假如需要运行多个实例,则需要单独修改配置文件比较麻烦随机端口的原理就是与对应socket端口建立连接,能连接则已被使用,反之未被使用随机获取的端口校验可使用之后通过System.setProperty("属性名称", port);写入内存,然后就可以在配置文件中获取到如果写入的名称为server.port则不用在配置文件中指定端口,否则需要配原创 2021-07-19 21:14:37 · 999 阅读 · 0 评论 -
2021,你还在写“赤裸裸”的API吗?
前言新的项目要开始了,由于项目中涉及到和第三方厂商的接口对接,所有对接口的安全性有要求,下来我们看看如何写好一个规范的接口如何保证接口传输中数据安全保证数据安全,大家首先能想到的就是对内容进行加密。加密的话主要有两种方式,对称加密和非对称加密。1、对称加密我们先一起看一张图 可以看到,上图中采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。对称加密有很多种算法,由于它效率很高,所以被广泛使用在很多加密协议的核心当中。对称加密的强度取.原创 2021-07-19 16:26:27 · 60 阅读 · 0 评论 -
操作手册 : Stream 流处理手册 (赶紧收藏)
一 .前言Java 流这个特性已经出来很久了 , 可以大大的减少我们的代码 , 而且并行处理可以在某些场景下使用多个处理器核心可以大大的提高性能.不过 Stream 语法新手使用起来还是会有一定的难度 , 这一篇文档由浅到深看一下这个特性.这是开篇 , 只记录之前梳理的用法 , 下一篇来看源码 , 记得收藏!!!Stream 的特点Stream 不是集合 , 也不是数据结构 , 不可以保存数据Stream 有点类似于高级 的 Iterator , 可以用于算法和计算不同于迭代器 , St原创 2021-07-19 15:33:32 · 714 阅读 · 9 评论 -
号称下一代可视化监控系统,结合SpringBoot使用,贼爽
摘要当面对一个复杂的系统时,我们往往需要监控工具来帮助我们解决一些性能问题。比如之前我们使用SpringBoot Admin来监控应用,从而获取到SpringBoot Actuator暴露的指标信息。今天给大家介绍一个功能强大的监控工具Grafana,只要需要用到监控的地方,用它做可视化就对了!Grafana简介Grafana是一款开源的数据可视化和分析工具,不管你的指标信息存储在哪里,你都可以用它来可视化这些数据。同时它还具有告警功能,当指标超出指定范围时会提醒你。Prometheus简介Pr.原创 2021-07-16 11:30:09 · 2756 阅读 · 23 评论 -
crud的价值!可别瞧不起CRUD
每天清晨,上班的路上。都摆满了油条摊子。小面团一捏,油锅里一烫,用筷子稍微那么挑几下,一根屎黄色的油条就这么出炉了。就这么简单的事。每当这时,我都会盯着炸油条的师傅沉思。由于对生活保持着好奇心,我对一切事物形成的原因保持着最原始的探知需求,包括油条。在一个偶然的机会,家里剩下了一大锅油,我决定DIY一下炸油条的过程。等真正上手去做的时候,才发现炸油条并不是那么简单。我们姑且把材料和配方放在一边,仅仅是掌握火候,控制过程,都需要大费周折。最后,不是炸糊了,就是没炸熟,废了九牛二虎之力,最后还是炸了原创 2021-07-15 11:47:30 · 529 阅读 · 1 评论 -
不是所有的Spring Boot异常都能被统一异常处理 | Java Debug 笔记
通常我们在Spring Boot中设置的统一异常处理(@RestControllerAdvice配合@ExceptionHandler实现)只能处理Controller抛出的异常。有些请求还没到Controller就出异常了,而这些异常不能被统一异常捕获,例如Servlet容器的某些异常。今天我在项目开发中就遇到了一个,这让我很不爽,因为它返回的错误信息格式不能统一处理,我决定找个方案解决这个问题。ErrorPageFilter这类图相信大家没少见,Spring Boot 只要出错,体现在页面上的就是转载 2021-07-15 11:23:00 · 128 阅读 · 0 评论