在学习jvm的时候许多人处于迷茫的状态,对一些基础的知识反而听过就忘了,这篇笔记是我在学习jvm的时候随手记的一些,适合已经学过或者了解过的小伙伴复习回顾一下,当然知识的覆盖是没有的,主要记录了我觉得容易忘记或者记错的知识点,这些有很多是基石知识,希望大家不要忘记,大家看到就当正好复习一下,对大家的面试可能会有一点小小的帮助 内存结构 1.方法区用来存储类加载的数据,例如类的名称,方法入口 2.JVM虚拟机栈用于存储线程,包括局部变量和方法参数 3.堆内存用来存储对象 4.方法区的规范实现:永久代和元空间 5.方法区JVM栈堆都会发生内存溢出的问题程序计数器不会 6.程序计数器用来存储程...

  zBZHMnUJ7TXj   2023年11月01日   28   0   0 Java

做业务的时候经常忘记@RequestParam注解参数,记录一下 首先,我们要清楚@RequestParam是干什么的@RequestParam:将请求参数绑定到你控制器的方法参数上,路径上有个参数+? @RequestParam注解参数: 语法:@RequestParam(value=”参数名”,required=”true/false”,defaultValue=””) value:参数名 required:是否包含该参数,默认为true,表示该请求路径中必须包含该参数,如果不包含就报错。 defaultValue:默认参数值,如果设置了该值,required=true将失效,自动为...

  zBZHMnUJ7TXj   2023年11月01日   75   0   0 Java

@Accessors注解参数经常会在实体类上看到,记录一下,方便以后复习 @Accessors注解的作用:当属性字段在生成getter和setter方法时,做一些相关的设置。 @Accessors共有三个属性,分别是fluent,chain,prefix fluent属性 不写默认为false,当该值为true时,对应字段的getter方法前面就没有get,setter方法就不会有set。 chain属性 不写默认为false,当该值为true时,对应字段的setter方法调用后,会返回当前对象。 prefix属性 该属性是一个字符串数组,当该数组有值时,表示忽略字段中对应的前缀,生成对应...

  zBZHMnUJ7TXj   2023年11月01日   97   0   0 Java

Applicationcontext的功能拓展主要来自于不属于beanfactory的接口,主要包括四个接口 Messagesource:国际化 ResourcePatternResolver:获取资源 ApplicationEventPublisher:发布事件 EnvironmentCapable:获取环境变量 感觉发布事件这个功能有点像消息队列,发布订阅,在compent1发布事件之后,就不需要对register方法作任何处理,此时需要另一个类进行事件监听,用于处理监听到的事件

  zBZHMnUJ7TXj   2023年11月01日   34   0   0 Java

AutoWiredAnnotationBeanPostProcessor执行依赖注入的时候(解析@Autowired)调用了postProcessProperties方法 这个方法首先要找到哪些属性,方法被标注了@Autowired注解,把这些数据添加到InjectMetadata中,然后调用metadata.inject方法按类型进行依赖注入,注入时按类型进行查找 按类型查找的流程: 首先通过反射拿到被注解标注的字段或者方法 再将这个字段,或者方法中的参数添加到DependencyDescriptor中 通过beanFactory的doResolveDependency方法找到和这个属...

  zBZHMnUJ7TXj   2023年11月01日   34   0   0 Java

ConfigurationClassPostProcessor:用于解析@ComponentScan@Bean@Import@ImportResource MapperSacnnerConfigurer:相当于Mybatis的@MapperScanner用于解析被标注的@Mapper接口 @mapper注解的解析:@mapper注解是mybatis提供的,用于标明一个接口,spring自然无法管理接口,要将这个接口转化为一个bean加入到beanfactory中 首先通过资源路径的方式扫描到mapper包 遍历获取的这部分资源,判断是不是当前类是不是接口 如果是接口,根据接口名创建map...

  zBZHMnUJ7TXj   2023年11月01日   33   0   0 Java

自动配置原理 @SpringBootApplication是一个组合注解,由@ComponentScan、@EnableAutoConfiguration和@SpringBootConfiguration组成 @SpringBootConfiguration与普通@Configuration相比,唯一区别是前者要求整个app中只出现一次 @ComponentScan excludeFilters用来在组件扫描时进行排除,也会排除自动配置类 @EnableAutoConfiguration也是一个组合注解,由下面注解组成 @AutoConfigurationPackage–用来记住扫描的...

  zBZHMnUJ7TXj   2023年11月01日   89   0   0 Java

Redisson自定义注解实现分布式锁 在Java项目中使用Redission自定义注解实现分布式锁: 添加Redission依赖项:在项目的pom.xml中添加Redission依赖项: <dependency>  <groupId>org.redisson</groupId>  <artifactId>redisson</artifactId>  <version>3.15.2</version></dependency> 创建自...

  zBZHMnUJ7TXj   2023年11月01日   107   0   0 Java

application.yml文件中开启mybatis自动驼峰映射 configuration: 是否开启自动驼峰命名规则映射:从数据库列名到Java属性驼峰命名的类似映射 map-underscore-to-camel-case:true 如果不开启映射在使用BaseMapper和Iservice封装的方法时会报错 如果在Mapper.xml文件中自己写sql语句在selsect或者其他字段名自己指定清楚的情况下不会报错但同样无法正确返回数据 道理很简单因为数据库数据写不到java的属性名里只是查询能查到不会报错 sql查询默认查询java字段通过映射变为数据库字段因为BaseMapp...

  zBZHMnUJ7TXj   2023年11月01日   47   0   0 Java
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~