后端开发
Java 标签描述

大家好,我是R哥。 说说最近的面试辅导,有个学员进了某个知名互联网公司,拿到了35K14薪的好成绩,有不少粉丝留言问我,现在行情这么差,他是怎么做到的? 这篇拿他这个案例完整回顾一下吧,我管他叫小Y吧。 背景沟通 说下小Y的基本情况吧: 小Y工作5年+,空窗期2个月+,5年干了3家单位,学历不错,但跳槽略显频繁,他先后面了小米、贝壳、阿里、字节,都以失败告终。 面试这么多公司都没有下文,让他有点打击自信,慌不择路,于是他在3月11日那天找我咨询面试辅导: 看了他的简历,发现问题还挺大: 1、工作5年+,还只是掌握一些Java基础性的技术,很多关键技术还处于「了解」水平,这与他的工作年限...

  d62ENPHvIsHf   3天前   9   0   0 Java

10个最佳实践,让您像专业人士一样编写SpringBootAPI,并结合编码示例和解释: 1.RESTfulAPI设计原则: 清晰一致的资源命名:使用准确反映API管理的资源的名词(例如,/products、/users)。 @GetMapping("/products/{id}") publicResponseEntity<Product>getProductById(@PathVariableLongid){ //... } 标准化HTTP方法:遵循CRUD操作的RESTful约定(CREATE:POST、READ:GET、UPDATE:PUT、DELETE:DELET...

  lnZqfDbuKjjk   3天前   10   0   0 Java

前言 整理这个官方翻译的系列,原因是网上大部分的tomcat版本比较旧,此版本为v11最新的版本。 开源项目 从零手写实现tomcatminicat别称【嗅虎】心有猛虎,轻嗅蔷薇。 系列文章 webserverapachetomcat11-01-官方文档入门介绍 webserverapachetomcat11-02-setup启动 webserverapachetomcat11-03-deploy如何部署 webserverapachetomcat11-04-manager如何管理? webserverapachetomcat11-06-HostManagerApp-TextInterfa...

  cO5bqZfFaDhk   3天前   10   0   0 Java

【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权)https://www.cnblogs.com/cnb-yuchen/p/18162522出自【进步于辰的博客】 线程生命周期与进程有诸多相似,所以我们很容易将两者关联理解并混淆,一些细节之处确有许多不同,因为线程调度与进程调度虽都由CPU完成,但两者并不相同。特意耗费一些时间,系统地对线程生命周期与线程通信进行梳理、整理。参考笔记三,P62、P63.1。 目录 1、线程生命周期 1.1JDK1.8版本 1.2早期版本(JDK1.2之前) 1.3落到实处 2、线程通信 2.1使用volatile关键字 2...

  BsXiF6ZZLsBT   3天前   16   0   0 Java

