spring-boot配置log4j日志-编程思维
spring boot默认使用logback日志记录工具,修改为log4j: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId>
morethink program
spring boot默认使用logback日志记录工具,修改为log4j: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId>
一、SpringMvc学习笔记1、使用SpringMvc时需在web.xml文件中添加配置 <servlet> <servlet-name>springMVC</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-cl
问题回溯 2023年Q2某日运营反馈一个问题,商品系统商家中心某批量工具模板无法下载,导致功能无法使用(因为模板是动态变化的) 商家中心报错(JSON串): {"code":-1,"msg":"失败"} 负责的同事看到失败后立即与我展开讨论(因为不是关键业务,所以不需要回滚,修复即可),我们发现新功能模板下载的代码与之前的代码有所不同,恰好之前的功能又可以正常运行,所以同事对现有代码进行改造然
前言 先理解 DI 依赖注入再理解 Ioc 容器更好。这两个东西必须要放在一起讲,但是又要分好顺序去理解。理解之前不能先看概念,非常地抽象,应该从“为什么”起理解。总而言之,这个两个东西的出现是为了降低程序的耦合度。 DI 依赖注入 Java 里面有一个东西叫作“接口”,还有一个东西叫“抽象类”。不过这里讲的是“接口”,不知道你是否听说过“面向接口编程”。我的理解是,面向对象编程的同时,也要面向
接口的概念 接口(interface)是一种在面向对象编程中非常重要的概念,它有助于提高程序的可扩展性和灵活性。以下是接口如何体现程序高扩展性的几个方面: 分离接口与实现:接口定义了类应该具备的行为,但不提供具体的实现细节。这使得你可以将接口与其实现分离开来。当你需要更改或扩展程序的功能时,你可以创建新的实现类,而无需修改现有的代码。 多态性:接口允许多个类实现相同的接口,这意味着你可以通过接
大家好,我是三友~~ 今天来扒一扒Spring在启动过程中核心的12个步骤 之所以来写这篇文章,主要是来填坑的 之前在三万字盘点Spring 9大核心基础功能这篇文章的末尾中给自己挖了一个坑,提了一嘴有机会要写这么一篇文章 但是由于Spring启动过程并不复杂,所以后面就没写了 不过,好巧不巧,刚刚好有兄弟来催更了,那么此时这个机会就来了,这篇文章也就有了 公众号:三友的java日记 前言
SpringBoot 3 项目快速构建如何快速搭建一个简单的SpringBoot项目 使用SpringBoot官方提供的脚手架工具Spring Initializr 使用阿里云提供的脚手架工具阿里云脚手架 本文使用阿里云脚手架工具来搭建一个简单的SpringBoot项目 1.打开阿里云脚手架工具构建方式选择Maven Project开发语言选择JavaSpr
1.情景展示 在java当中实现定时任务,主要有两种。 一种是通过java源码实现,另一种是通过spring框架来实现。 由于我们现在基本上使用的都是spring框架(SpringMVC、SpringBoot),况且,使用spring实现定时任务,代码更加简洁。 那么,如何是想spring来实现呢? 2.具体分析 使用spring实现,具体有两种。 一种是在spring框架中,手动配置定时任
前言 BeanUtils.copyProperties十有八九是你这些年工作中用的很多的其中一个,不管是Apache的还是Spring的。 网上的解释浩如烟海,我这边用一个超简单的例子直观展示给你看。 以后就记住了,能不用就不用。 正文 1、网上的解释 我收纳了几个网上最典型的解释,也就是这个工具类的缺点,可以先回顾一下。 大致如下: 1、只能浅拷贝,简单理解就是只复制的引用,
Solon 是什么? Java 生态型应用开发框架。它从零开始构建,有自己的标准规范与开放生态(历时五年,已有全球第二级别的生态规模)。与其他框架相比,它解决了两个重要的痛点:启动慢,费内存。2023年6月,Maven 单月下载量突破200万。 解决痛点? 由于Solon Bean容器的独特设计,不会因为扩展依赖变多而启动很慢(开发调试时,省时、爽快)!以知名开源项目“小诺”为例: “snow
本文分享自华为云社区《哪些场景下Spring的事务会失效?》,作者:冰 河 。 在日常工作中,如果对Spring的事务管理功能使用不当,则会造成Spring事务不生效的问题。而针对Spring事务不生效的问题,也是在跳槽面试中被问的比较频繁的一个问题。 今天,我们就一起梳理下有哪些场景会导致Spring事务失效。 Spring事务不生效总览 简单来说,Spring事务会在几种特定的场景下失效,如
周末的时候,有一位小伙伴提了一些关于 ConcurrentHashMap 的问题,都是他最近面试遇到的。原提问如下: 整个提问看着非常复杂,其实归纳来说就是两个问题: ConcurrentHashMap 为什么 key 和 value 不能为 null? ConcurrentHashMap 能保证复合操作的原子性吗? 下面我会以此提供这两个问题的详细答案,希望对你有帮助。 Concurr
前言 蛮早前有些过关于线程池的使用及参数的一些参考配置,有兴趣的可以翻看以前的博文,但终究无法解决线程池的动态监控和实时修改。 以前读过美团早期发布的动态线程池框架的思路相关文章,但想要独自实现不是一件容易的事。 去年,一款美团动态线程池的框架DynamicTp终于开源了,因此我有尝试使用一下,发现接入简单,侵入性也不强,支持的接入方式也多,总体还是很不错的。 我认为尤其适合中小企
一、前言 近期被刷接口了,考虑增加 本地缓存提高性能,另配置 限流使用 spring-cache 注解式缓存,可以提高使用缓存的开发效率不同业务,可以定制 自己的缓存策略,是基本需求多模块项目,最好在 统一的模块(如 c
现在已经到了面试招聘比较火热的时候,后续会分享一些面试真题供大家复习参考。准备面试的过程中,一定要多看面经,多自测! 今天分享的是一位贵州大学的同学分享的快手一面面经。 快手一面主要会问一些基础问题,也就是比较简单且容易准备的常规八股,通常不会问项目。到了二面,会开始问项目,各种问题也挖掘的更深一些。 很多同学觉得这种基础问题的考查意义不大,实际上还是很有意义的,这种基础性的知识在日常开发中也
事务管理,一个被说烂的也被看烂的话题,还是八股文中的基础股之一。 本文会从设计角度,一步步的剖析 Spring 事务管理的设计思路(都会设计事务管理器了,还能玩不转?) 为什么需要事务管理? 先看看如果没有事务管理器的话,如果想让多个操作(方法/类)处在一个事务里应该怎么做: // MethodA: public void methodA(){ Connection connection =