程序设计

如何写出让同事无法维护的代码

对,你没看错,本文就是教你怎么写出让同事无法维护的代码,保证不会被打死。如果建筑师盖房子就像程序员写程序一样,那么,第一只到来的啄木鸟就能毁掉我们的文明。——Gerald Weinberg 01 程序命名 容易输...

git pull报错

在git pull时,偶尔会遇到一个报错: Unlink of file '.git/objects/pack/old-07de1ebcd020b809a421fceb567977352258b859.idx' failed. Should I try again? (y/n) 不管是y还是n都会不断地出现这种提示信息。...

Spring Websocket实现向指定的用户发送消息

概述 本文我们介绍通过Spring websocket实现向特定的用户发送消息。 本文的内容如下: 1. 首先实现简单的登录功能,这里向特定用户发送消息的必要条件 2. 用户登录系统后,才可以登录websocket,并重写MyPr...

Java性能优化的50个细节

作者丨Java后端开发 https://www.toutiao.com/i6595499804082569742/ 在JAVA程序中,性能问题的大部分原因并不在于JAVA语言,而是程序本身。养成良好的编码习惯非常重要,能够显著地提升程序性能。 1. 尽...

WEB应用安全

开发 WEB 应用的同学应该不少,不知道大家平时开发中,有没有关注过应用开发的「安全问题」。 所谓安全问题,就是开发中不要留下漏洞,给入侵者破坏者机会。 比如,我们常挂在嘴边的安全问题有 「SQL 注入...

InnoDB调试死锁的方法

近期写了不少InnoDB锁相关的文章,不少小伙伴问,如何在MySQL终端模拟并发事务,如何复现之前文章中的案例。今天,咱们一起动起手来,模拟并发事务的互斥与死锁。   【事前准备】 安装MySQL服务...

公共更新结束是一个过程,而不是一个事件(JAVA收费后,使用者如何应对?)

新闻 2019年1月起,Oracle JAVA开始收费了,那么作为JAVA使用者来说要怎么做呢? Oracle 曾在2018年4月就宣布,自 2019 年 1 月起,Java SE 8 公开更新将不向没有商用许可证的业务、商用或生产用途提供。即未...

Java利器之UML类图详解

前言 UML(Unified Modeling Language)中文统一建模语言,是一种开放的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品的开放方法。UML展现了一系列最佳工程实践,这些最佳...