创建一个空的maven项目,整合SpringBoot和Redis

devtools/2024/9/22 10:50:00/

mavenSpringBootRedis_0">创建一个空的maven项目,整合SpringBoot和Redis

maven_1">创建空的maven项目

在最新版的idea中创建maven项目的时候会让选择模板 如下图:
在这里插入图片描述
我们选择quickstart快速开始模板,quickstart快速开始模板创建的maven项目里面什么都不带,只有一个简单的App类,啥都没有,是默认的maven项目模板,里面是最简单的架构。
看一下创建的项目模块内容如下图:
在这里插入图片描述

引入依赖

	<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-data-redis --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId><version>2.7.18</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>5.3.10</version> <!-- Use the appropriate version for your project --></dependency><!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>2.7.5</version></dependency>

在这里插入图片描述
其中spring-boot-starter-data-redis依赖是用来整合SpringBoot和Redis的;
spring-webmvc依赖是让项目可以在浏览器中通过http地址接口访问;
spring-boot-starter-web依赖是让项目引入tomcat服务器,这样SpringBoot项目才可以通过启动类启动起来 否则的话没有tomcat服务器 项目服务器是启动不起来的。

在src/main路径下面添加resources目录并增加配置文件application.properties

启动SpringBoot项目 必须要有resources资源目录以及application.properties配置文件,如下图:
在这里插入图片描述
因为这里我们只是把SpringBoot和Redis整合在一起,因此配置文件里面需要指定redis服务器的主机地址和端口号。

写业务逻辑类

@Service
public class RedisService {@Resourceprivate RedisTemplate<String, Object> redisTemplate;public void set(String key, Object value) {redisTemplate.opsForValue().set(key, value);}public Object get(String key) {return redisTemplate.opsForValue().get(key);}public void delete(String key) {redisTemplate.delete(key);}public void set(String key, Object value, long continueTime, TimeUnit unit) {redisTemplate.opsForValue().set(key, value, continueTime, unit);}
}/*** @author xuan* @create 2024/4/22*/
@ResponseBody
@Controller
public class RedisController {@Resourceprivate RedisService redisService;@GetMapping("/set/{key}/{value}")public String set(@PathVariable String key, @PathVariable String value) {redisService.set(key, value);return "Set key:" + key + ", value: " + value;}@RequestMapping(method = RequestMethod.GET, path = "/set")public String set2(String name) {redisService.set("name", name);return "Set key: name, " + "value: " + name;}@GetMapping("/get/{key}")public Object get(@PathVariable String key) {return redisService.get(key);}@RequestMapping(method = RequestMethod.GET, path = "/get")public Object get2(String key) {return redisService.get(key);}@GetMapping("/delete/{key}")public String delete(@PathVariable String key) {redisService.delete(key);return "Delete key: " + key;}@RequestMapping(method = RequestMethod.GET, path = "/delete")public String delete2(String key) {redisService.delete(key);return "Delete key: " + key;}@GetMapping("/setWithTime")public String setWithTime(String key, String value, long time) {redisService.set(key, value, time, TimeUnit.MILLISECONDS);return "Set key: " + key + ",value: " + value + "continueTime: " + time;}}

如下图:
在这里插入图片描述

通过SpringBoot启动类启动

最后我们需要通过SpringBoot启动类启动SpringBoot项目 如下图:
在这里插入图片描述
成功启动控制台信息 如下图:
在这里插入图片描述

项目代码地址

项目已经发到了码云中,项目地址:https://gitee.com/xuanyuanzy/redis
在这里插入图片描述


http://www.ppmy.cn/devtools/8872.html

相关文章

ShardingSphere 5.x 系列【23】分布式事务 BASE 模式集成 Seata

有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot 版本 3.1.0 本系列ShardingSphere 版本 5.4.0 源码地址:https://gitee.com/pearl-organization/study-sharding-sphere-demo 文章目录 1. 前言2. Seata3. BASE 事务4. 案例演示4.1 环境准备4.2 undo_log 表3.2 引…

Qt解析json格式数据

文章目录 json格式对象格式数组格式 QJsonDocument, QJsonObject,QJsonArray,QJsonValue例一&#xff1a;如何构建QJsonObject和QJsonDocument例二&#xff1a;解析前面的嵌套型json数据 json格式 对象格式 一个对象, 由一个大括号表示&#xff1a; 括号中 描述对象的属性&am…

【Java框架】SpringMVC(二)——SpringMVC数据交互

目录 前后端数据交互RequestMapping注解基于RequestMapping注解设置接口的请求方式RequestMapping注解的常用属性一个方法配置多个接口method属性params属性headers属性consumes属性produces属性 SpringMVC中的参数传递默认单个简单参数默认多个简单参数默认参数中有基本数据类…

外包干了16天,技术倒退明显

先说情况&#xff0c;大专毕业&#xff0c;18年通过校招进入湖南某软件公司&#xff0c;干了接近6年的功能测试&#xff0c;今年年初&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落&#xff01; 而我已经在一个企业干了四年的功能…

pytorch的mask-rcnn的模型参数解释

输入图像1920x1080,batch_size8为例. 训练阶段 loss_dict model(images,targets) 入参 images: List(Tensor(3,1920,1080))[8]targets: List(dict()[3])[8] dict详情见下表: keytypedtypesizeremarkboxesTensorfloat32(n,4)1the ground-truth boxes in [x1, y1, x2, y2] …

什么是防火墙?

在互联网行业当中&#xff0c;企业十分重视网络安全&#xff0c;服务器上通常会配置一些防火墙和防病毒软件等基础的安全措施&#xff0c;其中防火墙是比较常见的一种&#xff0c;今天就来具体了解一下什么是防火墙。 防火墙是一个由计算机硬件和软件组成的系统&#xff0c;也是…

Python学习之旅高级篇一:Web开发之旅

在Python学习之旅高级篇中&#xff0c;我们将探索如何使用Python进行Web开发。Flask和Django是两个非常流行的Python Web框架&#xff0c;它们可以帮助你快速构建Web应用程序。此外&#xff0c;了解如何设计和实现RESTful API也是Web开发中的一个重要技能。接下来的文章里&…

CentOS常见命令详解

CentOS常见命令详解 CentOS&#xff0c;作为企业级Linux发行版&#xff0c;以其稳定性和安全性受到了广大系统管理员和开发者的喜爱。在日常的系统管理和维护中&#xff0c;掌握一些常用的CentOS命令是至关重要的。本文将详细介绍一些CentOS中的常见命令&#xff0c;帮助读者更…