自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 问答 (1)
  • 收藏
  • 关注

原创 Mysql 如何实现多表查询

右外连接:select ...from 表A right join 表B on 条件...显式:select ... from 表A inner join 表B on 条件...左外连接:select ...from 表A left join 表B on 条件...:select ...from 表A 别名1,表A 别名2 where 条件...隐式:select ...from 表A,表B where 条件...对多对:需要建立中间表,中间表包含两个外键,关联两张表的主键。

2023-02-24 17:24:33 143

原创 说说数据库连接查询有哪些

左表保持不动,右表在右侧滑动,用右表匹配左表。结果保留左表的所有行,右表中不匹配的行默认填充为空值NULL。:右表保持不动,左表在左侧滑动,用左表匹配右表。结果保留右表的所有行,左表中不匹配的行默认填充为空值NULL。,分为左外连接(left join)、有右外连接(right join)、全连接(full join是。,笛卡尔积在查询的时候没有太大的意义,在数学上表示所有可能性。是把多张表进行记录的连接(按照某个条件进行数据的拼接);(inner join),a表和b表同时符合条件的行;

2023-02-24 16:29:53 199

原创 mysql的索引失效的情况

is not null 也无法使用索引,但是is null是可以使用索引的【试验过了,5.7.32 会使用索引】= 或者)的时候无法使用索引会导致全表扫描【验证一把,5.5的是可以使用索引】不在索引列上做任何操作(计算、函数、(自动or手动)类型转换),会导致索引失效而转向全表扫描。like以通配符开头('%abc...')mysql索引失效会变成全表扫描的操作。存储引擎不能使用索引中范围条件右边的列(没有使用优先列)mysql查询只使用一个索引,多个索引,后面失效。删除不需要使用的索引。

2023-02-24 16:18:44 111

原创 堆和栈的区别

堆中存放的都是实体(对象),实体用于封装数据,而且是封装多个(实体的多个属性),如果一个数据消失,这个实体也没有消失,还可以用,所以堆是不会随时释放的。是先加载函数才能进行局部变量的定义,所以方法先进栈,然后再定义变量,变量有自己的作用域,一旦离开作用域,变量就会被释放。栈内存存放的变量生命周期一旦结束就会被释放,而堆内存存放的实体会被垃圾回收机制不定时的回收。凡是定义在方法中的都是局部变量(方法外的是全局变量),for循环内部定义的也是局部变量。栈内存存储的是局部变量而堆内存存储的是实体;

2023-02-24 14:40:22 50

原创 动态代理的几种实现

JDK原生动态代理CGLIB动态代理。

2023-02-24 14:17:12 102

原创 谈谈rabbitmq中的死信队列

DLX(Dead Letter Exchanges)死信队列,本身也是一个普通的消息队列,在创建队列的时候,通过设置一些关键参数x-dead-letter-exchange,可以将一个普通的消息队列设置为死信队列。当这个队列中有死信时, RabbitMQ就会自动将这个消息重新发布到设置的Exchange上去, 进而被路由到另一个队列。被拒绝(basic.reject或basic.nack)并且requeue=false的消息。队列达到最大长度(队列满了,无法再添加数据到mq中)的消息。

2023-02-24 12:18:27 75

原创 抽象类接口的区别

接口中每一个方法也是隐式指定为 public abstract,不能含有静态代码块以及静态方法,而抽象类可以有静态代码块和静态方法;含有抽象方法(使用abstract关键字修饰的方法)的类是抽象类,必须使用abstract关键字修饰;如果一个子类实现了父类(抽象类)的所有抽象方法,那么该子类可以不必是抽象类,否则就是抽象类;接口中不能包含实例域或静态方法(静态方法必须实现,接口中方法是抽象方法,不能实现)抽象类可以含有抽象方法,也可以不包含抽象方法,抽象类中可以有具体的方法;接口中方法均为抽象方法;

2023-02-24 12:14:25 38

原创 List、Set、Map三个接口的区别以及常见子类?

List中最常用的两个子类:ArrayList(基于数组,查询快)和LinkedList(基于链表,增删快)Set中最常用的两个子类:HashSet和TreeSet。Map中最常用的两个子类:HashMap和TreeMap。List、Set单列,Map是双列的键值对。List可重复,set不可重复。List有序的,set是无序。

2023-02-24 12:10:40 73

原创 final, finally, finalize的区别?

java中的final类有java.lang.String、java.lang.Math、java.util.Scanner、finalize是Object类的一个方法,在垃圾收集器执行的时候会调用被回收对象的此方法,可以覆盖此方法提供垃圾收集时的其他资源回收,例如关闭文件等。try或catch代码块中(return/throw)的返回值保留,再来执行finally代码块中的语句,等到finally代码块执行完毕之后,在把之前保留的返回值给返回出去。finally是异常处理语句结构的一部分,表示总是执行。

2023-02-24 12:09:52 49 1

原创 缓存为什么要是用Redis,而不是使用MongoDB呢

Redis最核心的价值还是缓存数据库,多种数据结构,丰富的API使得Redis在目前的环境中暂时还找不到太多的对手。首先Redis完全符合上面我们说的几个特征,并且还是基于内存的,可持久化的数据库,并且是非常友好的Key-Value键值对的方式存储。能保存的数据量要够多,这样才能放得下足够多的缓存,不然我放上十条八条的数据就满了,这成什么样了。MongoDB的更多使用方式还是存储一些大的文件之类的数据,不是专注于去实现一些缓存数据的存储。要比单纯读数据库更加节约成本。

2023-02-24 12:08:32 560

原创 外卖点餐APP-04(后台--菜品管理)

Java;SpringBoot;Mybatis-Plus

2022-10-03 11:14:03 683

原创 外卖点餐APP-03(后台--菜品分类管理)

JAVA;SpringBoot;MyBatis-Plus

2022-10-03 00:28:37 267

原创 外卖点餐APP-02(后台--员工管理)

JAVA;SpringBoot;MyBatis-Plus

2022-10-02 22:54:37 340

原创 外卖点餐APP-01

JAVA;SpringBoot;MyBatis-Plus

2022-10-02 21:45:39 539

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除