- 博客(29)
- 收藏
- 关注
原创 Redis速成(1)VMware虚拟机安装Redis+Session验证登录注册+MybatisPlus
由于客户端和服务器可能不在同一个域下,Token 需要作为凭证在每次请求中传递,服务器通过解析 Token 来确认用户的身份和权限。如果验证码不保存在Session里,而是直接显示在网页上,那么恶意用户可能会通过技术手段直接读取验证码,从而绕过验证。Session 是一种服务器端存储机制,服务器在用户登录时会创建一个 Session,并将用户的状态信息存储在服务器端。当你在网站上看到验证码图片时,网站不仅把验证码显示给你,还会把验证码的正确答案“偷偷”保存在你的Session里。(通常是一个随机字符串)。
2025-02-26 21:36:06
1018
原创 Redis速成(1)VMware虚拟机+Session验证登录注册+MybatisPlus
接口,它封装了所有常见的 CRUD 操作方法,开发者无需手动编写 SQL 语句,框架会自动根据实体类和方法名生成对应的 SQL 并执行。这就是“更便捷的 CRUD 操作”的含义。参考springboot,需要额外写mapper.class,在方法上+@Select等。MyBatis-Plus 提供了一个。sqlsession实现与数据库连接。配置 sql mapper映射文件。
2025-02-24 21:55:15
209
1
原创 Redis文档总结
比如数据集 {1, 3, 5, 7, 5, 7, 8}, 那么这个数据集的基数集为 {1, 3, 5 ,7, 8}, 基数(不重复元素)为5。基数估计就是在误差可接受的范围内,快速计算基数。流水线操作有助于客户端向服务器发送多个请求,而无需等待回复,最后只需一步即可读取回复传统数据库遵循 ACID 规则。而 Nosql(Not Only SQL 的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称) 一般为分布式而分布式一般遵循 CAP 定理。
2025-02-20 19:05:41
860
原创 SpringBoot速成概括
视频:黑马程序员SpringBoot3+Vue3全套视频教程,springboot+vue企业级全栈开发从基础、实战到面试一套通关_哔哩哔哩_bilibili图示:
2025-02-19 22:00:47
298
原创 SpringBoot速成(16)项目部署P30
application.yml,application-devDB.yml数据源,application-devSelf.yml自定义,application-devServer.yml,服务的可访问性:部署到服务器后,程序可以通过网络(如互联网或内网)被其他设备访问,从而实现其功能。原因:打包jar包前,要先运行IDEA的BigEventAppilcation,已占用端口8080。profiles:隔离测试开发运行,并在特定环境下某些配置生效。其他不用的代码,在.yml中添加注释,# 空一格再写中文。
2025-02-19 17:10:16
378
原创 SpringBoot速成(14)文件上传P23-P26
1. 什么是?想象一下,你有一个包裹要寄给朋友,但包裹里有不同类型的东西:比如一封信(文字)、一张照片(图片)和一个小礼物(文件)。为了确保这些东西都能安全地送到朋友手里,你需要把它们分别包装好,然后放在一个大盒子里寄出去。就是这样一个“大盒子”,它用来把不同类型的数据(比如文字、文件等)打包在一起,然后通过网络发送给服务器。2. 为什么需要?当你需要上传文件(比如图片、文档)到服务器时,普通的表单数据()是不够用的,因为它只能发送文本数据,不能发送文件内容。而。
2025-02-18 11:28:13
436
原创 SpringBoot速成(13)文章管理P20-P22
这是一个元注解,表示该注解会被包含在JavaDoc文档中。当使用这个注解的类或方法生成JavaDoc时,注解信息也会被记录下来。这个元注解指定了注解的适用范围。FIELD表示这个注解只能用于字段(成员变量)。如果需要扩展适用范围,可以添加其他元素,例如METHODTYPE等。这个元注解表示注解的保留策略。RUNTIME表示注解在运行时仍然可用,可以通过反射获取注解信息。其他保留策略包括SOURCE(仅在源码阶段保留,编译时丢弃)和CLASS(编译时保留,但在运行时不可用)。
2025-02-18 10:19:23
815
原创 SpringBoot速成(12)文章分类P15-P19
1.Postman登录不上,可以从头registe->login一个新的成员:注意,跳转多个url时,post/get/patch记得修改成controller类中对应方法上写的2.postman运行成功:但表中不更新:细节有问题:c是小写拼写错误3.sql层报错,已运行到mapper层->controller层没有对参数校验。
2025-02-16 23:18:18
949
原创 SpringBoot速成(11)更新用户头像,密码P13-P14
1.是 Spring MVC 中非常实用的注解,用于从 HTTP 请求中提取参数并绑定到控制器方法的参数上。2.是 Spring MVC 中的一个注解,用于处理 HTTP 的PATCH请求。PATCH请求通常用于对资源的部分更新,而不是像PUT请求那样对资源进行完全替换。在你的例子中,表示这个方法会处理路径为的PATCH请求。@里边写的是 updateAvater()参数中能得到的东西修改:updateTime=now()与的区别:前者需要在Controller类中方法的参数上写上。
2025-02-16 14:54:40
296
原创 SpringBoot速成(十)更新用户信息P11-P12
1.是 Spring 框架中用于处理 HTTP 请求体的注解,通常用于控制器(Controller)层的方法参数中。当客户端发送一个包含 JSON 或 XML 数据的 HTTP 请求时,可以使用将这些数据绑定到一个 Java 对象中。
2025-02-12 16:31:14
401
原创 SpringBoot速成(九)获取用户信息 P9-P10
举例:若createTime,updateTime值为空(和nickname,email)一样,原因:类中是驼峰命名,数据库表中是下划线命名。是一个工具,它可以让每个线程都有自己的“小盒子”,用来放一些数据。这些数据是每个线程自己用的,不会被其他线程看到或修改。P9 07:09:如何让Authorization直接保存。两个线程,是一个ThreadLocal对象,但线程隔离。可在application.yml中。1.存取数据:set,get()3.最后用remove()释放。
2025-02-12 12:36:08
292
原创 SpringBoot速成(八)登录实战:未登录不能访问 P5-P8
2.运行顺序:搜索/artical/list时,未登录情况下会调用拦截器:先经过WebConfig,再调用拦截器LoginInterceptor,若失败则返回401,若成功则返回ArticalController中的。签名(防止Token被篡改,确保安全,将header,paload加入指定密钥,通过指定签名算法技算得到)重新生成token,并修改验证方法中的token,再次运行,成功!头(alg:签名算法,type:令牌类型JWT)举例:若修改载荷,则token失效,时间过期,密钥错误都会失效。
2025-02-09 21:37:23
536
原创 SpringBoot速成(七)注册实战P2-P4
1.表示匹配任何非空白字符。注意,这里使用了双反斜杠 ,因为在 Java 字符串中,反斜杠 是转义字符,所以需要用 来表示一个反斜杠。:表示前面的字符(这里是 )必须出现 5 到 16 次。也就是说,字符串的长度必须在 5 到 16 个非空白字符之间。修改: 是 Spring Boot 中用于定义全局异常处理器的注解,它是 和 的组合2. 是 Apache Commons Lang 库中的一个工具方法,用于判断字符串是否具有长度(即是否非空且不为空字符串):StringUtils.hasLe
2025-02-09 17:52:18
1254
原创 SpringBoot速成(六)自定义starter
再创建一个项目:</project>是 MyBatis 中的核心组件,它的主要作用是创建SqlSession,而SqlSession是执行命令、获取映射器和管理事务的。是一个 Spring 集成 MyBatis 的工具类,用于扫描指定包路径下的接口,并将带有@Mapper注解的接口注册为 Spring 的 Bean。//自动配置类//SqlSessionFactory:创建sqlsession,并告诉连接哪个database;@Bean@Bean//扫描哪个包。
2025-02-08 19:54:07
329
原创 SpringBoot速成(五)注册功能
当你看到 Result<T>,这意味着你可以创建一个 Result 类的对象,其中的 data 属性可以是任何类型的数据。例如,你可以有 Result<String>、Result<Integer> 或者 Result<List<User>>第二次修改:@PostMapping("/")改成@GetMapping("/"),重用性:Result<T> 可以被用于多种类型的数据,提高了代码的灵活性和重用性。@PostMapping("/")改成@GetMapping("/")仍报错,第二次改:成功!
2025-02-06 22:58:27
565
原创 SpringBoot速成(四)Spingboot整合mybatis
6.mvn install:install-file -Dfile=C:\Users\enjoy\Administrator\Bean注册\common-pojo-1.0-SNAPSHOT.jar -DgroupId=cn.itcast -DartifactId=common-pojo -Dversion=1.0 -Dpackaging=jar。controller类中把@RestController写成了@Controller。-DartifactId:jar包安装好后的工程名。
2025-02-06 19:23:55
254
原创 SpringBoot速成(三)yml配置:发送信息到自己的邮箱
注释:@Service表明是service @Autowired表明Bean EmailProperties的内容给emailproperries。主要用于存放那些通用的、可复用的工具方法或工具类。这些工具类通常不依赖于业务逻辑,而是提供一些通用的功能,用于支持整个应用程序的开发和运行。@Value("${email.user}")或者@ConfigurationProperties(prefix="email")注释:@RestController表明是Rest控制器。
2025-02-04 23:12:54
332
原创 SpringBoot速成(二)
SpringBoot速成(一)-优快云博客前提:有SSM,数据库,前端基础,使用企业版IDEA用书:SpringBoot+Vue全栈开发实战(关注+私信发电子版)说明:代码块中是每章知识点总结(几十页浓缩成几句话)
2025-01-26 16:21:56
442
原创 SpringBoot速成(一)
2.验证链接的合法性:Java 23 可能尚未正式发布或不被 Spring Initializr 支持。ERROR2解决:pom.xml右击,再点Add........,添加Maven(添加时长在5分钟以上,耐心等...)三个地方调,将java版本变为17,ERROR1中改为21在这还报错的原因是:最高到18,所以统一变成17。ERROR3解决:在settings,project structure,pom.xml中。IDEA右侧出现Maven后,点击Maven Settings,配置Maven。
2025-01-24 23:50:40
1102
原创 Mybatis基础
使用Mybatis第一步,创建Mybatis,导入SqlSessionFctory,实现sql语句。*Mybatis是持久层框架,方便+用的多 比JDBC简单。持久层:eg:Dao层。
2025-01-24 01:20:34
125
原创 SpringBoot速成(创建第一个springboot项目)
2.基础配置(涉及HTTP,HTTPS,I/O,Rest控制器)1.开发第一个SpringBoot程序。
2025-01-24 01:19:59
570
原创 模电基础与ARM
包括4个模式:线程(芯片复位后),处理(处理器发生异常、中断,完成后返回线程模式),Thumb(正常运行时的处理器),调试(调试程序时的处理器)三极管放大特性:(类似水阀)电压小时电流速度慢,但通过三极管提高三极管之后的电流速 应用:测电笔,经过几个npn三极管。*处理器划分:存储结构划分(冯诺依曼,哈佛)指令类型划分(RISC即ARM,CISC即八二原则)4.集成电路:把元器件(电阻,电容,二极管,晶体管.......)组合到pcb电路板上。9.继电器:电流通过导线,产生磁,吸引磁铁,进行开/闭。
2024-08-22 09:53:08
297
原创 Vue基础内容
学一门课最应该理解为什么学他,前景是什么,和原来课程相比有什么不同,老师很少告诉我们这些...刚开始学前端,直接用vscode写代码,觉得创建网页非常简单,无非是:html:结构 HTML css:样式 定义字体,颜色等等js:与Web客户交互作用 鼠标悬停,提交表单等等Web开发中,后端有很多语言可以选择(SQL,Python,Java),前端只有js,其中
2024-04-10 22:30:15
586
2
原创 反射实例化对象&反射实例化生成工具类
/(ShapeFactory)有定要写,因为getBean()返回Object,和ShapeFactory不是一个类型,这点忘记写了,会报错的,点击就可以自动添加上。2.而且如果多个javaBean的实例化信息存放在properties内,不免会出现属性重复的情况。比如Person类有name属性,User类也有name属性,这时就需要创建多个properties文件。1.实例化不同的对象,需要更改配置文件的className值。若有有参构造函数,会自动生成无参构造函数。类A有实现类B,C,D。
2024-04-03 17:27:43
1536
1
原创 java的异常处理-java与数据库连接对数据进行操作
1.有哪些异常:异常:编译期异常,运行期异常1.多个异常即多重catch块:1.执行:不一定只有一个异常啊,but,当try中捕获到某个异常,会跳转到与之匹配的catch块,菀菀类卿,只取其一,最终只会执行一个catch块。无论是否执行catch中语句,finally都会执行。但当catch,finally中都有return语句时,执行结果是什么呢:catch(){return 1;结果显示:💴;return 0;catch(){
2024-04-02 00:28:46
986
1
原创 什么是SQL注入攻击
推荐使用PreparedStatement,相比Statement,前者可以预处理,就可以节省时间。对数据库中的多个对象进行操作时,更推荐用PreparedStatement!SQL注入攻击就是小偷远程操控,发送错误指令(比如把密码偷走,工作人员以为是你本人的操作,就把钱转走),让操作人/本人以为是正确信息,从而失去💴。但如今,指纹,面容,掌纹,声音都被逐渐采集,很多时候会有信息被盗,窃听等等。想想看过的电影,无非是小偷得到账户密码,进入系统。学习计算机初衷无非是觉得电影里的电脑黑客十分厉害,行侠仗义。
2024-03-31 18:33:35
264
1
原创 用IDEA实现Java与数据库连接
while(rs.next())与if(rs.next()):前者全部读取,后者读取一次。System.out.println("登录失败");Java与数据库连接所用jar包:该jar包即使数据库与Java连接并实现功能。jar包可以直接导入,也就是直接用别人写好的代码,这部分你就不用再写了。其中Server version:就是版本号!
2024-03-30 23:02:03
2941
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人