随笔分类 -  java

摘要:```java @Configuration public class WebMvcConfig extends WebMvcConfigurationSupport { // @Autowired // private Interceptor interceptor; /** * springbo 阅读全文
posted @ 2023-06-18 23:32 Bepowerful 阅读(16) 评论(0) 推荐(0)
摘要:```yaml mybatis-plus: configuration: map-underscore-to-camel-case: true log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # id的增加方式 global-config: 阅读全文
posted @ 2023-06-18 23:32 Bepowerful 阅读(44) 评论(0) 推荐(0)
摘要:## 用于类上的注解 #### @Accessors 一般用chain=true,当该值为true时,调用setter方法时会返回当前的对象,方便采取链式编程的方法进行代码编写 列如:CatSetName(123).setAge(20).setId(); fluent属性为true时,对应的gett 阅读全文
posted @ 2023-06-18 23:30 Bepowerful 阅读(47) 评论(0) 推荐(0)
摘要:```java import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; import lombok.extern.slf4j.Slf4j; import org.apache.ibatis.reflection.MetaObj 阅读全文
posted @ 2023-06-18 23:29 Bepowerful 阅读(12) 评论(0) 推荐(0)
摘要:```java /** * 配置mp的分页插件(拦截) */ @Configuration public class MybatisPlusConfig { @Bean public MybatisPlusInterceptor mpInterceptor() { MybatisPlusInterc 阅读全文
posted @ 2023-06-18 23:29 Bepowerful 阅读(240) 评论(0) 推荐(0)
摘要:jvm中的常量池分为三种(1.6前都在方法区) 1.类文件常量池(Class Constant Pool) 也称静态常量池 2.运行时常量池(Runtime Constant Pool) 3.字符串常量池(String Constant Pool) 1.类文件常量池 我们写的每一个Java类被编译后 阅读全文
posted @ 2023-05-13 20:24 Bepowerful 阅读(296) 评论(0) 推荐(0)
摘要:下面说的常量池都是指字符串常量池,字符串常量池存在运行时常量池之中(在JDK7之前存在运行时常量池之中,在JDK7已经将其转移到堆中),运行时常量池从永久代移到了元空间中。 String a = new String("ab"); 此时创建了两个对象,常量池中创建了ab对象,堆内存中也创建了ab对象 阅读全文
posted @ 2023-05-13 20:22 Bepowerful 阅读(56) 评论(0) 推荐(0)
摘要:==逃逸分析== 首先我们需要知道,==逃逸分析并不是直接的优化手段,而是而是分码分析手段==。具体而言就是: 逃逸分析是“一种确定指针动态范围的静态分析,它可以分析在程序的哪些地方可以访问到指针”。Java虚拟机的即时编译器会对新建的对象进行逃逸分析,判断对象是否逃逸出线程或者方法。即时编译器判断 阅读全文
posted @ 2023-05-13 20:22 Bepowerful 阅读(95) 评论(0) 推荐(0)
摘要:Minor GC 当年轻代空间不足时,就会触发Minor GC,这里的年轻代满指的是Eden满,Survivor满不会触发GC。(每次Minor GC 会清理年轻代的内存) 因为Java对象大多都具备朝生熄灭的特性,所以Minor GC非常频繁,一般回收速度也比较快。 Minor GC会引发STW, 阅读全文
posted @ 2023-05-13 20:22 Bepowerful 阅读(86) 评论(0) 推荐(0)
摘要:连接数据库 spring: application: name: reggie datasource: druid: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/sq1?serverTime 阅读全文
posted @ 2023-04-09 17:18 Bepowerful 阅读(25) 评论(0) 推荐(0)
摘要:1.定义数组三种方式 int[] arr =new int[10]; int[] arr = new int[]{2,3,4,5,5}; int[] arr = {2,4,5,6,6}; 2.Arrays.toString(数组) //将数组中的数据转为字符串 3."liuliu.big".subs 阅读全文
posted @ 2023-04-04 01:55 Bepowerful 阅读(176) 评论(0) 推荐(0)
摘要:spring-context Spring框架的依赖 junit 测试的依赖 需要配置test mysql-connector-java mysql驱动包 druid 德鲁伊mysql连接池 javax.annotation-api jdk9之后javax.annotation包被移除了,@Post 阅读全文
posted @ 2023-04-02 16:55 Bepowerful 阅读(53) 评论(0) 推荐(0)
摘要:补充:并发安全问题 当使用多线程时,发生并发安全的会在同一个类对象中,且对于成员变量容易发生并发安全。局部变量不会导致并发安全,因为每调用一次方法,都会有一个独立的栈帧存放各自的变量信息。 1. 实现生产者消费者问题要使用while循环,不可以使用if否则会导虚假唤醒。 2. 用synchroniz 阅读全文
posted @ 2023-03-29 14:12 Bepowerful 阅读(28) 评论(0) 推荐(0)
摘要:swap原理 swap就是内存交换的意思。 计算机对内存分为物理内存与虚拟内存。物理内存就是计算机的实际内存大小,虚拟内存则是从磁盘空间开辟出一部分内存空间虚拟出来的,所以也叫磁盘缓存。虚拟内存的出现,让机器内存不够的情况得到部分解决。程序运行的时候系统会在虚拟内存与物理内存直接进行替换和加载。这里 阅读全文
posted @ 2023-03-24 01:34 Bepowerful 阅读(375) 评论(0) 推荐(0)
摘要:悲观锁:认为线程问题一定会发生,在操作数据之前就获取锁,确保线程串行执行。列如Synchronized、lock 乐观锁:认为线程问题不一定发生,因此不加锁,只是在更新数据时去判断有没有其他线程对数据进行了修改。如果没有修改则认为是安全的,自己才更新数据。 如果已经被其他线程修改说明发生了安全问题, 阅读全文
posted @ 2023-02-11 17:05 Bepowerful 阅读(18) 评论(0) 推荐(0)