自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 minio最新配置

【代码】minio最新配置。

2024-06-18 09:55:17 140 1

原创 SpringSecurity(JWT、SecurityConfig、Redis)

signWith(signatureAlgorithm, secretKey) //使用HS256对称加密算法签名, 第二个参数为秘钥。passwordEncoder.matches("明文","密文");//可查看是否相等返回一个布尔值。.setId(uuid) //唯一的ID。.setIssuer("fancy") // 签发者。

2024-06-16 17:40:45 945

原创 排查服务器cpu运行过高

ps -eo pid,tid,%cpu | grep 进程号 //查看线程id。运行jar包并把它挂在后台,而且生成log文件。jps -lm 查看jar包是否真的跑起来了。就得到了进程id和线程id,但为了查看线程。top查看所有进程,找出占用率最高的。查看所有运行的jar包。kill -9 进程号。jstack 线程id。

2024-06-09 15:13:05 291

原创 java:poi导出word文档

【代码】java:poi导出word文档。

2024-06-04 12:16:40 498

原创 redis配置找不到

在heima-leadnews-user服务中的bootstrap.yml文件中添加redis配置(需要安装redis服务)注意:后期如果heima-leadnews-user服务需要依赖于redis,则需要把上述配置注释或删除。1.报redis配置找不到,原因是找不到redis服务。

2024-05-22 00:44:00 198

原创 SpringTask定时任务

2022年10月12日上午9点整对应的cron表达式为:0091210?cron表达式其实就是一个字符串,通过cron表达式可以定义任务触发的时间。定时任务类需要加上注解@Component都需要交给Spring容器来管理。所以几号和周几只选一个,几号不一定是周几,所以必须有一个是?启动类上加上@EnableScheduling //开启任务调度。构成规则:分为6或7个域,由空格分隔开,每个域代表一个含义。每个域的含义分别为:秒、分钟、小时、日、月、周、年(可选)一般方法没返回值,注解放在方法上。

2024-05-21 00:12:06 219

原创 WebSocket

webSocketServer.sendToAllClient("这是来自服务端的消息:" + DateTimeFormatter.ofPattern("HH:mm:ss").format(LocalDateTime.now()));System.out.println("收到来自客户端:" + sid + "的信息:" + message);System.out.println("客户端:" + sid + "建立连接");* WebSocket配置类,用于注册WebSocket的Bean。

2024-05-20 23:50:01 635

原创 SpringCache

CachePut 将方法的返回值放入到缓存中 ---------- 一般用于新增。----一般用于getById。为使得键不为重复而覆盖数据,可以选取主键作为key来缓存返回值,这里result代表返回值,如果取第一个参数则#p0第二个参数呢就#p1。@EnableCaching 一般放在启动类上,表示我们使用基于注解的缓存功能----开启缓存注解功能。@CacheEvict一条或多条数据从缓存中删除。

2024-05-20 23:08:44 242

原创 苍穹外卖-Redis配置(十)

/方法为:set、get、setex、setnx这里setex也还是set,setnx对应的是setIfAbsent。这里的key有两个概念,一个是redis的key,一个是哈希表的key、如果没有设置密码,就把配置文件中的密码注释掉。//故set键值对,这个键不存在,方法set成功,若不存在则set失败。H哈希对应的方法为hset、hget、hdel、hkeys、hvals。members("set1")//展示所有元素,返回一个Set集合、add(“set1”,"a","b","c")//添加元素。

2024-05-20 00:43:30 253

原创 Java导入导出Excel

Controller层。

2024-04-15 15:03:29 185 1

原创 苍穹外卖-关于HttpClient单元测试(九)

HttpClient 是Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。创建client对象,构造请求对象,调用client中的execute发送出去。get方法请求和post方法请求。

2024-02-29 18:35:08 237

原创 苍穹外卖-营业状态设置(八)

设置两个相同的方法docket,改变docket.groupname设定为不同端的接口文档。Controller层user包下同样需要店铺状态,只是只能查询状态,不能设值。两个包下其他都相同,唯有user包下的方法不能状态设置只能查询,映射redis。在RestController后面指定名称来区分。redis字符串进行存储,1表示营业0表示打烊。关于两个bean方法名字相同都注入容器会冲突。Controller层admin包。**需求分析和设计**-管理端查询营业状态。-用户端查询营业状态。

2024-02-29 16:54:26 154

原创 Redis的常用数据类型与操作

KEYS pattern 查找所有符合给定模式( pattern)的 key 比如说*就是查找redis数据库中所有的key 这里模式很灵活跟搜索框一样,比如set* set开头的key。如果存在则设置失败,抢购秒杀,或者新闻热点,大量的用户去访问的数据,就适合存放在Redis中,是对mysql的补充,往往项目中是和mysql共存的状态。