Spring的IOC(控制反转)是一种设计模式,它允许开发者将对象的创建和管理交给Spring框架来完成。在Spring中,IOC允许开发者将对象依赖关系从代码中分离出来,从而使代码更加灵活、可重用和易于管理。 IoC全称InverseofControl(反向控制或控制反转)。 在类和类之间存在控制权,控制权指的是对象的创建和使用,比如有类A和类B,我们之前的做法是在A中调用B,那么控制权就在A中,这样做的耦合度较高,如果修改了B,A也要做相应修改。 classA{ } classB{ //B需要将A的实例new出来,也就是我们说的控制privateAa=newA(); publicvo...

  7jbvulUsT3Ua   3天前   10   0   0 Java

1.相关概念 程序(program):为完成特定任务,用某种语言编写的一组指令的集合。即指一段静态的代码,静态对象 进程(process):程序的一次执行过程,或是正在内存中运行的应用程序。如:运行中的QQ,运行中的网易音乐播放器。 线程(thread):进程可进一步细化为线程,是程序内部的一条执行路径。一个进程中至少有一个线程。 进程同一时间若并行执行多个线程,就是支持多线程的。 2.创建和启动线程  2.1方式1:继承Thread类 Java通过继承Thread类来创建并启动多线程的步骤如下: 定义Thread类的子类,并重写该类的run()方法,该run()方法的方法体就代表...

  ijEHlwWobBkw   13小时前   7   0   0 Java

创作缘由 平时使用tomcat等web服务器不可谓不多,但是一直一知半解。 于是想着自己实现一个简单版本,学习一下tomcat的精髓。 怎么实现一个tomcat呢? Tomcat就像是一个用Java语言搭起来的大舞台,专门用来演出那些用Java编写的网页剧。想要玩得转Tomcat,你最好对Java语言有所了解。 搭建Tomcat的过程,就像是搭积木。首先,你得用Java写一个启动类,这个类就是整个服务器的大脑。然后,用Java的ServerSocket这个工具来监听网络上的敲门声,也就是连接请求。一旦有人来敲门,服务器就得看看人家想要啥,然后根据需求给出回应。 接下来,我们要让服务器学会处理网...

  cO5bqZfFaDhk   2天前   5   0   0 Java

docker的安装 安装Docker的步骤取决于您的操作系统。以下是在不同操作系统中安装Docker的简要步骤和示例代码: Ubuntu sudoapt-getupdate sudoapt-getinstalldocker-cedocker-ce-clicontainerd.io Debian sudoapt-getupdate sudoapt-getinstalldocker-cedocker-ce-clicontainerd.io CentOS sudoyuminstall-yyum-utils sudoyum-config-manager--add-repohttps://downl...

  DKE3T9FhmJBk   13小时前   6   0   0 Java

前言 在实际开发过程中,如果后端需要启用https访问,通常项目启动后配置nginx代理再配置https,前端调用时高版本的chrome还会因为证书未信任导致调用失败,通过摸索整理一套开发调试下的https方案,特此分享 后端配置 生成HTTPS密钥 keytool-genkeypair-aliastomcat-keyalgRSA-keysize2048-ext"SAN=IP:192.168.1.14"-keypassabcd@1234-keystoreframe.jks-storepassabcd@1234-validity360000 SAN需要设置你自己电脑的固定ip 配置SSL访问...

  pAKQgyUlaK7x   2天前   9   0   0 Java

为什么会出现跨域问题 存在浏览器同源策略,所以才会有跨域问题。那么浏览器是出于何种原因会有跨域的限制呢。其实不难想到,跨域限制主要的目的就是为了用户的上网安全。 同源策略导致的跨域是浏览器单方面拒绝响应数据,服务器端是处理完毕并做出了响应的。 什么是同源策略 一个url由三部分组成:协议,域名(ip地址),端口。 只有当协议,域名,端口都一致的时候,才被称为同源。 而同源策略规定,只有发送请求的那一边和接受请求的那一边处于同源的情况下,浏览器才会接受响应。 常见的跨域场景: 而当我们的请求不符合同源策略的时候。往往会出现以下错误👇 跨域的常见解决方案 jsonp jq的ajax自带解决跨...

  iDbwdJeVvNV7   13小时前   6   0   0 Java

一般来说Maven都是配合着idea一起使用,下载依赖速度慢就去网上找个镜像配置一下,但总会遇到莫名其妙的问题,比如镜像源不生效、Errorreadingfilepom.xml等等。今天详细讲解一下maven配置文件settings.xml的配置方法。 小知识 maven的配置文件存在于两个地方,一个是用户目录下的.m2目录:${user.home}/.m2/;另一个是maven程序目录下的conf目录下:C:\ProgramFiles\apache-maven-3.9.6\conf(假设maven程序被解压到了C:\ProgramFiles\)如果没有指定使用哪一个settings配置,ma...

  avATSHLupGTm   2天前   8   0   0 Java

这个文章主要介绍一下@AutoConfigureAfter在spring框架中的作用,在使用过程中,很多开发人员在使用它的时候都出现了问题,问题比较多的就是它们的注册顺序总不是我们预期的,下面介绍一下正常的使用方法。 @AutoConfigureAfter用在配置类上面,即需要在@Configuration修饰的类上,而不是@Component上面。 这些配置类,需要在spring.factories上面进行注册 @AutoConfigureAfter影响的是配置类中@Bean声明的方法,而不是配置类本身 代码测试 祖父配置 @Configuration @AutoConfigureBef...

  2xk0JyO908yA   13小时前   9   0   0 Java

1.JUnit最佳实践指南 原文: https://howtodoinjava.com/best-practices/unit-testing-best-practices-junit-reference-guide/ 我假设您了解 JUnit 的基础知识。如果您没有基础知识,请首先阅读(已针对JUnit5更新)。现在,我们将介绍在编写测试用例时必须考虑的 junit 最佳实践。 编写糟糕的单元测试非常容易,这会给项目增加很少的价值,同时又会天文数字地增加代码更改的成本。 TableofContents Unittestingisno...

  T3It887JLZgD   2天前   9   0   0 Java

前言 各位好久不见,有些小伙伴可能知道大概1年多以前我开始维护log-record项目(Java业务操作日志记录框架)。这期间项目陆陆续续更新迭代、发布新版本,一路走来也踩了不少坑。这篇文章主要是想给希望开始写开源项目的同学们一些开源项目维护的实操建议,也算是给自己梳理一下做一个开源项目需要注意的事项。 此外,本文讨论的个人开源项目仅限于代码为主的项目。像一些新闻、教程、电子书、工具集锦类开源仓库,不在本文的讨论范围内。 当然了,如果你已经是一个经验丰富的开源项目maintainer,那么请赶紧关掉这篇文章,并且联系我,让我好好抱大腿:) 确定项目的主题和方向 首先,我们要重点探讨如何准备个人...

  8iOLMbnBQNfT   2天前   12   0   0 Java

