- 博客(34)
- 收藏
- 关注
原创 使用Satoken作为登录鉴权时可能遇到的问题
如果你不想这么麻烦,可以在日志处理类中的@AfterReturning方法中判断,是否有SaIgnore注解,如果有,则return返回即可。这样就不需要在方法上方加注解接口了。这时你调用的每一个方法都需要进行日志处理。相应的就会产生未登录无法访问对应接口的问题。我们需要在方法上方加注解(对应的自定义注解,ignore =false),即可正常使用。在addInterceptor中放开对应接口路径,但是调用这个接口依旧需要token。可以使用@SaIgnore注解与对应接口方法上方。
2024-07-29 13:18:35 565
原创 SpringBoot整合H2数据库并将其打包成jar包、转换成exe文件二(补充)
如果你想在cmd命令窗口内看到程序运行,即点开弹出运行窗口,关闭时exe自动关闭。这样转换好的exe就可以有控制台了。
2024-06-16 13:44:48 235
原创 SpringBoot整合H2数据库并将其打包成jar包、转换成exe文件
H2 是一个用 Java 开发的嵌入式数据库,它的主要特性使其成为嵌入式应用程序的理想选择。H2 仅是一个类库,可以直接嵌入到应用项目中,而无需独立安装客户端和服务器端。
2024-06-13 20:58:08 675 5
原创 利用Nacos和Feign实现两个微服务之间的调用
要用Nacos和Feign实现两个微服务之间的调用其实在程序编写上要比用Eureka和Feign实现两个微服务之间的调用简单。
2024-01-14 08:00:00 1466
原创 利用Eureka和Feign实现两个微服务之间的调用
根据上篇文章(在Eureka中注册多个服务(根据本地主机端口号区分)),我们已经掌握了Eureka的注入方法。本次我们需要实现微服务之间的调用,其实是将两个客户端注入Eureka,具体就是换一个注解。目的:用SClient1中的controller调用SClient0中相应的方法。
2024-01-13 08:30:00 702
原创 ZooKeeper教程2
Leader选举:Serverid:服务器ID比如说有三台服务器,编号分别是1,2,3。编号越大在选择算法中的权重越大。Zxid:数据ID服务器中存放的最大数据ID值越大说明数据越新,在选举算法中数据越新,权重越大。在Leader选举的过程中,如果某台zookeeper 获得了超过半数的选票,则此ZooKeeper就可以成为Leader了。
2024-01-10 08:00:00 988
原创 Zookeeper教程1
Zookeeper 是 Apache Hadoop 项目下的一个子项目,是一个树形目录服务。Zookeeper 翻译过来就是 动物园管理员,他是用来管 Hadoop(大象)、Hive(蜜蜂)、Pig(小 猪)的管理员。简称zkZookeeper 是一个分布式的、开源的分布式应用程序的协调服务。Zookeeper 提供的主要功能包括:配置管理:对项目的公共配置文件进行统一管理分布式锁:一个数据库可以被多个对象使用加锁,对象的其他属性不能使用这个数据库集群管理:可以管理多个对象。
2024-01-09 18:23:47 1091
原创 SpringBoot入门初学HelloWord,Bug总结
SpringBoot使用了3.0或者3.0以上,因为Spring官方发布从Spring6以及SprinBoot3.0开始最低支持JDK17,所以需要将SpringBoot版本降低为3.0以下。
2023-08-16 17:03:32 93
原创 过滤器为什么不叫AOP
虽然过滤器和AOP都涉及到在程序执行过程中的一些处理,但它们的目的和使用场景是不同的。过滤器主要用于Servlet容器中的请求和响应处理,而AOP主要用于分离和复用横切关注点。过滤器通常用于处理请求级别的逻辑,而AOP可以用于处理方法级别的逻辑。因此,虽然两者都是处理程序执行过程中的操作,但它们的设计和用途是不同的。Java中的过滤器(Filter)和AOP(面向切面编程)是两个不同的概念和技术。没有实现接口 cglib动态代理。实现接口的类 jdk动态代理。Spring AOP 实现原理。
2023-08-06 16:08:21 103
原创 MyBatis阶段Bug记录
在进行多表联查,一对多关系映射时,可能会产生一个结果:从表的某些参数取不到,例如id,原因:在select查询语句的前面没有获取相关列中的内容,所以最后如果用toString方法来输出结果的话,没有获取的项会输出为"null"。在进行多表联查,一对多关系映射时要注意:数据库中要设定相关外键,但是在相关实体类中,外键一般可以不显示出来,只定义相关主键参数即可。
2023-08-01 16:56:03 56
原创 在Java中对数据的处理
MyBatisPlus进行了功能增强,有代码生成器,开发效率高。应用于模型层,ORM框架,用于实现对象关系映射。MyBatis在javaee技术体系中的位置。在程序中写sql,其他交给spring完成。把x需要变换的内容,写到文件中。反序列化:将内存中的数据取出来。 可以操作各种数据库。用于替代JDBC的是EJB。 可以操作各种类。序列化:向内存中写数据。实体类和表的对应关系。持久化对象 PO。
2023-07-17 17:17:08 118 1
原创 JavaSe基础9
new FileOutputStream(path,append):path: 文件路径 append: 是否为追加,true为追加,false为不追加,默认为false
2023-07-17 09:24:54 128 1
原创 JavaSe基础6
第七章:内部类1、default: 只能在接口内使用修饰默认方法(在接口中定义一个方法,无需在接口的实现类中实现该方法)2、默认方法不是抽象方法,必须有方法体{}3、实现类中的默认方法无需加default4、实现接口中实现默认方法:接口.super.方法名();3、在实现多个接口中相同名称的方法时需要用:接口.super.方法名();实现此方法注:this:当前类的指针,super:父类的指针4、接口中可以实现静态方法,调用:类名.方法名();5、子类可以转成父类,父类不能强转成子类6、内部类:在
2023-02-09 10:24:51 53
原创 JavaSe基础3
当局部变量是基本数据类型时,对应的数据保存在栈中当局部变量是引用数据类型时,对应的数据保存在堆内存中,栈内存保存的是对应的对象在堆内存的内存地址根据类创建对象时,类中的全局变量(属性)会便随着对象保存在堆中我们使用某个类创建对象时,该类只会加载一次,然后我们根据这个类可以创建出很多的对象。
2022-11-27 13:30:12 131
原创 JavaSe基础2
Random类似Scanner,也是Java提供好的API,内部提供了产生随机数的功能API后续课程详细讲解,现在可以简单理解为Java已经写好的代码 数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致。数据类型[]数组名数组动态初始化就是只给定数泪的长度,由系统给出默认初始化值每一个存储到数组的元素,都会自动的拥有一个编号,从0开始。这个自动编号称为数组索引(index),可以通过数组的索引访问到数组中的元素内存是计算机中的重要原件,临时存储区域,作用是运行程序。
2022-11-21 15:12:12 113
原创 C语言的初步了解及简单学习入门
从硬件到操作系统再到应用程序,逐层的组成了我们现在使用的计算机。C语言的早期发展:1969-1973年在美国电话电报公司(AT&T)贝尔实验室开始了C语言的最初研发。根据C语言的发明者丹尼斯·里奇(Dennis Ritchie)说,C语言最重要的研发时期是在1972年。C语言之父和Unix之父——Dennis Ritchie。1978年与莱恩·科尔尼干(Brian Kerninghan)一起出版了名著《C程序设计语言(The C Programming Language)》,现在此书...
2022-01-10 20:23:02 689 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人