自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Java知音

专注于Java技术文章推送,欢迎关注

  • 博客(2377)
  • 资源 (14)
  • 问答 (3)
  • 收藏
  • 关注

转载 探秘 Spring 中 Bean 的注解宝典:解读存取 Bean 的相关注解及用法

存储Bean对象将对象存储在 Spring 中,有两种注解类型可以实现:类注解:@Controller、@Service、@Repository、@Component、@Configuration方法注解:@Bean@Controller(控制器存储)如下使用@Controller存储Bean代码:@ControllerpublicclassUserController{...

2023-07-28 10:05:54 64

转载 Docker+Jenkins(blueocean)+Gitee构建CICD流水线实战

需求: 使用jenkins搭建流水线实现持续集成持续部署一、编写docker-compose.yml安装jenkins, jenkins的版本是带blueocean插件的版本version:'3'services:mysql:image:mysql:8.0.29container_name:mysqlrestart:alwaysports:...

2023-07-27 10:05:59 379

转载 阿里开源!又一个序列化框架来了,性能炸裂!

Fury 是一个基于 JIT 动态编译和零拷贝的多语言序列化框架,支持Java/Python/Golang/JavaScript/C++等语言,提供全自动的对象多语言 / 跨语言序列化能力,和相比 JDK 最高 170 倍的性能。代码主仓库的 GitHub 地址为:https://github.com/alipay/fury官方网站:https://furyio.org背 景序列化是系统通信的...

2023-07-27 10:05:59 132

转载 超越 MyBatis-Plus,来领略一下 MyBatis-Flex 的优雅魅力吧!

一、Mybatis-Flex是什么?Mybatis-Flex 是一个优雅的 Mybatis 增强框架,它非常轻量、同时拥有极高的性能与灵活性。我们可以轻松的使用 Mybaits-Flex 链接任何数据库,其内置的 QueryWrapper^亮点 帮助我们极大的减少了 SQL 编写的工作的同时,减少出错的可能性。总而言之,MyBatis-Flex 能够极大地提高我们的开发效率和开发体验,让我们有更多...

2023-07-26 10:05:16 171

转载 线程数突增!领导:谁再这么写就滚蛋!

前言今天给大家分享一个线上问题引出的一次思考,过程比较长,但是挺有意思。今天上班把需求写完,出于学习(摸鱼)的心理上skywalking看看,突然发现我们的一个应用,应用内线程数超过900条,接近1000条,但是cpu并没有高涨,内存也不算高峰。但是敏锐的我还是立刻意识到这个应用有不妥,因为线程数太多了,不符合我们一个正常健康的应用数量。熟练的打出cpu dump观察,首先看线程组名的概览。从线程...

2023-07-25 16:45:32 96

转载 最近,准备跳槽的小伙伴可以看看...

大厂的面试题一直都是风向标,动态必须关注!想高效快速地拿到心仪 offer,一定要从面试官的角度出发,提前做好功课,了解市场的最新风向。我在和几位大佬详细沟通之后,终于整理出了这份最新的《2023 Java offer 收割指南》,涵盖各大厂最新面试题合集,部分题目还是有点难度的!建议大家都保存一份!!不论是厂内晋升、还是跳槽涨薪都不在话下!内容如下:大厂面试题真题解析(38页)JVM(183页)...

2023-07-24 14:06:37 14

转载 MyBatis-Plus 使用拦截器实现数据权限控制,很方便!

前言背景平时开发中遇到根据当前用户的角色,只能查看数据权限范围的数据需求。列表实现方案有两种,一是在开发初期就做好判断赛选,但如果这个需求是中途加的,或不希望每个接口都加一遍,就可以方案二加拦截器的方式。在mybatis执行sql前修改语句,限定where范围。当然拦截器生效后是全局性的,如何保证只对需要的接口进行拦截和转化,就可以应用注解进行识别因此具体需要哪些步骤就明确了创建注解类创建拦截器实...

2023-07-24 14:06:37 2065 1

转载 干掉前端!3分钟纯 Java 注解搭个管理系统,我直接好家伙

最近接触到个新项目,发现它用了一个比较有意思的框架,可以说实现了我刚入行时候的梦想,所以这里马不停蹄的和大家分享下。我刚开始工作接触的项目都还没做前后端分离,经常需要后端来维护页面,有时候觉得自己好像天生不适合干前端,你要是让我研究研究后端的技术,看个中间件源码啊,分析分析什么框架底层原理啊,这都问题不大,偶尔搞一下JS也可以。你要是让我写个css样式,那简直要命了,一点也提不起兴趣,不知道有没有...

2023-07-23 10:40:33 73

转载 23 届校招技术岗薪资汇总

阿里 2023字节 2023百度 2023美团 2023华为 2023滴滴 2023京东 2023网易 2022Bilibili 2022携程 2023小米 2023贝壳 2023中兴 2023比亚迪 2023宁德时代 2023现在的行情就是薪资和(学历+学校档次)基本是严格挂钩,同样的面试表现硕士薪资 > 本科,985 薪资 > 双非程序员真实一个奇妙的群体,网络上铺天盖地都是薪资分...

2023-07-22 11:30:34 264

转载 去除烦人的 NullPointerException 空指针异常,这样做才够优雅!

在文章的开头,先说下NPE问题,NPE问题就是,我们在开发中经常碰到的NullPointerException。假设我们有两个类,他们的UML类图如下图所示在这种情况下,有如下代码user.getAddress().getProvince();这种写法,在user为null时,是有可能报NullPointerException异常的。为了解决这个问题,于是采用下面的写法if(user!=null)...

2023-07-22 11:30:34 186

转载 MySQL 巨坑:永远不要在 MySQL 中使用 UTF-8!!

最近我遇到了一个bug,我试着通过Rails在以“utf8”编码的MariaDB中保存一个UTF-8字符串,然后出现了一个离奇的错误:Incorrect string value: ‘😃 <…’ for column ‘summary’ at row 1我用的是UTF-8编码的客户端,服务器也是UTF-8编码的,数据库也是,就连要保存的这个字符串“???? <…”也是合法的UTF-8。...

2023-07-21 10:06:03 62

转载 Mybatis-Plus 使用技巧与隐患

前言MP 从出现就一直有争议 感觉一直 都存在两种声音like:很方便啊 通过函数自动拼接Sql 不需要去XML 再去使用标签 之前一分钟写好的Sql 现在一秒钟就能写好 简直不要太方便dislike:侵入Service层 不好维护 可读性差 代码耦合 效率不行 sql优化比较难之前也有前辈说少用MP 理由就是不好维护 但是这个东西真的是方便 只要不是强制不让用 就还是会去使用 存在集合里 最...

2023-07-21 10:06:03 59

转载 SaaS模式下,多租户系统数据隔离实现方案

1.背景开发过SaaS系统平台的小伙伴一定对多租户这个概念不陌生,简单来说一个租户就是一个公司客户,多个租户共用同一个SaaS系统,一旦SaaS系统不可用,那么所有的租户都不可用。你可以这么理解SaaS系统就像一栋大楼,而租户就是大楼里面租办公楼层的公司,平时每家公司做着自己的业务,互不干扰,但是一旦大楼的电梯坏了,那么影响到的就是所有的公司。多租户问题,其是一种架构设计方式,就是在一台或者一组服...

2023-07-20 10:05:57 456

转载 吹一波!30 分钟把微信小程序搬进自有 APP

小程序≠微信小程序说到小程序,大部分的读者第一反应,可能是微信小程序、支付宝小程序。确实,以前小程序这种生态只有巨头才玩的起。但现在,任何企业,甚至是个人,都能低成本地在自己的App添加运行小程序的能力,可以自主建设小程序生态、发布管理小程序内容。小程序类技术的企业商用,意味着:企业拥有了和互联网平台们类似的技术,能够以小程序这种技术载体、内容格式来开发自己的商业软件,从而享受这种技术带来的敏捷、...

2023-07-20 10:05:57 135

转载 一文看懂 Pingora 比 Nginx 强在哪?

Cloudflare公司去年宣布弃用nginx,转用自研的新一代方向代理服务Pingora,并号称比nginx更快、更高效、更安全,下面通过Cloudfare官方网站的一篇文章来了解下Pingora比Nginx强在哪里。简介今天,我们很高兴有机会在此介绍 Pingora,这是我们使用 Rust 在内部构建的新 HTTP 代理,它每天处理超过 1 万亿个请求,提高了我们的性能,并为 Cloudfla...

2023-07-19 10:05:59 1469

转载 10 个优化技巧,减少 Docker 镜像大小

在本文中,我们将看到减少 docker 镜像大小的方法。什么是 docker?Docker 是一种容器引擎,可以在容器内运行一段代码。Docker 镜像是在任何地方运行您的应用程序而无需担心应用程序依赖性的方式。要构建镜像,docker 使用一个名为 Dockerfile 的文件。Dockerfile 是一个包含许多指令(RUN、COPY、EXPOSE 等)的文件。成功执行这些命令后,docker...

2023-07-19 10:05:59 145

转载 还在用 Navicat?阿里又开源了一款数据库神器,太炸裂了!

Chat2DB 是一款有开源免费的多数据库客户端工具,支持windows、mac本地安装,也支持服务器端部署,web网页访问。和传统的数据库客户端软件Navicat、DBeaver 相比Chat2DB集成了AIGC的能力,能够将自然语言转换为SQL,也可以将SQL转换为自然语言,可以给出研发人员SQL的优化建议,极大的提升人员的效率,是AI时代数据库研发人员的利器,未来即使不懂SQL的运营业务也可...

2023-07-18 10:05:37 375

转载 Redis,今年火得离谱!

项目中几乎无处不在,面试时又100%会问到的技术点,非Redis莫属了。Redis绝对是一个后端程序员又爱又恨的技术。出去面试,只要提到自己看过或者用过Redis,面试官对你的兴趣立马来了。接下来不出意外就能围绕“你做的项目和用Redis干了什么”聊上半个小时……但除了缓存,大部分人对Redis其他的数据类型和使用场景用的不多,回答具体和对细节的了解阐述方面还是有很大难度。而这又恰好是让面试官对你...

2023-07-18 10:05:37 67

转载 SpringBoot 实现扫码登录

最近有个项目涉及到 websocket 实现扫码登录,看到一篇不错的技术文,分享一下。一、首先咱们需要一张表这表是干啥的呢?就是记录一下谁扫码了。谁登录了。User_Token表字段如下:uuid : 用于确保唯一性userId :谁登录的loginTime :登录时间createTime :创建时间 用于判断是否过期state:是否二维码失效 0有效 1失效二、角色都有哪些咱们还需要分析一下子。...

2023-07-17 10:05:12 105

转载 Arrays.asList() 隐藏的陷阱,你避开了吗?

在Java中,我们经常需要将数组转换为List来方便地进行操作。Arrays.asList()方法是一种常见的方式,但是它存在一个不太常见但需要注意的坑。本文将深入探讨Arrays.asList()的使用,揭示其中的陷阱,并提供解决方案。Arrays.asList()方法介绍Arrays.asList()方法是将数组转换为List的方法,它返回一个List对象,但这个List对象并不是java.u...

2023-07-16 16:40:36 267

转载 40 张配图,硬核详解 K8s 中如何玩转微服务项目!

随着互联网的发展,后端服务和容器编排技术的日益成熟,微服务成为了后端服务的首选,Kubernetes 也已经成为目前容器编排的事实标准, 微服务拥抱容器时代已经来临。笔者结合自己的经验,写了这篇 微服务+ Kubernetes 入门宝典,希望能够抛砖引玉。能让大家了解 微服务和 Kubernetes如何配合。要义:本文会从设计开始,设计一个简单的前后端分离的项目,并将它部署在kubernetes集...

2023-07-16 16:40:36 616

转载 大幅提效 | 18个一线工作中常用 Shell 脚本(纯干货)

1、检测两台服务器指定目录下的文件一致性#!/bin/bash######################################检测两台服务器指定目录下的文件一致性######################################通过对比两台服务器上文件的md5值,达到检测一致性的目的dir=/data/webb_ip=192.168.88....

2023-07-15 16:40:47 152

转载 一款基于 Spring Cloud Alibaba 的微服务架构,Saas开发平台

今天给大家推荐一款多租户的低代码平台,Saas开发平台:MateCloud。简介MateCloud是一款基于Spring Cloud Alibaba的微服务架构。目前已经整合Spring Boot 2.7.0、 Spring Cloud 2021、Spring Cloud Alibaba 2021、Spring Security Oauth2、Feign、Dubbo、JetCache、Rocket...

2023-07-15 16:40:47 193

转载 18 张图,总结 Java 容器化的最佳实践

一、系统选择关于最基础的底层镜像, 通常大多数我们只有三种选择: Alpine、Debian、CentOS; 这三者中对于运维最熟悉的一般为 CentOS, 但是很不幸的是 CentOS 后续已经不存在稳定版, 关于它的稳定性问题一直是个谜一样的问题; 这是一个仁者见仁智者见智的问题, 我个人习惯是能不用我绝对不用 ????.排除掉 CentOS 我们只讨论是 Alpine 还是 Debian; 从镜像...

2023-07-14 10:05:35 104

转载 1.7W字 Jenkins 保姆级教程

什么是流水线jenkins 有 2 种流水线分为声明式流水线与脚本化流水线,脚本化流水线是 jenkins 旧版本使用的流水线脚本,新版本 Jenkins 推荐使用声明式流水线。文档只介绍声明流水线。声明式流水线在声明式流水线语法中,流水线过程定义在Pipeline{}中,Pipeline 块定义了整个流水线中完成的所有工作,比如参数说明:• agent any:在任何可用的代理上执行流水线或它...

2023-07-14 10:05:35 82

转载 最新最全,240 页字节、美团、滴滴 Java 面试真题及答案整理

最近感慨面试难的人越来越多了,一方面是市场环境,更重要的一方面是企业对Java的人才要求越来越高了。基本上这样感慨的分为两类人,第一,虽然挂着3、5年经验,但肚子里货少,也没啥拿得出手的项目,自己还意识不到问题;第二,自身有技术追求,但欠点儿火候,多练习多吸收知识,锤炼一下问题不大。说实话,从打算跳槽到准备简历再到初期面试,很多人其实都处于“心虚”的状态。你回忆一下,是不是盯着简历上的“了解、熟悉...

2023-07-13 10:05:29 103

转载 Redis 架构演化之路

这篇文章我想和你聊一聊 Redis 的架构演化之路。现如今 Redis 变得越来越流行,几乎在很多项目中都要被用到,不知道你在使用 Redis 时,有没有思考过,Redis 到底是如何稳定、高性能地提供服务的?我使用 Redis 的场景很简单,只使用单机版 Redis 会有什么问题吗?我的 Redis 故障宕机了,数据丢失了怎么办?如何能保证我的业务应用不受影响?为什么需要主从集群?它有什么优势?...

2023-07-13 10:05:29 46

转载 Spring在多线程环境下如何确保事务一致性

问题在现我先把问题抛出来,大家就明白本文目的在于解决什么样的业务痛点了:publicvoidremoveAuthorityModuleSeq(IntegerauthorityModuleId,IAuthorityServiceiAuthorityService,IRoleAuthorityServiceiRoleAuthorityService){//1.查询出当前资源模...

2023-07-13 10:05:29 276

转载 SpringBoot 项目使用 Redis 对用户 IP 进行接口限流

一、思路使用接口限流的主要目的在于提高系统的稳定性,防止接口被恶意打击(短时间内大量请求)。比如要求某接口在1分钟内请求次数不超过1000次,那么应该如何设计代码呢?下面讲两种思路,如果想看代码可直接翻到后面的代码部分。1.1 固定时间段(旧思路)1.1.1 思路描述该方案的思路是:使用Redis记录固定时间段内某用户IP访问某接口的次数,其中:Redis的key:用户IP + 接口方法名Redi...

2023-07-12 10:05:23 408

转载 52 类 110 个常用 Java 组件和框架整理(VIP典藏版)

以下排序是按照从技术组件到开发框架到代码工具,也有一些实在不好分类的,就放到最后了。WEB 容器Tomcathttps://tomcat.apache.org/Jettyhttps://www.jetty.com/JBosshttps://www.jboss.org/Resinhttps://caucho.com/products/resin数据库H2https://h2database.com/...

2023-07-12 10:05:23 142

转载 谈谈 SpringBoot 业务组件化开发思路

1、背景首先,谈一谈什么是“springBoot业务组件化开发”,最近一直在开发一直面临这一个问题,就是相同的业务场景场景在一个项目中使用了,又需要再另外一个项目中复用,一遍又一遍的复制代码,然后想将该业务的代码在不同的项目中维护起来真的很难。最开始想用微服务的方式来解决这个问题,但是觉得一套完整的微服务太重,而且目前微服务还处于振荡期(去年的微服务解决方案,今年国内直接都换成了阿里的技术解决方案...

2023-07-11 10:05:29 119

转载 【UML】如何画好数据流图基础教程

前言数据流图(Data Flow Diagram, DFD)是一种便于用户理解和分析系统数据流程的图形工具,他摆脱了系统和具体内容,精确的在逻辑上描述系统的功能、输入、输出和数据存储等,是系统逻辑模型的重要组成部分一、数据流图组成部分数据流: 是由一组固定成分的数据组成,表示数据的流向,除了流向数据存储或从数据存储流出的数据不必命名外,每个数据流必须要有一个合适的名字,以反映该数据流的含义加工: ...

2023-07-10 10:05:07 310

转载 全网最全面的『分布式微服务权限设计』

一、微服务权限设计先说下为什么写这篇文章,因为实际项目需要,需要对我们现在项目页面小到每个部件都要做权限控制,然后查了下网上常用的权限框架,一个是shrio,一个是spring security。看了下对比,都说shrio比较轻量,比较好用,然后我也就选择了shrio来做整个项目的权限框架,同时结合网上大佬做过的一些spring boot+shrio整合案例。只能说大家图都画的挺好的…,看着大家的...

2023-07-09 16:40:14 201

转载 同一份数据,Redis为什么要存两次?

前言在 Redis 中,有一种数据类型,当在存储的时候会同时采用两种数据结构来进行分别存储,那么 Redis 为什么要这么做呢?这么做会造成同一份数据占用两倍空间吗?五种基本类型之集合对象Redis 中的集合对象是一个包含字符串类型元素的无序集合,集合中元素唯一不可重复。集合对象的底层数据结构有两种:intset 和 hashtable。内部通过编码来进行区分:intset 编码intset(整数...

2023-07-09 16:40:14 70

转载 一招搞定外部请求,这款 HTTP 客户端框架真的很强大!

一、Forest1.1 业务需求一般情况下是后端提供接口,前端调用,解决需求,但是有的时候为了方便,复用别人的接口(网上的,公共的第三方接口(短信、天气等)),就出现了后端调用后端接口的情况。此外,因为业务关系,要和许多不同第三方公司进行对接。这些服务商都提供基于http的api,但是每家公司提供api具体细节差别很大。有的基于RESTFUL规范,有的基于传统的http规范;有的需要在header...

2023-07-08 11:40:25 990

转载 一款可以替代 Postman 的 IDEA 神级插件,更快更高效!

Restful Fast Request 是 IDEA 版 Postman,它是一个强大的 restful api 工具包插件,可以根据已有的方法帮助您快速生成 url 和 params。Restful Fast Request = API 调试工具 + API 管理工具 + API 搜索工具。它有一个漂亮的界面来完成请求、检查服务器响应、存储你的 api 请求和导出 api 请求,插件帮助你在 ...

2023-07-07 10:06:02 364

转载 如何去阅读源码,我总结了18条心法

这篇文章我准备来聊一聊如何去阅读开源项目的源码。在聊如何去阅读源码之前,先来简单说一下为什么要去阅读源码,大致可分为以下几点原因:最直接的原因,就是面试需要,面试喜欢问源码,读完源码才可以跟面试官battle提升自己的编程水平,学习编程思想和和代码技巧熟悉技术实现细节,提高设计能力...那么到底该如何去阅读源码呢?这里我总结了18条心法,助你修炼神功学好JDK 身为一个Javaer,不论要不要阅读...

2023-07-07 10:06:02 98

转载 SpringBoot 快速实现 IP 地址解析

本篇带大家实践在spring boot 项目中获取请求的ip与详细地址,我们的很多网站app 中都已经新增了ip 地址显示,大家也可以用在自己的开发中,显得更高级。引入如果使用本地ip 解析的话,我们将会借助ip2region,该项目维护了一份较为详细的本地ip 地址对应表,如果为了离线环境的使用,需要导入该项目依赖,并指定版本,不同版本的方法可能存在差异。<!--ip库-->...

2023-07-06 10:05:37 79

转载 如何使用枚举来消除 if/else(进阶版)

今天,准备重新学习一下 Java 中的枚举类型。为什么现在要去重新学习呐?因为在刚开始学习 Java 的时候,对于枚举这一块的学习不太重视,工作之后呐,又基本上没用过枚举。导致对枚举这个数据类型不太明白,有时候看到别人的代码里用的枚举类型以及相关操作,觉得用的还挺好,就有了重新学习一下的冲动。话不多说,开始学习!定义枚举是什么意思呐?百度百科的说法是这样的:在数学和计算机科学理论中,一个集的枚举是...

2023-07-06 10:05:37 63

转载 简化本地 Feign 调用,老手教你该怎么玩

在平常的工作中,OpenFeign作为微服务间的调用组件使用的非常普遍,接口配合注解的调用方式突出一个简便,让我们能无需关注内部细节就能实现服务间的接口调用。但是工作中用久了,发现Feign也有些使用起来麻烦的地方,下面先来看一个问题,再看看我们在工作中是如何解决,以达到简化Feign使用的目的。先看问题在一个项目开发的过程中,我们通常会区分开发环境、测试环境和生产环境,如果有的项目要求更高的话,...

2023-07-05 10:05:30 23

icepdf包文件

Java实现PDF转换为图片,图片的裁剪,图片的拼接,图片再转回PDF功能实现所需要的jar,包括五个:icepdf的四个和itext的一个。

2017-09-20

操作PDF的jar包

使用iText操作PDF,你可能需要的几个包!

2017-08-09

springMVC三种数据转换的Demo

springMVC三种数据转换方法的Demo

2017-07-19

CRM客户关系管理系统

jsp+servlet+Oracle写的客户关系管理系统,练习项目,有的地方可能有缺陷。对实际开发作用不大,对于练手,课程设计之类的绰绰有余。不缺积分,设置4分主要防止伸手党,没积分的私信发百度云链接

2017-06-26

json开发包

spring等Javaweb开发中,使用json传值必备包

2017-05-25

H5实现多图片预览上传,可点击可拖拽

H5实现多图片预览上传,可点击可拖拽,样式漂亮,接口简单

2017-04-20

simditor富文本编辑器控件

simditor富文本编辑器控件,轻巧强悍,可嵌入网站中直接使用

2017-04-13

ServletContextListener完成在线人数统计和显示人员列表

ServletContextListener完成在线人数统计和显示人员列表

2017-04-12

smartupload.jar

smartupload.jar 文件上传必备包

2017-04-08

jQuery最全版本类库资源(含各个版本)

jquery类库资源,包含目前各个版本,一次下载,需要哪个就可以用哪个,不必四处找。

2016-12-15

Java连接MySQL的驱动包mysql-connector-java-5.1.34-bin.jar

Java连接MySQL的驱动包mysql-connector-java-5.1.34-bin.jar,在Javaweb项目中一般放置在WebRoot/WEB-INF/lib/目录下,Java连接MySQL必不可少。

2016-12-11

博客管理系统

使用jsp+servlet+MySQL开发的具有基本功能的博客开发系统,适合新手学习,继续完善的一个项目,深入了解jsp+servlet有利于学习各种开发框架。 实现了发布博文,对博文,博文分类,博文评论,注册用户进行管理等等功能。

2016-12-11

仿QQ可点击滑动的tab界面

模仿QQ可点击滑动的tab界面,简单,适合新手下载学习

2016-10-26

仿微信QQTab界面,可点击可滑动

开发工具为eclipse,代码已经经过测试,可以运行,直接可以导入测试学习,简单,适合新手学习!

2016-10-26

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除