- 博客(11)
- 收藏
- 关注
原创 Spring中Bean的生命周期
实例化 通过发射实现:Constructor ctor = clazz.getDeclareConstructor(); Object obj = ctor.newInstance(); 填充属性(populateBean();) 执行aware接口中需要实现的方法(aware接口存在的意义是:为了通过Spring中的Bean对象来获取对应容器中的相关属性,如beanName) BeanPostProcessor:before(); init-method(); BeanPostProcessor:bef.
2022-05-05 15:50:26
227
原创 JAVA面试题-2
Java自动装箱与拆箱 **装箱就是自动将基本数据类型转换为包装器类型(int–>Integer);调用方法:Integer的 valueOf(int) 方法 拆箱就是自动将包装器类型转换为基本数据类型(Integer–>int)。调用方法:Integer的intValue方法 ** 在Java SE5之前,如果要生成一个数值为10的Integer对象,必须这样进行: Integer i = new Integer(10); 而在从Java SE5开始就提供了自动装箱的特性,如果要生成一个数值
2021-07-27 08:45:19
336
1
原创 java面试题基础篇-1
Java语言的特点 简单易学、有丰富的类库 面向对象(Java最重要的特性,让程序耦合度最低,内聚性更高) 与平台性无关(jvm是Java跨平台使用的根本) 可靠安全 支持多线程 面向对象和面向过程的区别 面向过程:是分析解决问题的步骤,然后用函数把这些步骤一步一步实现,然后再使用的时候一一调用即可。性能较高,所以单片机、嵌入式开发等一般使用面向过程开发 面向对象:是把构成问题的事务分解成各个对象,而建立对象的目的也不是为了完成一个个步骤,而是 为了描述某个事物在解决整个问题的过程中所发生的行为。面向对
2020-12-14 20:31:59
254
原创 ActiveMQ、RocketMQ、RabbitMQ、Kafka区别
一、三大应用场景(优点) 解耦、异步、削峰 1、解耦:只需要将消息写入消息队列,需要消息的去消息队列中订阅就好 2、异步:一些非必要的逻辑可以采用异步来完成,从而提升响应速度 3、削峰:某个时间段并发量特别大的时候可以将消息发送到消息队列中,然后从消息队列中慢慢拉取进行消费 二、消息队列的缺点 1、系统可用性降低:如系统原本运行的好好的,加入消息队列后一旦消息队列挂掉,系统直接就over了 2、增...
2020-05-07 15:42:58
2287
原创 工具类
本人打算整理一个开发常用的工具类,现在项目已经弄好,还未开发,欢迎大家一起开发。 github地址:https://github.com/hs523/java-utils
2019-11-05 13:55:27
229
原创 代码优化小技巧
1、迭代entrySet() 获取Map 的key 和value 当循环中只需要获取Map 的主键key时,迭代keySet() 是正确的;但是,当需要主键key 和取值value 时,迭代entrySet() 才是更高效的做法,其比先迭代keySet() 后再去通过get 取值性能更佳。 优化前 HashMap<String, String> map = new HashMap&...
2019-10-24 10:20:07
408
原创 mybatis之generator代码生成器
在使用了mybatis后,每次需要手写pojo、xml,及配置他们的依赖关系,比较麻烦且做了大量的重复工作,mybatis 官方提供的 generator可以实现自动创建这些的功能。 1、首先建好一个基础项目,目录如下 2、yml配置文件如下: server: port: 1314 spring: datasource: url: jdbc:mysql://localhost:3...
2019-09-27 16:58:33
411
原创 Redis常见面试题
1、Redis分布锁是怎么实现的? 先拿setnx来争抢锁,抢到之后再用expire给锁加一个过期时间防止锁忘记释放。 如果在setnx之后执行expire之前的进程意外crash或重启维护了,那会咋样?Set指令 有非常复杂的参数,可以同时把setnx和expire合成一条指令来用的。 2、使用过Redis做异步队列么,你是怎么用的?有什么缺点? 一般使用list结构作为队列,rpush生成消息...
2019-08-11 16:16:17
649
原创 sql查询一个班级中男女各有多少人及总人数
表机构及数据: 其中 1 代表是男生 ,2 代表是女生 ,然后我们要得到下面这种结果: 可以结合 sum 函数、case 函数以及 count 函数来实现 SELECT class AS 班级, SUM(CASE WHEN sex = 1 THEN 1 ELSE 0 END) AS 男, SUM(CASE WHEN sex = 2 THEN 1 ELSE 0 END) AS 女, CO...
2018-12-18 20:47:54
45049
原创 SpringBoot+SpringCloud面试题整理
什么是SpringBoot? 1、用来简化spring初始搭建和开发过程使用特定的方式进行配置(properties或者yml文件) 2、创建独立的spring引用程序main方法运行 3、嵌入Tomcat无需部署war包,直接打成jar包nohup java -jar – & 启动就好 4、简化了maven的配置 4、自动配置spring添加对应的starter自动化配置 SpringB...
2018-12-10 19:15:28
57131
9
原创 left join、right join、inner join和full join的区别?
left join、right join、inner join和full join的区别? inner join: 内连接,在两张表进行连接查询的时候只保留两张表完全匹配的结果集 left join : 在两张表连接查询时,会返回左表所有的行,即使在右表中没有匹配的记录 right join: 在两张表进行连接查询时,会返回右表所有的行,即使左表中没有匹配的记录 full join: 在两张表进行...
2018-12-10 19:07:34
918
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