2024-02-29 11:20:37 404

原创 苍穹外卖-菜品修改(查询回显、修改=删除插入)(七)

/关于口味的修改很复杂,可能没变,可能增加了可能删除了、使用一种简单的方式/先将之前的都删除了,然后再按新的口味再插入进来。//因为新增和修改的提交的格式是一样的,所以传进的参数也是DTO。//因为新增和修改的提交的格式是一样的,所以传进的参数也是DTO。//关于口味的修改很复杂,可能没变,可能增加了可能删除了。log.info("根据id查询菜品{}",id);//使用一种简单的方式 先删除再重新插入。//再根据菜品id查询对应的口味。//查询到的数据封装到VO。//现根据id查询菜品表。

2024-02-25 19:39:50 489

原创 苍穹外卖-删除菜品(六)

返回值是套餐SetMealId的集合,传进去的参数是DishIds菜品id集合 返回值List不为空并且size>0则说明关联着,就抛出删除异常终止方法。将套餐和菜品关联起来的表,比如说查询菜品dish通过这个dishId查询表能够查到套餐setMealId那就说明是存在关联就不能删除。思考:对于删除菜品删除口味的id循环遍历,遍历次数过多,sql发出数量过多会引发性能问题。//判断菜品是否可以删除,起售中就不可以删除。//当前菜品起售中,不能删除。-可以一次删除一个菜品,也可以批量删除菜品。

2024-02-25 15:24:18 379

原创 苍穹外卖-菜品管理(菜品分页查询)(五)

写进xml还有一个动态的条件判断,用where标签,然后if条件判断是否为空,因为传进来的参数是dto所以就三个属性判断除了page和pagesize。调用mapper层的分页查询方法(分页dto参数),赋值给每页显示的数据的一个列表Page此时取名变量为page。数据库查询菜品以及菜品的分类名称返回给VO,传进来的参数是分页PageDTO(不包含菜品分类名称)使用到左外连接,查询dto全部以及分类表的名字,条件分类菜品的分类id = 分类表的id。

2024-02-25 10:20:04 540

原创 苍穹外卖-新增菜品(四)

关于配置文件xml的标签insert中,`useGeneratedKeys="true"`说明需要获得整个insert语句插入的时候所生成的主键值。dishDTO中不止菜品数据还有口味数据(动态数组),所以添加菜品的方法不能传进去DTO。多个数据表的操作,需要保证数据的一致性,serviceimpl加一个事务注解。//new的dish是空的,就用传进来的参数DTO传值。//这里的属性拷贝一定要保证属性的顺序是一致的。新增菜品涉及两张表的操作,一个新增菜品,一个是口味插入数据。* 新增菜品,对应的口味数据。

2024-02-25 10:19:23 334 1

原创 苍穹外卖-新增菜品(菜品图片-文件上传)(三)

甚至是prod的yml也就是生产的配置文件 直接修改yml中spring.profiles.active为prod多环境直接把配置文件切换了 目前是关联dev所以具体的配置数据都在dev中。在阿里云申请的bucket就是一个空间 创建一个配置属性类,在写阿里云oss配置属性有提示 创建在common的properties中。utils包下的aliossutil存储文件上传的方法,四个属性没有赋值,通过配置类的方式给属性初始化出来。utils中存储Aliossutils里upload文件上传方法。

2024-02-25 10:18:52 737

原创 苍穹外卖-员工分页查询、启用禁用、编辑员工、公共字段填充(二)

Pointcut() 里面写切入表达式,哪些类的哪些方法进行拦截 execution指定拦截的是什么,返回值是所有的* 拦截的是com.sky.mapper.*.*(..)" @注解为(com.sky.annotation.AutoFill)//获得方法上的注解对象。//before注解表示前置通知,并且指定为切入点,切点表达式即将执行,也就是匹配到切点表达式的时候,就进行执行方法。//execution指定拦截的是什么,返回值是所有的* 拦截的是com.sky.mapper.*.*(..)"

2024-02-25 10:18:09 1344

原创 苍穹外卖-新增员工(一)

手动设置密码默认的123456,还要加密employee.setPassword(DigestUtils.md5DigestAsHex(PasswordConstant.DEFAULT_PASSWORD.getBytes()));在传过来的对象发现dto和实体类的属性名一致,就可以用对象属性拷贝就不用一个一个 employee.setName(employeeDTO.getName());关于这个状态1是启动,0是禁用。public void set(T value) 设置当前线程的线程局部变量的值。

2024-02-25 10:11:35 271

原创 Java常用集合

