- 博客(36)
- 资源 (1)
- 收藏
- 关注

原创 ==目录==
nacos注册中心、Feign04-Nacos服务注册中心应用实践_雨田说码-优快云博客_nacos服务注册nacos配置中心05-Nacos服务配置中心应用实践_雨田说码-优快云博客sentinel06-Sentinel限流熔断应用实践_雨田说码-优快云博客_sentinel集群限流gateway07-网关Gateway 应用实践_雨田说码-优快云博客...
2021-12-28 19:15:14
159
原创 复习复习复习
强引用 弱引用 软引用 虚引用Java:强引用,软引用,弱引用和虚引用_BOUNC3的博客-优快云博客_软引用反射:1.Class.FormName(...)2.类名.Class3.对象.getClass()ConCurrentHashMap/HashMap/HashTableHashMap是线程不安全的,HashTable是线程安全的; HashMap中允许键和值为null,HashTable不允许; HashMap的默认容器是16,为2倍扩容,HashTable默认是11.
2022-03-19 22:49:01
445
原创 gateway
官方文档:Spring Cloud Gateway为了在项目中简化前端的调用逻辑,同时也简化内部服务之间互相调用的复杂度,更好保护内部服务,提出了网关的概念通过网关作为服务访问入口,对系统中的服务进行访问路由(Route) 是 gateway 中最基本的组件之一,表示一个具体的路由信息载体。主要定义了下面的几个信息:id,路由标识符,区别于其他 Route。uri,路由指向的目的地 uri,即客户端请求最终被转发到的微服务。predicate,断言(谓词)的作用是进行条件判断,只有断言.
2022-03-18 10:56:50
371
原创 Vue:Uncaught (in promise) NavigationDuplicated: Avoided redundant navigation to
rounter的index.js中,添加如下代码:const originalPush = VueRouter.prototype.pushVueRouter.prototype.push = function push(location) { return originalPush.call(this, location).catch(err => err)}
2022-02-11 16:44:43
452
原创 状态码一览
org.springframework.http.HttpStatus 100 "Continue" 101 "Switching Protocols" 102 "Processing" 103 "Checkpoint" 200...
2022-01-18 19:45:19
131
原创 StringUtils中isBlank()和isEmpty()
org.apache.commons.lang包下的StringUtils:isBlank():isBlank()判断字符串 null、""、" "均为空 /** * <p>Checks if a CharSequence is empty (""), null or whitespace only.</p> * * <p>Whitespace is defined by {@link Character#isWhi...
2022-01-18 14:58:00
224
原创 自定义样式被element.style覆盖
.home-aside{ width: 10%; height: 100%; background-color: #0077AA; }宽度设置的10%,但实际显示300px原因:打开F12后发现是element.style设置的:解决方法:在属性后加上!important.home-aside{ width: 10% !important; height: 100%; background-color: #0077AA;}...
2022-01-15 15:13:01
492
原创 java连接redis之RedisTemplate
引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> @Test void testHash2() throws Js.
2022-01-12 19:18:33
1221
原创 java连接redis之Jedis
Jedis是java中操作redis的一个客户端 类似于jdbc操作数据库首先在pom文件中引入依赖<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId></dependency>然后获取Jedis实例 并连接redis /** * 测试是否成功连接Redis */ @
2022-01-11 20:47:59
645
原创 spring测试(最终)
考虑下图中的事务性服务层类。你使用的是 Spring 事务,它内部使用 Spring AOP 调用 update1 方法时,发生了什么事情? (选择一项) public class ClientServiceImpl implements ClientService{ @Transactional (propagation=Propagation.REQUIRED) public void update1(){ update2(); } @Transacti.
2022-01-08 16:31:55
1623
1
原创 手写阻塞式队列
方式一(this.wait(),this.notifyAll()):/** * 自定一个阻塞式队列容器 * 数据存储结构:有界数组 * 存取规则:FIFO * 放数据规则:永远放在size位置,满了则阻塞 * 取数据规则:永远从下标为0的位置取数据,空了则阻塞 */class BlockQueueContainer<T>{ /**存储数据的容器*/ private Object[] array; /**记录有效元素个数*/ pr
2022-01-07 19:28:46
315
原创 异常集集集
异常传播: 需要我们处理的异常才有异常传播 一直throws 直到try catch停止编译异常 FileNotFoundException IOException ClassNotFoundException SQLException 运行时也可能抛出 运行异常 ArithmeticException ...
2022-01-05 20:53:18
277
原创 SpringMVC拦截器实例
实现HandlerInterceptor接口,该接口中都是默认方法,所以需要哪个 重写哪个HandlerInterceptor源码:public interface HandlerInterceptor { default boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { return true;
2021-12-27 19:24:06
97
原创 idea启动nacos、Sentinel
idea启动nacosidea启动Sentinel相同方式创建Shell Script启动程序路径是java.exe的路径启动命令:命令 jar包全路径-Dserver.port=8180 -Dcsp.sentinel.dashboard.server=localhost:8180 -Dproject.name=sentinel-dashboard -jar G:\sentinel\sentinel-dashboard-1.8.1.jar...
2021-12-27 14:58:23
168
原创 nacos注册中心、配置中心
开启nacos服务方式一:nacos的bin目录下 双击startup.cmd 或者进入cmd运行 startup.cmd -m standalone方式二:在idea中配置并开启nacos服务2.访问nacos localhost:8848注册中心pom.xml中,添加依赖 添加此依赖包后,启动时 系统会向nacos发送一些心跳包,进行服务注册,当我们项目中添加了这样一个依赖 就标识此项目是nacos服务的一个客户端对象 。心跳包通常5秒发送一次,...
2021-12-23 15:13:55
246
原创 RestTemplate
基于RestTemplate对象,可以进行远端服务调用 例如sca-consumer调用sca-provider1.在配置类中配置RestTemplate:@Bean public RestTemplate restTemplate() { return new RestTemplate(); }2.在ConsumerController中,进行远端调用ProviderController:@RestControllerpublic class C.
2021-12-22 20:46:20
95
原创 SpringCloud重写负载均衡
application.yml:#服务的端口server: port: 8090#服务名spring: application: name: sca-consumer #服务注册地址(服务启动时,向该地址发送心跳包 一般5秒一次) cloud: nacos: discovery: server-addr: localhost:8848#sca-provider服务的负载均衡配置sca-provider: ribbon: #ri
2021-12-22 15:12:51
419
原创 MP之三级菜单
@Override public List<ItemCat> findItemCatList(Integer level) { Map<Integer, List<ItemCat>> map = getMap(); if(level == 1) return map.get(0); else if(level == 2) return getTwoList(map)..
2021-12-21 10:12:43
239
原创 MP之对象绑定、自动填充
MP基于对象的方式操作数据,如果实现数据的入库操作 则数据都会与对象绑定,动态回显.Item.id是自增 所以item.getId()为null updated、created是自动填充 当item入库后 数据会与对象绑定 所以此时item的id updated created都是有值的 可以直接用@Override @Transactional public void saveItem(ItemVO itemVO) { //item入库 It...
2021-12-15 14:57:11
1034
原创 MP之分页查询
分页查询中包含模糊查询,使用StringUtils工具类 判断查询条件(pageResult.getQuery())是否为空 flag为true 拼接查询条件使用MP的分页查询 需要额外指定数据库类型 public PageResult getItemList(PageResult pageResult) { boolean flag = StringUtils.hasLength(pageResult.getQuery()); QueryWrapper<.
2021-12-15 11:36:32
3118
原创 Mybatis缓存
一级缓存 SqlSession级别 在同一个SqlSession内实现数据共享 默认开启Mybatis默认的一级缓存是开启的. 但是在SpringBoot整合之后.每次mapper调用都是一个全新的SqlSession.所以导致一级缓存不生效解决方案: 添加事务注解 使用同一个SqlSession @Test public void testCache1() { List<User> list1 = annoMapper.f...
2021-12-08 15:43:40
265
原创 mybatis
根据存在的某一个值查询解决:<where></where>标签用于去除多余的andwhere标签可以不写<set></set>标签用于去除多余的逗号数据库字段与pojo类的属性名称不一样时,查询不到解决:手动指定对应关系或者在配置文件中:一对一 员工对部门一对多 部门对员工...
2021-12-07 19:18:32
1815
原创 SpringAOP注解
@EnableAspectJAutoProxy 开启aop Spring默认使用JDK代理 如果被代理者没有实现接口 则自动使用CGLib代理 @EnableAspectJAutoProxy(proxyTargetClass=true) 开启CGLib代理===@Aspect 标识该类是一个切面类===@Pointcut("bean(xxx)")如果目标对象的beanId是xxx,那么为其创建代理对象(拦截类)@Pointcut("within...
2021-12-01 19:20:00
341
原创 SpringMVC注解
@Repository持久层(Mapper数据库交互)@Repositorypublic class UserMapperImpl implements UserMapper { @Override public void addUser() { System.out.println("添加user"); }}@Repository被@Component修饰 所以该类也会交给Spring容器管理 源码:@Target({ElementTy...
2021-12-01 19:16:37
241
原创 Spring基础注解
@Configuration 标识配置类@ComponentScan(“com.jt”) 包扫描的注解 使Spring注解有效=====@Lazy懒加载 不写默认true@Bean 将自己方法的返回值交给Spring容器管理@Scope("xxx")单例(singleton)、多例(prototype)=====@Component 将该类交给spring容器管理. 通过反射自动实例化对象(key=类名小写)@Autowired把接口实现类注入当前类@Qual..
2021-11-26 15:15:02
320
原创 Access-Control-Allow-Origin跨域访问
IP地址不同、端口号不同has been blocked by CORS(跨域资源共享) policy:被CORS策略阻止缺少Access-Control-Allow-Origin头后端程序:response.setHeader("Access-Control-Allow-Origin", "http://127.0.0.1:8848"); http://127.0.0.1:8848改成*,表示允许所有域名访问get提交:post提交:...
2021-11-22 19:38:37
1801
原创 小结001
String、StringBuffer、StringBuilderString重写了父类Object的equals()和hashCode()方法;StringBuffer、StringBuilder没有重写。String底层是char[],长度不可变。StringBuffer、StringBuilder默认初始长度16,按照 原长度*2+2 扩容,长度可变。StringBuffer线程安全、StringBuilder线程不安全。List、SetList、Set继承自Collect
2021-11-04 19:46:34
145
原创 错题集02
局部变量必须初始化普通类只能用public、default修饰,内部类4种修饰符都可以不同子类或者父类强转成子类,编译正确 运行异常ClassCastException接口不可以被实例化 但是接口的实现类可以 而且可以定义成接口类型的 接口和实现类中如果成员变量重名 那么调用的是接口的Person p = new Teacher();父类引用指向子类对象 是多态。p是Person类型的,调用的方法如果是重载过的,那么调用的是子类Teacher的:干活的是子类。如果调用的方法是静态
2021-11-01 20:52:52
69
原创 随堂笔记(4)
流分类: 按方向分:输入流 输出流 按操作单位分:字符流 字节流 组合:字符输入流 字符输出流 字节输入流 字节输出流字符流只能操作文本相关,字节流可以操作图片音乐等字节输入流抽象父级:InputStream 是一个抽象类 不能被实例化普通子级(目前接触到的):FileInputStream--操作文件的字节输入流--构造函数参数:File file/String pathnameBuffere...
2021-10-21 20:07:32
65
原创 随堂笔记(3)
Object类hashCode()方法、equals()方法hashCode()源码:本方法用于返回对应对象的哈希码值不同的对象返回不同的哈希值,哈希值是根据地址值确定的,所以即使两个对象属性相同,但哈希值却不同equals()源码:Object中的equals方法是默认实现使用的是==比较==比较的是左右两边的值,如果是基本数据类型 比较的是字面值比如1和1,3.4和3.4,如果是应用类型 比较的是引用类型变量保存的地址值在日常生活中,...
2021-10-19 20:36:24
57
原创 随堂笔记(2)
内部类成员内部类外部类不可以直接使用内部类资源,需要创建对象内部类可以直接使用外部类资源 参考:合租房Outer.Inner oi = new Outer().new Inner();1.如果内部类被private修饰,无法直接创建内部类对象(has private access),可以在外部类提供一个公共方法,在外部类的公共方法里创建内部类对象,从而进行调用2.当成员内部类被static修饰以后,new Outer()会出错,此时,创建成员内部类对象,不需要创建外部类对..
2021-10-19 20:02:58
143
原创 随堂笔记(1)
代码块1.构造代码块: 1)位置:类里方法外 2)执行时机:创建对象时执行,优先于构造函数 3)作用:提取构造函数的共性功能2.局部代码块: 1)位置:方法内 2)执行时机:调用方法是执行 顺序执行 3)作用:控制变量作用范围3.静态代码块:类里方法外,将只需要进行一次初始化操作的放入静态代码块,常用来初始化构造函数public class Teacher extends Pe...
2021-10-18 16:34:37
80
原创 错题集01
int a = '达'; //正确float f = 1.0;//错 1.0是double类型,应该定义成1.0f;或者(float)1.05/2 = 2; 5/2.0 = 2.5; //int/int=int int/double=...
2021-10-16 11:25:27
360
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人