Fork me on Gitee

随笔分类 -  Java/Web

摘要:定义:声明中具有一个或者多个类型参数(type parameter)的类或者接口,就是泛型类或者接口。泛型类和接口统称为泛型(generic type)。 每种泛型定义一组类型形参(formal type parameters),这些类型形参有时也被简称为类型参数(type parameter),例 阅读全文
posted @ 2021-12-27 14:44 明叶师兄。 阅读(645) 评论(0) 推荐(0)
摘要:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题,即在mybatis中dao接口与mapper配置文件在做映射绑定的时候出现问题,简单说,就是接口与xml要么是找不到,要么是找到了却匹配 阅读全文
posted @ 2021-12-26 19:53 明叶师兄。 阅读(756) 评论(0) 推荐(1)
摘要:HashMap有几种遍历方法 HashMap 的遍历方法有很多种,不同的 JDK 版本有不同的写法,其中 JDK 8 就提供了 3 种 HashMap 的遍历方法,并且一举打破了之前遍历方法“很臃肿”的尴尬。 7 种 HashMap 的遍历方式,其中 JDK 8 之前主要使用 EntrySet 和 阅读全文
posted @ 2021-12-24 17:34 明叶师兄。 阅读(932) 评论(0) 推荐(0)
摘要:Map转换成JSON的方法 1 alibaba fastjson 1.Map转JSON Map<String, Object> map = new HashMap<String, Object>(); map.put("a", "a"); map.put("b", "123"); JSONObjec 阅读全文
posted @ 2021-12-13 23:42 明叶师兄。 阅读(3464) 评论(0) 推荐(0)
摘要:数据库使用宝典 一、基础使用 1.1. 查询 SELECT * FROM USER; 二、SQL进阶 2.1. group by 与 having group by 是在需要对某个重复出现的字段进行数据的分组显示的时候用到 group by后面加的需要分组的那个字段 。 having 是对进行分组的 阅读全文
posted @ 2021-09-13 23:02 明叶师兄。 阅读(107) 评论(0) 推荐(0)
摘要:架构设计之数据库设计 背景 IO瓶颈 **第一种:**磁盘读 IO 瓶颈,热点数据太多,数据库缓存放不下,每次查询会产生大量的 IO,降低查询速度→分库和垂直分表。 **第二种:**网络 IO 瓶颈,请求的数据太多,网络带宽不够→分库。 CPU瓶颈 **第一种:**SQL 问题:如 SQL 中包含 阅读全文
posted @ 2021-09-13 23:01 明叶师兄。 阅读(298) 评论(0) 推荐(0)
摘要:JVM中的类加载机制 当程序主动使用某个类时,如果该类还未被加载到内存中,则JVM会通过加载、连接(验证、准备、解析)、初始化3个步骤来对该类进行初始化。如果没有意外,JVM将会连续完成3个步骤,所以有时也把这个3个步骤统称为类加载或类初始化。 类加载过程 加载 加载指的是将类的class文件读入到 阅读全文
posted @ 2021-08-31 22:54 明叶师兄。 阅读(100) 评论(0) 推荐(0)
摘要:Spring 面试题 AOP与IOC AOP 是面向切面编程的思想,解决了程序中横向的代码重复问题。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。主要的功能是:日志记录,性能统计,安全控制,事务处理,异常处理等等,解决代 阅读全文
posted @ 2021-08-31 22:38 明叶师兄。 阅读(182) 评论(0) 推荐(0)
摘要:Spring Bean的生命周期 四个阶段 Spring Bean的生命周期只有这四个阶段。把这四个阶段和每个阶段对应的扩展点糅合在一起虽然没有问题,但是这样非常凌乱,难以记忆。要彻底搞清楚Spring的生命周期,首先要把这四个阶段牢牢记住。 **实例化和属性赋值对应构造方法和setter方法的注入 阅读全文
posted @ 2021-08-31 22:16 明叶师兄。 阅读(674) 评论(0) 推荐(0)
摘要:Spring中的用到的设计模式 工厂模式 Spring使用工厂模式可以通过 BeanFactory 或 ApplicationContext 创建 bean 对象, 根据传入一个唯一的标识来获得Bean对象 。 单例模式 在我们的系统中,有一些对象其实我们只需要一个,比如说:线程池、缓存、对话框、注 阅读全文
posted @ 2021-08-31 22:06 明叶师兄。 阅读(219) 评论(0) 推荐(0)
摘要:Java中IO 什么是IO 这里这个I指的是input,而这个O指的则是output,对于IO的认识就是输入输出。在讨论IO的时候,流则是关键中的关键 按数据流向分类 输入流和输出流 按处理的数据类型分类 字节流和字符流 字节流 对于字节流,它是用来操作我们的二进制文件的,因为字节流可以操作的数据是 阅读全文
posted @ 2021-08-23 22:00 明叶师兄。 阅读(222) 评论(0) 推荐(0)
摘要:JMM实现原理 线程之间的通信 线程之间的通信机制有两种,共享内存和消息传递。 在共享内存的并发模型里,线程之间共享程序的公共状态,线程之间通过写-读内存中的公共状态来隐式进行通信,典型的共享内存通信方式就是通过共享对象进行通信。 在消息传递的并发模型里,线程之间没有公共状态,线程之间必须通过明确的 阅读全文
posted @ 2021-08-21 23:24 明叶师兄。 阅读(213) 评论(0) 推荐(0)
摘要:JVM线上排查问题过程 记录如何排查CPU100%问题。 当我们把服务发布到服务器上,可能会因为一些问题造成我们的服务器CPU被打满甚至超过100%,那如果我们想知道到底上在做什么操作导致CPU持续过高呢?因为在线上,我们只能通过日志看问题,或者排查到哪个进程或者哪个线程持续占用CPU。然后才能找到 阅读全文
posted @ 2021-08-21 23:21 明叶师兄。 阅读(328) 评论(0) 推荐(0)
摘要:深拷贝与浅拷贝 对象的复制 有一个对象A,在某一时刻A中已经包含了一些有效值,此时可能 会需要一个和A完全相同新对象B,并且此后对B任何改动都不会影响到A中的值,也就是说,A与B是两个独立的对象,但B的初始值是由A对象确定的。 浅克隆(ShallowClone)和深克隆(DeepClone) 在Ja 阅读全文
posted @ 2021-08-03 10:38 明叶师兄。 阅读(61) 评论(0) 推荐(0)
摘要:事务管理 数据库事务 事务是什么 是数据库操作的最小工作单元,是作为单个逻辑工作单元执行的一系列操作; **这些操作作为一个整体一起向系统提交,要么都执行、要么都不执行;**事务是一组不可再分割的操作集合。 数据库事务是保证在并发情况下能够正确执行的重要支撑,MySQL常见的数据库引擎中支持事务的是 阅读全文
posted @ 2021-07-26 10:46 明叶师兄。 阅读(193) 评论(0) 推荐(0)
摘要:Spring Bean的生命周期 四个阶段 Spring Bean的生命周期只有这四个阶段。把这四个阶段和每个阶段对应的扩展点糅合在一起虽然没有问题,但是这样非常凌乱,难以记忆。要彻底搞清楚Spring的生命周期,首先要把这四个阶段牢牢记住。 **实例化和属性赋值对应构造方法和setter方法的注入 阅读全文
posted @ 2021-07-21 23:14 明叶师兄。 阅读(182) 评论(0) 推荐(0)
摘要:Java中的Object类 Object类简介 Object类是Javajava.lang包下的核心类,Object类是所有类的父类,何一个类时候如果没有明确的继承一个父类的话,那么它就是Object的子类; Object 类属于java.lang包,此包下的所有类在使用时无需手动导入,系统会在程序 阅读全文
posted @ 2021-07-19 19:58 明叶师兄。 阅读(566) 评论(0) 推荐(0)
摘要:Java线程池七个参数 首先创建一个定长的线程池 //创建使用固定线程数的线程池 ExecutorService es2 = Executors.newFixedThreadPool(3); for (int i = 0; i < 10; i++) { es2.submit(new Runnable 阅读全文
posted @ 2021-07-19 19:17 明叶师兄。 阅读(491) 评论(0) 推荐(0)
摘要:常见算法的时间复杂度 冒泡排序 for(int i = 0 ;i<arr.length-1;i++){ //第i趟比较 for(int j = 0 ;j<arr.length-i-1;j++){ //开始进行比较,如果arr[j]比arr[j+1]的值大,那就交换位置 if(arr[j]>arr[j 阅读全文
posted @ 2021-07-15 00:11 明叶师兄。 阅读(467) 评论(0) 推荐(0)
摘要:RocketMQ消息堆积问题 RocketMQ消息堆积主要分为三个层次的问题: 其一是Producer生产速率过快,什么场景呢,比如Producer故障,比如DOS攻击,比如业务高峰(超过企业预估的,例如12306订票,双十一下单,这些一开始的时候都有超过预期的情况)。 其二是Broker消息堆积, 阅读全文
posted @ 2021-07-09 12:11 明叶师兄。 阅读(2401) 评论(0) 推荐(0)