Map接口下常用到**子类HashMap、TreeMap 孙类LinkedHashMap ** 共同特点是:不重复、无索引 唯一区别是无序,有序和排序 所以和Set是极其相似的。** 2、Set系列集合:添加的元素是无序、不重复、无索引。//获取Map集合的全部键。子类常用到**ArrayList、LinkedList**:有序、可重复、有索引。子类**TreeSet**:按照大小默认升序排序、不重复、无索引。孙类**LinkedHashSet**:有序、不重复、无索引。

2024-02-17 16:57:42 356 1

原创 spring boot(统一响应结果、分层架构、ioc容器)-下

service运行时需要dao对象,controller层运行时需要service对象只需要在类的成员变量上不需要再new这个类直接在这个创建接口上方加上注解@Autowired通过类型在容器里寻找bean。service操作方式和dao基本相同的也是先创建接口empservice,然后定义方法获取员工列表,在impl创建类empserviceA 来实现接口,同样定义方法。只不过dao就是访问数据,service就是逻辑处理,service中创建dao对象,再调用listemp方法拿到返回的数据。

2024-02-17 14:12:58 1189 1

原创 spring boot(Http、注解、接口测试工具postman)-上

常见的请求头:user-agent浏览器版本(用于浏览器的兼容性处理)、accept接受的资源类型、content-length主体的字节大小、content-type主体的数据类型。get的请求参数在请求行里,在请求路径后面跟上?关于实体对象,前面使用@RequestBody注解来标识,就可以将json格式的请求数据直接封装到实体对象中。4XX客户端错误(检查客户端的请求路径,请求参数是否正确,再或者禁止访问,未被授权)是无状态协议,每一次请求响应都是独立的,后一次请求不会记录前一次请求数据的。

2024-02-17 14:11:54 401 1

原创 Mysql(下)

事务的特性:原子性(不可分割),持久性(一直被保留修改),隔离性(多个事务相互独立),一致性(事务操作前后,数据总量不变)一般在三到四层,所有的数据都存在叶子节点的,所有的非叶子节点仅仅起到索引的作用。多表查询的结果叫做,笛卡尔积,就是A集合和B集合.组合情况就叫做笛卡尔积,A集合5行,B集合3行,总共就查出来15行。左外和右外就是相对的关系,掌握一个就可以,比如表1和表2交换一下位置继续用左外连接,其实就相当于右外连接。多个步骤的业务操作,执行就执行一串流程,要不就是所有语句成功也要不就是所有语句失败。

2024-02-17 14:11:13 362 1

原创 Mysql(中)

如果能通过A的属性值确定B,A-->B,则成为B依赖于A,比如学号确定学生.则学生依赖于学号,学号和课程能推算出分数.关于遵循不同的规范要求设计出合理的关系型数据库,不同的规范要求被称为范式.越高的范式数据库数据冗余越小。//比如学院系,系主任,学生,没招生多了系不能添加数据,或者同学毕业了,系也跟着删除了,都是严重问题.多对多比如学生和课程,就需要中间表联动,中间表就是多行相同的学生id对应不同的课程id。第一范式,第二范式,第三范式,巴斯-科德范式,第四范式,第五范式又称为(完美范式)

2024-02-17 14:10:40 149 1

原创 Mysql(上)

where 和having的区别:where在分组前进行限定,不满足不进行分组.having是分组后进行限定,比如男女进行分组如果分组后必须人大于2则having count(id)>2。alter table emp add constraint emp_dep_fk foreign key (dep_id) references 主表名称(主表主键名称) );constraint emp_dep_fk foreign key (dep_id) references 主表名称(主表主键名称) );

2024-02-17 14:09:05 331 1

原创 MybatisPlus(条件构造器Wrapper-lambda、自定义sql)

type-aliases-package:com.itheima.mp.domain.po #别名扫描包 主要用于扫描映射文件,来mapper与xml文件sql语句对应,来扫描id。mapper-locations:"classpath*:/mapper/**/*.xml"# Mapper.xml文件地址,默认值。属性名和数据库关键字冲突,比如order 用``裱起来 ``` @TableField(" `order` ")```User user =new User();

2024-02-17 09:11:01 1331 1

logback-demo项目日志记录

logback-demo项目日志记录

2024-06-23

spring-logback日志项目模块

spring-logback日志项目模块

2024-06-23

日志myLogApp日志记录项目

日志myLogApp日志记录项目

2024-06-23

权限系统-品达(spring微服务项目)

权限系统-品达(spring微服务项目)

2024-06-23

Windows版本nacos-免费下载

Windows版本nacos-免费下载

2024-05-28

若依开源框架-Gitee

若依开源框架-Gitee

2024-05-26

Windows下的redis服务及client可视化界面安装包

Windows下的redis服务及client可视化界面安装包

2024-05-20

企业小程序-基本架构思维导图

企业小程序-基本架构思维导图

2024-05-19

可靠医疗技术方案-设计文档

可靠医疗技术方案-设计文档

2024-05-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除