一:什么是ShiroApache Shiro 是 Java 的一个安全框架。 不仅可以用在 JavaSE 环境,也可以用在 JavaEE 环境。Shiro 可以帮助我们完成:认证、授权、加密、会话管理、与 Web 集成、缓存等 官网:https://shiro.apache.org/ 点击进入Shiro官网二:基本功能Authentication:身份认证 / 登录,验证用户是不是拥有相应的身份;
application.propertiesspring.thymeleaf.cache=falsespring.thymeleaf.content-type=text/htmlspring.thymeleaf.enabled=truespring.thymeleaf.encoding=UTF-8spring.thymeleaf.mode=HTML5spring.thymelea...
原创 2022-05-17 14:16:55
366阅读
# 秒杀系统的设计与实现 ## 1. 引言 秒杀是一种高并发的应用场景,在传统的应用架构下,很容易导致系统崩溃或者请求超时。为了解决这个问题,我们可以借助Redis作为缓存和消息队列,使用Spring Boot来快速搭建一个高性能的秒杀系统。 本文将介绍如何使用Spring Boot和Redis实现一个简单的秒杀系统,并对系统的设计进行详细解释。我们将使用Java编程语言进行代码示例。 ##
原创 2023-10-12 09:48:25
56阅读
# 如何实现"Redis秒杀Spring Boot"教程 ## 1. 整体流程 ```mermaid flowchart TD A(开始) --> B(初始化秒杀商品库存) B --> C(用户点击秒杀) C --> D(判断库存是否充足) D --> E{库存充足} E -- 是 --> F(生成订单) E -- 否 --> G(秒杀失败)
原创 2024-03-24 05:18:09
14阅读
程序员如何搞副业? 文章目录程序员如何搞副业?强烈推荐引言基本概念原理优势常见的调度器核心接口Spring WebFlux核心部分特点:案例引入依赖代码请求响应总结强烈推荐专栏集锦写在最后 强烈推荐前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站:人工智能引言eactor是一种基于响应式流规范的库,它提供了一种简单而强大的方式来处理异步和事件驱动的编
Apache Maven可以帮助我们构建项目、管理项目中的jar包Maven仓库:存放构件的位置--本地仓库:默认是:~/.m2/repository:对于我的电脑为C:\Users\liuze\.m2\repository--远程仓库:中央仓库(官网)、镜像仓库(第三方如aliyun)、私服仓库(一家大的公司,自己用)Maven参考基础的网址:http://maven.apache.org/gu
什么是JMS?引用百度百科上的说明:JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持。JMS是一种与厂商无关的 API,用来访问消息收发系统消息,它类似于JDBC
转载 2024-04-24 21:37:35
10阅读
系统介绍本系统是使用SpringBoot开发的高并发限时抢购秒杀系统,除了实现基本的登录、查看商品列表、秒杀、下单等功能,项目中还针对高并发情况实现了系统缓存、降级和限流。开发工具IntelliJ IDEA + Navicat + Sublime Text3 + Git + Chrome压测工具JMeter开发技术前端技术 :Bootstrap + jQuery + Thymeleaf后端技术 :
转载 2024-06-28 20:10:36
21阅读
SpringBoot-redis@Bean @ConditionalOnMissingBean( name = {"redisTemplate"}// 如果没有这个类那么就会执行,也就是,我们可以自己定义一个redisTemplate来替换这个默认的 ) public RedisTemplate<Object, Object> redis
转载 2023-08-22 10:40:28
43阅读
1)新建一个maven工程quickStart,然后在pom文件里添加依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> &l
技术栈升级mall项目采用现阶主流技术实现,这些主流技术基本都升级了目前最新稳定版,具体升级内容大家可以参考下表。技术版本说明 升级过程升级过程中遇到一些问题,这里整理了下,给想要升级这套技术栈的小伙伴一个参考!支持SpringBoot 2.7.0看了下之前使用的2.3.0版本,一年前就End of Support了,升级2.7.0还是很有必要的。 升级2.7.0版本不仅是改个
转载 2024-10-09 12:25:47
14阅读
权限管理权限管理包括用户身份认证和授权两部分,简称认证授权身份认证:就是判断一个用户是否为合法用户的过程授权:即访问控制,控制谁能访问哪些资源主流权限管理框架:Apache公司的Shiro 简单易用,Spring的SpringSecurity,难度比较大。Shiro概念Shiro是一个apache旗下的一个开源框架,它将软件系统的安全认证相关的功能抽取出来,实现用户身份认证,权限授权、加密、会话管
转载 2024-10-12 11:07:02
27阅读
回顾热部署Spring Boot 中的热部署相信大家都用过吧,只需要添加 spring-boot-devtools 依赖就可以轻松实现热部署。Spring Boot 中热部署最最关键的原理就是两个不同的 classloader:base classloaderrestart classloader其中 base classloader 用来加载那些不会变化的类,例如各种第三方依赖,而 restar
系统介绍本系统是使用SpringBoot开发的高并发限时抢购秒杀系统,除了实现基本的登录、查看商品列表、秒杀、下单等功能,项目中还针对高并发情况实现了系统缓存、降级和限流。开发工具IntelliJ IDEA + Navicat + Sublime Text3 + Git + Chrome秒杀优化方向将请求尽量拦截在系统上游:传统秒杀系统之所以挂,请求都压倒了后端数据层,数据读写锁冲突严重,几乎所有
springboot秒杀系统第七弹 秒杀功能的实现及秒杀安全优化。 秒杀功能为了缓解数据库压力,采用rabbitmq,异步下单的方式,使用rabbitmq的好处常见有消峰,异步,解耦。 预减缓存,控制流量访问。 spring类的初始化,加载数据到内存。 接口的隐藏。 验证码的生成。秒杀功能第一步1 秒杀接口地址隐藏,首先good_detail.htm界面如下:<!DOCTYPE HTML&g
转载 2024-05-28 20:50:21
16阅读
文章前言现在电商项目都有许多的秒杀活动,今天这一篇博客就是让大家,自己动手编程一个秒杀的过程,话不多说直接上手所需工具idea+redis+rabbitmq+Jmeter+RedisDesktopManager+tkmybatis安装工具的路径RabbitMQ安装教程>Redis和RedisDesktopManager安装教程Jmeter安装教程数据库数据库使用 mysql,下面是表结构搭建
目录1. 产品介绍2. 产品面向的用户群体3. 产品的范围4. 产品中的角色5. 产品的功能需求5.1 功能性需求分类5.2功能层次结构图6. 产品的非功能性需求6.1 用户界面需求6.2 软硬件环境需求6.3 产品质量需求数据库设计:前台页面:在线商城首页:编辑首页Home.vue源代码: 商品详情页:编辑 源代码Detail.Vue我的购物车: 我的订单:返回数据
一、电商秒杀应用简介商品列表页获取秒杀商品列表进入商品详情页获取秒杀商品详情秒杀开始后进入下单确认页下单并支付成功一、SpringBoot搭建项目1、创建项目2、修改pom.xml文件官方文档:https://spring.io/guides/gs/rest-service/2.1 添加父pom<parent> <groupId>org.springframewor
在本教程中,我们将学习如何使用 Spring boot 作为后端和 Vue JS 作为前端来构建一个简单的全栈应用程序。Vue JS 是一个用于在前端构建用户界面 (UI) 的渐进式框架。   Spring Boot 是一个非常流行的 Java 框架,用于构建 RESTful Web 服务和微服务。 在本教程中,我们将使用 Axios HTTP 库进行 HTTP Get REST API
文章目录1 项目简介2 实现效果2.1 界面展示3 设计方案3.1 概述3.2 系统开发流程3.3 系统结构设计4 项目获取 1 项目简介Hi,各位同学好呀,这里是M学姐!今天向大家分享一个今年(2022)最新完成的毕业设计项目作品,【基于SSM的网上购物商城】学姐根据实现的难度和等级对项目进行评分(最低0分,满分5分)难度系数:3分工作量:5分创新点:3分界面美化:5分界面美化的补充说明:使用
  • 1
  • 2
  • 3
  • 4
  • 5