今日内容1. Junit单元测试
2. 反射
3. 注解 ## Junit单元测试: * 测试分类: 1. 黑盒测试:不需要写代码,给输入值,看程序是否能够输出期望的值。 2. 白盒测试:需要写代码的。关注程序具体的执行流程。* Junit使用:白盒测试
* 步骤:
1. 定义一个测试类(测试用例)
* 建议:
黑马点评 文章目录黑马点评项目介绍功能实现1.实现登录流程1.1 基于Session实现登录流程1.2 基于Redis实现登录流程2.实现缓存2.1缓存模型与思路2.2解决缓存与数据库不一致2.3解决缓存穿透2.4 缓存雪崩问题及解决思路2.5 缓存击穿问题及解决思路2.6 封装工具类3.优惠卷秒杀3.1Redis实现全局唯一Id3.2 实现秒杀下单(存在超卖问题)3.3库存超卖问题分析,乐观锁解
package cn.heima.test;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
import java.util.ArrayList;
import java.util.List;
public class te
1 黑马点评项目1.1 短信登陆1.1.1 短信登陆简介session共享问题:多台服务器并不共享session存储空间,当请求切换到不同tomcat服务时导致数据丢失的问题。在进行短信登录时,运用redis的String数据结构把手机号作为key,验证码作为value进行存储。查询用户获得用户信息后,运用redis的hash结构,用token当做key存储(token的意思是“令牌”,是服务器生
一、发布探店笔记1.1 需求分析探店笔记类似点评网站的评价,往往是图文结合。对应的表有两个:tb_blog:探店笔记表,包含笔记中标题、文字、图片等tb_blog_comments:其他用户对探店笔记的评价 修改文件上传路径:1.2 代码实现由于我把 Nginx 放在了 Linux 虚拟机上,而 Java 程序则是在我本地,如果依旧使用老师讲的那种上传方式,肯定实行不通。为了实现通过 Java 代
# Java黑马点评项目开发指南
作为一名刚入行的开发者,开始一个新项目可能会让你感到无从下手。今天,我们将一同来实现一个简单的“Java黑马点评项目”。本文将详细介绍项目的开发流程、代码实现,并附上甘特图和旅行图,帮助你掌握整个项目的构建过程。
## 一、项目开发流程
开发一个项目通常遵循以下步骤:
| 步骤 | 描述
一、图型界面 1、Awt:抽象窗口工具箱,它由三部分组成: ①组件:界面元素; ②容器:装载组件的容器(例如窗体); ③布局管理器:负责决定容器中组件的摆放位置。 2、图形界面的应用分四步: ① 选择一个容器: ⑴window:带标题的容器(如Frame); ⑵Panel:面板通过add()向容器中添加组件。 注:Panel不能作为顶层容器。 Java 的图形界面依然是跨平台的。但是在调用了一个窗
转载
2024-09-17 19:42:45
150阅读
跟着黑马程序员学习了微信小程序的项目:首先,创建各种包,接口,全局变量(使用微信开发者工具会很方便)创建好之后,项目会更加的清晰明了。之后编写全局变量app.json{
"pages": [
"pages/index/index",
"pages/category/category",
"pages/goods_list/goods_list",
"pages/
黑马点评的总结和反思1.缓存穿透问题的体现 *下面就是我们的解决的方法(一旦查询到一次不存在的值,就往redis里面放入我们的空字符串这样下次访问无效的数据就可以使用redis来返回空字符串来防止数据库的损伤) 下面就是解决方案(直接给出最终的工具类因为工具类就可以通用了) 2.解决缓存击穿问题的体现 解决思路 实现的思路 也是使用工具类的解决方法首先我创建了一个类里面有我们一个新的字段就是逻辑过
黑马React: 基础1Date: November 15, 2023 Sum: React介绍、JSX、事件绑定、组件、useState、B站评论 Tags: 二刷日志:11/20: 优化B站评论的案例实现, 增加基础结构和最终结果React介绍概念: React由Meta公司研发,是一个用于 构建Web和原生交互界面的库优势: 1-组件化的开发方式 2-优秀的性能 3-丰富的生态 4-跨平台开
在下载完基础测试的题目之后,打开浏览了下,感觉并不是很难。两三天就抽时间做完了,提交之后,老师的审查速度也很快,第二天就看到通过的结果。本来应该可以直接学习加强视频,但是好奇心促使我打开了基础视频的第一讲,随之就被毕老师的讲课风格和课程内容所吸引。虽然之间学习过编程语言的一些基本知识,慢慢地开始发现自己的基础知识体系很不完善,有很多知识都没有深入的理解清楚。我觉得无论之前有无编程基础,这个基础视频
转载
2023-10-21 22:33:10
224阅读
java_高新_javaBean javaBean:javaBean是一种特殊的Java类,主要用于传递数据信息,这种java类中的方法主要用于访问私有的字段,且方法名符合某种命名规则。 如果要在两个模块之间传递多个信息,可以将这些信息封装到一个JavaBean中,这种JavaBean的实例对
转载
2024-06-19 06:30:17
50阅读
目录认识微服务单体架构分布式架构微服务微服务结构微服务技术对比SpringCloud总结 ?服务拆分及远程调用服务拆分注意事项服务拆分示例实现服务远程调用提供者与消费者Eureka 注册中心服务调用出现的问题Eureka 的结构和作用动手实践搭建 EurekaServer注册 user-service 和 order-service在 order-service 完成服务拉取Ribbon 负载均
转载
2024-06-26 10:27:58
0阅读
本文介绍了秒杀系统的优化方案,主要包含两个部分:1. 使用RabbitMQ异步处理订单创建,替换原有同步数据库操作,并采用令牌桶算法进行限流;2. 完善订单超时处理和主动取消功能,通过RabbitMQ延迟队列实现30分钟未支付自动恢复库存,同时支持用户主动取消订单。系统采用Redis+Lua脚本保证库存操作的原子性,结合数据库事务确保数据一致性,使用Redisson分布式锁防止并发问题。优化后的系统具有更好的性能和可靠性,能够处理高并发场景下的秒杀业务。
一、代理概述1、要为已存在的多个具有相同接口的目标类的各个方法增加一些系统功能,例如,异常处理、日志、计算方法的运行时间、事物管理等等,该怎么做?答:编写一个与目标类具有相同接口的代理类,代理类的每个方法调用目标类的相同方法,并在调用方法时增加系统功能的代码。2、代理架构图:3、代理类的各个方法中除了要调用目标类的相应方法和对外返回目标类方法返回的结果外,还可以在代理方法中的如下三个位置加上系统功
Redis有三种集群方式:主从复制,哨兵模式和集群。主从复制主从复制原理 从服务器连接主服务器,发送SYNC命令;主服务器接收到SYNC命名后,开始执行BGSAVE命令生成RDB文件并使用缓冲区记录此后执行的所有写命令;主服务器BGSAVE执行完后,向所有从服务器发送快照文件,并在发送期间继续记录被执行的写命令;从服务器收到快照文件后丢弃所有旧数据,载入收到的快照;主服务器快照发送完毕
转载
2024-10-08 10:47:33
210阅读
文章目录1.小程序的第三方框架2. 帮助文件3.项目的搭建3.1新建小程序项目3.2搭建目录结构3.3. 搭建项目的页面3.4. 引⼊字体图标3.5 创建tabbar页面4. ⾸⻚4.1. 效果4.2 使⽤⾃定义组件的⽅式实现头部搜索框4.3 首页轮播图4.4 首页分类导航模块4.5 首页楼层模块5. 分类页面5.1 请求相关的数据5.2 页面的编写5.3 相关的样式5.3 添加缓存5.4 点击
Linux概述
Linux是基于Unix的,是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。
Linux系统的应用
• 服务器系统Web应用服务器、数据库服务器、接口服务器、DNS、FTP等
• 嵌入式系统路由器、防火墙、手机、PDA、IP 分享器、交换器、家电用品的微电脑控制器等
• 高性能运算、计算密集型应用,Linux有强大的运算能力
• 桌面应
前言: ?作者简介:我是笑霸final,一名热爱技术的在校学生。 商户查询缓存目录案列方法一set方法二 setWithLogicalExpire方法三 queryWithPassThrough方法四 queryWithLogicalExpire案列上节回顾仿黑马点评-redis整合【二——商户查询缓存】——缓存穿透、缓存击穿的解决一些工具代码//设
原创
2022-11-13 16:30:48
217阅读
对于不懂后端的我,做这件事真是受尽折磨。 在不懈努力下,终于成功。 下面写下笔记,与大家分享。第一步:关闭Apache及开机启动要使用nginx,最好停用mac中自带的Apache。停用很简单:sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist第二步:安装homebrewhomebrew是mac
转载
2024-07-23 19:12:58
231阅读