- 博客(75)
- 收藏
- 关注
原创 xxl-job任务调度
注: @XxlJob(value = "demoJobHandler3") 与调度中心-->任务管理-->SpringBoot项目(即执行器)启动后 , 在调度中心可看到这个项目。1 启动徐雪莉的xxl-job-admin项目(即调度中心)7 对调度中心-->任务管理 , 新建任务。2 创建SpringBoot项目 (即执行器)只需要写负责人,任务描述(乱填即可),demoJobHandler3相对应。4 修改配置文件(执行器配置)这样调度中心才能找到这个任务;JobHandler里的。
2024-10-30 21:28:42
341
原创 WebSocket
WebSocket是基于TCP的一种新的网络协议。它实现了浏览器域服务器全双工通信——浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的链接,并进行双向数据传输。HTTP是短连接,是单向的,基于请求响应模式;WebSocket是长连接(有点像打电话,双向消息),支持双向通信。HTTP和WebSocket底层都是TCP连接。应用:视频弹幕,网页聊天(聊天窗口和客服聊天),体育实况更新,股票基金报价实时更新。
2024-07-23 21:38:51
531
2
原创 Spring Task
Spring Task是Spring框架提供的任务调度工具,可以按照约定的时间自动执行某个代码逻辑。定位:定时任务框架。作用:定时自动执行某段Java代码。应用场景:信用卡每月还款提醒。银行贷款每月还款提醒。火车票售票系统处理未支付订单(自动取消超时支付的订单)。入职纪念日为用户发送通知。
2024-07-23 20:23:57
594
1
原创 SpringCache介绍
SpringCache提供了一层抽象,底层可以切换不同的缓存实现(只需要导入不同的Jar包即可),如EHCache,Caffeine,Redis。2.3@CacheEvict(cacheNames = "userCache",key="#id") //key的形式 userCache::10。在方法上加入@Cacheable:方法执行时,会先查询是否有缓存,如果有,直接调用缓存;如果没有,将sql查询出来的数据存入缓存。在方法上加入@CacheEvict:将一条或多条数据从缓存中删除。
2024-07-16 20:57:10
358
原创 代码随想录 数组2
给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的 连续 子数组,并返回其长度。在暴力解法中,是一个for循环滑动窗口的起始位置,一个for循环为滑动窗口的终止位置,用两个for循环 完成了一个不断搜索区间的过程。只不过这种解法更像是一个窗口的移动,所以叫做滑动窗口更适合一些。窗口的起始位置如何移动:如果当前窗口的值大于等于s了,窗口就要向前移动了(也就是该缩小了)。窗口的结束位置如何移动:窗口的结束位置就是遍历数组的指针,也就是for循环里的索引。
2024-07-13 17:05:28
597
原创 代码随想录:数组篇2(有序数组的平方)
这个时间复杂度是 O(n + nlogn), 可以说是O(nlogn)的时间复杂度,但为了和下面双指针法算法时间复杂度有鲜明对比,我记为 O(n + nlog n)。做题的时候自己能分析出来时间复杂度就可以了,至于leetcode上执行用时,大概看一下就行,只要达到最优的时间复杂度就可以了,给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。那么数组平方的最大值就在数组的两端,不是最左边就是最右边,不可能是中间。
2024-07-13 15:39:21
407
原创 代码随想录:数组篇1
示例 1: 给定 nums = [3,2,2,3], val = 3, 函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。示例 2: 给定 nums = [0,1,2,2,3,0,4,2], val = 2, 函数应该返回新的长度 5, 并且 nums 中的前五个元素为 0, 1, 3, 0, 4。给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。元素的顺序可以改变。
2024-07-12 19:53:31
350
原创 动态sql set标签 , trim标签
set标案解决了逗号问题(当if条件不满足时,逗号无处安放的问题),我认为set标签可以识别这个问题,并自动忽略这个问题。
2024-06-03 21:08:27
299
原创 Redis常用数据类型
LPUSH key value1 [value2] 将一个或多个值插入到列表头部LRANGE key start stop 获取列表指定范围内的元素(如果stop为-1则表示获取全部元素)RPOP key 移除并获取列表最后一个元素LLEN key 获取列表长度。
2024-04-21 15:43:09
1647
原创 Redis入门
Redis是一个基于内存的key-value结构数据库。因为内存有限所以不能存储所有数据。Redis只存储热点数据。下载方式:直接在苍穹外卖资料包中第5天的资料中,选择windows版本x64版的压缩包解压。redis默认没有密码,如果需要密码则修改redis.windows.conf配置文件。此时重新登录也并不会提示输入密码,但如果输入keys *则会报错,身份验证被要求。也可以通过图形化界面来操作服务。输入ctrl+c就是停止服务。输入exit即可退出。
2024-04-21 15:30:18
386
原创 @RequestParam和@RequestBody
前端请求传Json对象则后端使用@RequestParam;前端请求传Json对象的字符串则后端使用@RequestBody
2024-04-21 15:24:55
148
原创 枚举类的使用场景
Java 枚举(Enum)是一种特殊的数据类型,它是一组预定义的常量,每个常量都有一个名称和一个值。枚举类型在 Java 中被广泛使用,它可以用来代替常量、标志位、状态码等,使代码更加清晰、易读和易维护。下面是 Java 枚举的详细介绍。2 枚举的使用在 Java 中,可以通过关键字enum来定义枚举类型。Constant1,Constant2,Constant3,...其中EnumName是枚举类型的名称,Constant1Constant2Constant3等是枚举类型的常量。
2024-04-14 11:37:41
528
原创 苍穹外卖jwt令牌p10
在注解内的参数指示了配置类中的参数,比如sky.jwt,就去application.yml文件中找sky jwt的配置项,这些配置项就对应了相应的属性。@ConfigurationProperties注解代表当前类是一个配置属性类,作用是:封装配置文件中的一些配置项。原理就是:通过配置属性类,将配置文件中的配置项,封装成一个类,然后通过@Autowired注解注入到要使用的地方。若想程序在所希望的地方停止,可以添加断点,然后点击左下角的右箭头,意思是放行;
2024-04-11 17:00:41
436
原创 spring-boot整合mybatis
三 , dao接口与doman接收数据实体类(省略)同样创建boot项目 , 还得勾选SQL的两个选项。二,在yml文件设置数据源。
2024-03-24 22:01:41
228
原创 力扣70. 爬楼梯(三种解法)
我又读了题 , 发现可以`投机取巧 , 不就45个数嘛 , 我直接列出来就好 , 代码如下。三 , 最后看来官方题解 , 感觉和我的递归异曲同工 , 为递归的变种 , 但复杂度大大下降。当我一看到这道题时变一下子想到了递归 , 代码如下。确实可以做出来,测试也通过了 , 但是时间超时了。你有多少种不同的方法可以爬到楼顶呢?1. 1 阶 + 1 阶 + 1 阶。有两种方法可以爬到楼顶。1. 1 阶 + 1 阶。有三种方法可以爬到楼顶。2. 1 阶 + 2 阶。3. 2 阶 + 1 阶。
2024-03-09 11:59:03
347
原创 spring整合Junit , Spring整合mybatis
1.2在test.java文件新建测试文件,开始整合。1.spring整合Junit。1.1导入Junit坐标。
2024-03-07 21:09:51
345
原创 (全注解开发)学习Spring-MVC的第三天
第一部分 :1.1 消除spring-mvc.xml这些是原来spring-mvc.xml配置文件的内容其余两个配置 , 需要新建一个WebMvcConfigurer类 , 去实现相关功能1.2 加载核心配置类。
2024-02-22 22:21:33
1439
原创 (拦截器)学习SpringMVC的第三天
拦截器的几个处理阶段 2.1 实现拦截器接口 2.2 在spring-mvc.xml里配置 第一种情况第二种情况 来解释一下 : 当任意一个preHandle不执行时 , Handle处理器(即@contrller)就不执行了 , 所以postHandle就不执行了 , (可以认为Handler与PostHandlder绑定) 后面只执行前面已经执行过的preHandle对应的afterCompletion .
2024-02-22 16:08:25
589
原创 学习SpringMVC第二天
第二种方法 : 用SpringMVC解决 ,设置静态资源映射匹配 , 在Spring-mvc.xml里配置。<mvc:default-servlet-handler/>, 在spring-mvc.xml里配置。第一种方法与springmvc无关 , 用的是tomcat的东西在web.xml里配置。第三种方法: 还是用SpringMVC解决 , 直接加一个。第二种方法与第三种方法都是用springmvc容器完成.我可以用注解驱动代替上文繁琐代码 , 很方便。这是原来的配置 , 显得非常繁琐。
2024-02-21 20:43:40
396
原创 学习springMVC第二天
http://localhost/users/1 删除用户信息 DELETE(删除)http://localhost/users/1 查询指定用户信息 GET(查询)描述模块的名称通常使用复数,也就是加s的格式描述,表示此类资源,而非单个资源,例如:users、books...上述行为是约定方式,约定不是规范,可以打破,所以称REST风格,而不是REST规范。隐藏资源的访问行为,无法通过地址得知对资源是何种操作。
2024-02-21 19:33:22
480
原创 SpringMVC第一天
3.编写controller(注入了spring容器里的servise)spring容器仍然为:service+application.xml模式。2.在web.xml里配置DispatcherServlet前端控制器。3.5 spring-mvc容器组件扫描。3.5.5 返回页面index.jsp。1.导入spring-mvc坐标。SpringMVC简介。
2024-02-20 15:20:54
515
原创 学习Spring的第十八天
EnableTransactionManagement //<tx:annotation-driven/> 事务的自动代理 ,注解驱动。@PropertySource("classpath:jdbc.properties") 加载Propertys。@ComponentScan("com.itheima") 扫描注解component。@MapperScan("com.itheima.mapper") 扫描Mapper。测试省略(spring_trans_test)
2024-02-15 19:27:16
519
原创 学习Spring的第十五天
方法show1()得到了增强 (其实UserServiceImpl里的每一个方法都得到了增强, 在此演示show1())面向切面编程采用动态代理的方式进行对相关方法增强。以下采用JDK官方提供的Proxy类创建代理对象。Spring Aop 面向切面编程。
2024-02-05 21:18:30
387
原创 学习spring第十四天
在配置类上加上 @MapperScan("com.itheima.mapper")最后是service文件,注入userMapper , 就完成配置。Spring注解方式整合第三方框架。xml整合MyBatis方式,如下。三个配置文件的内容与以前一致。其余基础配置和xml文件一样。在配置类里写入代码如下。
2024-02-04 14:01:54
270
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人