- 博客(19)
- 收藏
- 关注
原创 sql语句中的case
CREATE TABLE stu(id INT PRIMARY KEY AUTO_INCREMENT,NAME VARCHAR(20),score INT)INSERT INTO stu VALUES (NULL,'张三',60)INSERT INTO stu VALUES (NULL,'李四',70)INSERT INTO stu VALUES (NULL,'李娃',50)SELECT id,NAME,score, CASE WHEN score>=.
2021-11-09 11:32:46 574
原创 java基础面试题
说一下ArrayList和LinkedList区别:首先,他们的底层数据结构不一样,ArrayLIst底层就是基于数组实现的,是动态数组,LikedList底层是基于链表实现的 由于底层的数据结构不同,所以他们适用的场景不一样,ArrayList更适合随机查找,LinkedList更适合删除和添加。 ArrayList和LinkedList都实现了List接口,但是LinkedList另外还实现了Deque接口,所以LinkedList还能当做队列来使用,这也使LinkedList首位查询比较快说
2021-10-26 20:32:56 109
原创 redis缓存雪崩 击穿 穿透
一:缓存雪崩缓存雪崩表示在某一时间段,缓存集中失效,导致请求全部走数据库,有可能搞垮数据库,使整个服务瘫痪。使缓存集中失效的原因:redis服务器挂掉了 对缓冲数据设置了相同的过期时间,导致某时间段内缓冲集中失效如何解决缓冲集中失效:针对原因1,可能实现redis的高可用,Redis Cluster 或者 Redis Sentinel(哨兵)等方案 针对原因2,设置缓冲过期时间时加上一个随机值,避免缓冲在同一时间过期 使用双缓冲策略,设置两个缓存,原始缓存和备用缓存,原始缓存失效时,
2021-10-22 19:11:49 94
原创 mybatis面试题:
ORM思想对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序设计技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。从效果上说,它其实是创建了一个可在编程语言里使用的“虚拟对象数据库”。如今已有很多免费和付费的ORM产品,而有些程序员更倾向于创建自己的ORM工具。概括: 用对象的方式操作数据库衍生:1. 对象应该与数据库中的表一一映射.2. 对象中的属性应该与表中的字段一一映射.3. 其中的映射应该由程
2021-10-21 18:42:54 84
原创 SpringBoot 特点
1.pom.xml文件说明1.1 parent标签作用继承特点: 将父级内容进行引用.(简化) SpringBoot理解: SpringBoot是框架的框架 问题: jar包冲突问题严重,之后需要有人统一管理 A.jar ~~~~ 5.1.jar B.jar ~~~~ 4.8.jar SpringBoot项目: 官网将大部分框架在内部进行了整合. 并且制定了,统一的版本依赖信息....
2021-10-21 09:12:26 163
原创 eureka
eureka四条运行机制1.客户端启动时,会反复连接注册中心尝试注册,直到注册成功为止2.客户端会每30s发送一次心跳数据,服务器连续3次收不到一个服务的心跳,会删除它的注册信息3.客户端每30s拉取一次注册表,刷新本地注册表缓冲--所以新启动的服务不会立即被其他服务发现,最长需要30s4.自我保护模式-- 15min内,85%服务器出现心跳异常(只要一次丢失心跳)可能网络中断或网路不稳定,自动进入保护模式。自我保护模式下,所有的注册信息都不删除。 网...
2021-10-19 09:53:26 75
原创 @Cacheable注解
目标:简化缓存代码的编写解决方案:基于AOP(面向切面编程)方式实现缓存应用实践步骤:第一步:在启动上类添加@EnableCaching注解(开启AOP方式的缓存配置),例如:@EnableCaching //启动AOP方式的缓存配置@EnableCaching //启动AOP方式的缓存配置@SpringBootApplicationpublic class RedisApplication { public static void main(String[] args) {
2021-10-14 11:54:12 1323
原创 springboot的依赖记录
<dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> ..
2021-10-13 17:17:59 71
原创 线程的生命周期:
线程的生命周期有5中状态:1.新建状态new:当线程对象创建后就进入了新建状态 Thread t=new Thread();2.就绪状态Runnable:当调用线程对象的start()方法,线程就进入了就绪状态--处于就状(可运行)状态的线程,知识说明线程已经做好准备,随时等待CPU调度执行,并不是执行了t.start()此线程就立即会被执行3.运行状态Running:当CPU调度了处于就绪状态的线程时,此线程才真正执行,即进入运行状态--就绪状态是进入运行状态的唯一入口,也就是说线程想要进入运
2021-10-11 20:16:26 149
原创 多表查询小记:
1.逐步单表查询,适合表不在同一个库里SELECT * FROM tb_users WHERE username="admin"SELECT role_id FROM tb_user_roles WHERE user_id=1SELECT menu_id FROM tb_role_menus WHERE role_id=1SELECT permission FROM tb_menus WHERE id IN (1,2,3)2.嵌套查询,性能差SELECT permissionFROM .
2021-09-28 18:07:51 106
原创 微服务中资源访问的权限
对于系统而言,它资源的访问权限是如何进行分类设计的1.不需要登录就可以访问的(例如12306查票)2.登录以后才能访问(例如12306购票)http.authorizeRequests() .antMatchers("/resource/upload/**").authenticated() .anyRequest().permitAll();登录需要携带令牌 token3.登录以后没有权限也不能访问的(例如会员等级不够不能执行相关操作)关于权限设置:属于A
2021-09-28 11:20:30 320
原创 @PropertySource注解的使用
动态获取属性值,使用了properties文件1.在resource下面新建了properties的文件,直接给属性赋值:在springboot项目中controller层,动态给属性赋值package com.jt.springbootmybatis.controller;import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.P.
2021-09-25 13:23:03 244
原创 关于ajax的跨域问题--后端处理
1.注解@CrossOrigin可以从controller层面解决单个controller跨域的问题2.服务中的CrosFilter 这个spring webMVC中给出的过滤层面的跨域可以解决多个controller的跨域问题import org.springframework.boot.web.servlet.FilterRegistrationBean;import org.springframework.context.annotation.Bean;import o..
2021-09-24 15:58:14 169
原创 jdk5和jdk8中获取当前日期的方法
public class LearnDate { public static void main(String[] args) { String format = new SimpleDateFormat("yyyy/MM/dd") .format(new Date()); System.out.println(format); }}Jdk1.5中的方法,存在线程不安全的问题public class Le..
2021-09-24 11:14:26 139
原创 SSM入门案例:从数据库中导入信息到前端页面
#数据库内容:CREATE TABLE studet(NAME VARCHAR(30) NOT NULL,age INT NOT NULL,hobby VARCHAR(50),edu INT,intime DATE)插入一些数据:#前端页面:期望效果:编写html文件:(涉ajax)<!DOCTYPE html><html> <head> <meta charset="utf-8"> <.
2021-08-21 17:43:08 1793 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人