深圳幻海软件技术有限公司 欢迎您!

  • Redis( 基础篇 ==> StringRedisTemplate的使用

    本章导学:为什么要使用StringRedisTemplateStringRedisTemplate操作String类型数据StringRedisTemplate操作Hash类型数据一、 为什么要使用StringRedisTemplate在我们为RedisTemplate指定序列化方式后(k

  • 如何提高Java代码的质量

    1、可读性1.1准确命名每种编程语言都有自己的命名规范,不同语言的风格差异有大有小,下面以Java为例:Java整体命名风格为UpperCamelCase或lowerCamelCase形式。不管是类还是变量命名要见名知意,切勿使用缩写或中文;风格统一,尽量使用英文名词,切勿中英文混合;尽量避免和Ja

  • JavaScript 中的依赖注入

    依赖注入DI(DependencyInjection)是编程领域中一个非常常见的设计模式,它指的是将应用程序所需的依赖关系(如服务或其他组件)通过构造函数参数或属性自动注入的过程。这样做的好处是可以减少组件之间的耦合,更容易测试和维护。我们先举个简单的例子,我们有两个简单的 A 

  • 通过阅读源码解决项目难题:GToken替换JWT实现SSO单点登录

    觉得这个经历比较有意思,整理一篇文章分享给大家。jwt的问题首先说明一个jwt存在的问题,也就是要替换jwt的原因:jwt无法在服务端主动退出的问题jwt无法作废已颁布的令牌,只能等到令牌过期问题jwt携带大量用户扩展信息导致降低传输效率问题jwt的请求流程图gtoken的优势gtoken的请求流程

  • Go 语言开源项目使用的函数选项模式

    ​1.介绍在阅读Go语言开源项目的源码时,我们可以发现有很多使用“函数选项模式” 的代码,“函数选项模式”是RobPike在2014年提出的一种模式,它使用 Go语言的两大特性,变长参数和闭包,可以使我们代码更优雅。关于变长参数和闭包的介绍,需要的读者朋友们可以查阅历史文章,本文

  • 公司系统太多,能不能实现账号互通?

    背景最近开发新产品,然后老板说我们现在系统太多了,每次切换系统登录太麻烦了,能不能做个优化,同一账号互通掉。作为一个资深架构狮,老板的要求肯定要满足,安排!一个公司产品矩阵比较丰富的时候,用户在不同系统之间来回切换,固然对产品用户体验上较差,并且增加用户密码管理成本。也没有很好地利用内部流量进行用户

  • 用 WebFlux 写个 CURD 是什么体验?

    WebFlux最为人所诟病的是数据库的支持问题,毕竟数据是一个应用的生命,我们接触的大部分应用程序都是有数据库的,而WebFlux在这一方面的支持行一直比较弱,这也是大家总是吐槽它的原因。不过从Spring5开始,这一问题得到了一定程度的缓解。Spring官方在Spring5发布了响应式Web框架S

  • 很不起眼的六个bug,90%的程序员就算写了10年代码也肯定都踩过!

    前言作为Java程序员的你,不知道有没有踩过一些基础知识的坑。有时候,某个bug查了半天,最后发现竟然是一个低级错误。有时候,某些代码,这一批数据功能正常,但换了一批数据就出现异常了。有时候,你可能会看着某行代码目瞪口呆,心里想:这行代码为什么会出错?今天跟大家一起聊聊99%的Java程序员踩过,或

  • 躲不过JPA的坑之级联保存

    ​哈喽,大家好,我是指北君。又是全新的一周,同时也是踩坑的开始,那就先洗涤下自己的心灵吧。失败者的一大弱点在于放弃,成功的必然之路就是不断地重来一次。——托马斯·爱迪生。现在是不是热血沸腾了,马上开启今天的分享~前言相信大部分java小伙伴在日常开发过程中,在存储操作层都会选择更容易上手的jpa,各

  • 分享五个使用 JSON 相关方法的小技巧

    1、格式化默认的字符串化器还会缩小JSON,看起来很难看复制constuser={name:'John',age:30,isAdmin:true,friends:['Bob','Jane'],address:{city:'NewYork',country:'USA'}};console.log(JS

  • 如何编写干净的JavaScript代码?

    今天来分享几个编写干净的JavaScript代码的技巧!1.更好的命名在JavaScript中,良好命名的关键不在于最短的变量名,而在于最具描述性的变量名。(1)减少幻数将代码中的一些数字定义为一个常量,以使它更有意义,也便于后期的维护。❌复制for(i=0;i<8765;i++){}1.✅复

  • 链路追踪:项目整合Sleuth实现链路追踪

    在《SpringCloudAlibaba实战》专栏前面的文章中,我们实现了用户微服务、商品微服务和订单微服务之间的远程调用,并且实现了服务调用的负载均衡。也基于阿里开源的Sentinel实现了服务的限流与容错,并详细介绍了Sentinel的核心技术与配置规则。简单介绍了服务网关,并对SpringCl

  • TS 内置工具类型中的 keyof 操作符有啥用?

    你用过上图中Partial、Required、Record和Pick这些工具类型么?在这些工具类型内部都使用了keyof操作符,那么该操作符的作用是什么?如果不清楚的话,阅读完本期的内容,也许你就懂了。在JavaScript中,我们可以通过Object.keys方法来获取对象中的键,返回的是键组成的

  • SpringDataA 和 Mybaits 有什么区别,如何使用?

    阿粉之前一直都是使用传统的SSM进行开发,也就我们所说的Spring,SpringMVC,Mybatis,即使使用的SpringBoot,无非也就是这么集中,对于持久层框架的选择,也都是Mybaits,但是阿粉无意中发现,现在使用SpringDataJPA的公司也是非常的多的,所以,今天阿粉来讲一下

  • 一篇文章教会你使用 JavaScript 创建对象

    对象是由属性和方法的集合组成的数据类型。就像许多其他编程语言一样,可以将JavaScript中的对象与现实生活中的对象进行比较。一、JavaScript基元原始值是没有属性或方法的值。在JavaScript中,有5种原始类型:string、number、boolean、null、undefined。

  • Python 类型提示的初级入门

     【51CTO.com快译】Python语言被认为是一种最好的“动态但强类型”语言。类型不与事物的名称相关联,而是与事物本身相关联。这使得Python语言对开发人员来说既灵活又方便,因为如果只是将编写一个快速切逻辑性不强的脚本,就不必严格定义和跟踪变量类型。但是对于更大的项目来说,尤其是第

  • 分享14个Spring MVC顶级技巧!

     通常,在SpringMVC中,我们编写一个控制器类来处理来自客户端的请求。然后,控制器调用业务类来处理与业务相关的任务,然后将客户端重定向到逻辑视图名称,该名称由Spring的调度程序Servlet解析,以呈现结果或输出。这样就完成了典型的请求-响应周期的往返。今天整理了一下编写Spri

  • 有关于Java Map,应该掌握的8个问题

     前言最近几天看了几篇有关于JavaMap的外国博文,写得非常不错,所以整理了Javamap应该掌握的8个问题,都是日常开发司空见惯的问题,希望对大家有帮助;如果有不正确的地方,欢迎提出,万分感谢哈~本章节所有代码demo已上传github1、如何把一个Map转化为List日常开发中,我们

  • 构建一个即时消息应用(二):OAuth

    上一篇:模式。在这篇帖子中,我们将会通过为应用添加社交登录功能进入后端开发。社交登录的工作方式十分简单:用户点击链接,然后重定向到GitHub授权页面。当用户授予我们对他的个人信息的访问权限之后,就会重定向回登录页面。下一次尝试登录时,系统将不会再次请求授权,也就是说,我们的应用已经记住了这个用户。

  • 腾讯工作近十年大佬:不是我打击你!你可能真的不会写Java

    文章核心其实,本不想把标题写的那么恐怖,只是发现很多人干了几年Java以后,都自认为是一个不错的Java程序员了,可以拿着上万的工资都处宣扬自己了,写这篇文章的目的并不是嘲讽和我一样做Java的同行们,只是希望读者看到此篇文章后,可以和我一样,心平气和的争取做一个优秀的程序员。讲述方向由于一直从事移

推荐阅读