Spring当中的Bean作用域 @ 目录 Spring当中的Bean作用域 每博一文案 1.Spring6当中的Bean的作用域 1.2singleton默认 1.3prototype 1.4Spring中的bean标签当中scope=属性其他的值说明 1.5自定义作用域,一个线程一个Bean 2.总结: 3.最后: 每博一文案 青年,青年!无论受怎样的挫折和打击,都要咬着牙关挺住,因为你们完全有机会重建生活;只要不灰心丧气,每一次挫折就只不过是通往新境界的一块普通绊脚石,而绝不会置人于死命 _____路遥《平凡的世界》 飞机上邻座的姐姐 独自一人坐飞机...

  bVJlYTdzny4o   13小时前   7   0   0 Java

来源:juejin.cn/post/7259249904777838629 前言 业务诉求:考虑到数据库数据日渐增多,导出会有全量数据的导出,多人同时导出可以会对服务性能造成影响,导出涉及到mysql查询的io操作,还涉及文件输入、输出流的io操作,所以对服务器的性能会影响的比较大;结合以上原因,对导出操作进行排队; 刚开始拿到这个需求,第一时间想到就是需要维护一个FIFO先进先出的队列,给定队列一个固定size,在队列里面的人进行排队进行数据导出,导出完成后立马出队列,下一个排队的人进行操作;还考虑到异步,可能还需要建个文件导出表,主要记录文件的导出情况,文件的存放地址,用户根据文件列表情况...

  d62ENPHvIsHf   13小时前   8   0   0 Java

优秀且经验丰富的Java开发人员的特征之一是对API的广泛了解,包括JDK和第三方库。我花了很多时间来学习API,尤其是在阅读了EffectiveJava3rdEdition之后,JoshuaBloch建议在Java3rdEdition中使用现有的API进行开发,而不是为常见的东西编写新的代码。 这对我来说很有意义,因为这些第二方库都经过了测试。在本文中,我将分享Java开发人员应该熟悉的一些最有用和最基本的库和API。顺便说一句,我没有包括Spring和Hibernate这样的框架,因为它们是众所周知的并且具有特定的功能。 我通常会提供用于日常工作的有用库,例如Log4j等日志记录库,Jac...

  d62ENPHvIsHf   2天前   19   0   0 Java

前言 整理这个官方翻译的系列,原因是网上大部分的tomcat版本比较旧,此版本为v11最新的版本。 开源项目 从零手写实现tomcatminicat别称【嗅虎】心有猛虎,轻嗅蔷薇。 系列文章 webserverapachetomcat11-01-官方文档入门介绍 webserverapachetomcat11-02-setup启动 webserverapachetomcat11-03-deploy如何部署 webserverapachetomcat11-04-manager如何管理? webserverapachetomcat11-06-HostManagerApp-TextInterfa...

  cO5bqZfFaDhk   13小时前   8   0   0 Java

GraalVM GraalVM是一种高性能、通用的虚拟机,由Oracle公司开发。它支持多种编程语言(如Java、JavaScript、Python等),并提供了即时编译器、AOT编译器等功能。GraalVM的主要特点包括: 高性能:GraalVM提供了优秀的即时编译器,能够将程序在运行时快速编译成本地代码,从而提高执行效率。 多语言支持:除了支持Java之外,GraalVM还支持其他多种编程语言,可以在同一个虚拟机中运行不同语言的程序。 AOT编译:GraalVM支持提前(AheadofTime)编译,能够将程序编译成本地可执行文件,减少启动时间和内存占用。 嵌入式引擎:GraalVM提供...

  2xk0JyO908yA   13小时前   8   0   0 Java

JAVA下唯一一款搞定OLTP+OLAP的强类型查询这就是最好用的ORM相见恨晚 介绍 首先非常感谢FreeSQL提供的部分源码,让我借鉴了不少功能点,整体设计并没有参考FreeSQL(因为java压根没有expression所以没办法参考)只是在数据库方言上FreeSQL提供的SQL让我少走了很多弯路,所以才让easy-query可以走的这么迅速 丑话说在前头,这是java下面唯一一款可以完全替代SQL的强类型ORM,完美支持OLTP和OLAP语法筛选记住是唯一一款 想体验完整版请查看文档博客篇幅有限见谅本次仅展示OLTP的对象关联查询 easy-query 文档地址https://xuej...

  Rk11yUb7j1pw   13小时前   8   0   0 Java