SpringMVC+Spring+mybatis+Redis项目从零开始--分布式项目结构搭建

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
简介: SpringMVC+Spring+mybatis+Redis项目从零开始--分布式项目结构搭建http://www.bieryun.com/1524.html 一.SSM项目-分布式项目结构搭建 二.SSM项目-Spring mybatis mysql配置实现 三.SSM项目-redis缓存策略和配置实现 四.SSM项目-Springmvc配置实现 一、SSM框架web项目从零开始--分布式项目结构搭建 /** 本文为博主原创文章,如转载请附链接。

SpringMVC+Spring+mybatis+Redis项目从零开始--分布式项目结构搭建

一.SSM项目-分布式项目结构搭建

二.SSM项目-Spring mybatis mysql配置实现
三.SSM项目-redis缓存策略和配置实现
四.SSM项目-Springmvc配置实现

一、SSM框架web项目从零开始--分布式项目结构搭建

/**

本文为博主原创文章,如转载请附链接。

**/

一.  SSM项目-目录框架搭建实现

1.    序言

做SSM项目有一段时间,从来没有系统性的对整个项目结构做一次总结,临近年关,趁着有时间,想把整个SSM项目框架的相关内容梳理一下,同时也弥补自己不足,可能有些考题考虑不周,请大家多多谅解。

本系列文章,会涉及到Springmvc,spring,mybatis,maven ,mysql,redis等框架知识,如果自身对相关知识不了解的同学,请到对应的官网进行自我充电。同时,本系列文章只是做SSM项目的搭建实例,有些问题不会深入。如果对您有帮助,请点赞吧!

2.    SSM项目从零开始文章目录

本系列文章将分四章进行,具体文章目录如下

1)   SSM项目-maven项目结构搭建

2)   SSM项目-Spring mybatis mysql配置实现

3)   SSM项目-redis缓存策略和配置实现

4)   SSM项目-Springmvc配置实现

3.    SSM项目-maven项目结构搭建

3.1  SSM项目结构

3.1.1     传统SSM项目结构

优点:所有项目代码统一分布在一个文件,易于管理;

缺点:所有项目代码统一分布在一起,各模块耦合度大,不利于代码分布式管理,不利于项目分布式部署,maven需要每个单独编译处理。

3.1.2     分布式SSM项目结构

缺点:代码分散,代码量加大;

优点:代码见耦合度降低,利于代码管理,项目见通过pom依赖进行相关调用依赖,部署时通过jar实现项目间依赖,同时利于项目分布式部署。

3.2  SSM项目结构实现

本节将实现3.1.2中分布式SSM项目结构,整体项目结构如下

3.2.1     ssm-parent

ssm项目maven父工程,pom中可以配置整个web应用相关的架包依赖,插件,jdk版本等
3.2.1.1  Maven project新建

1)   新建maven project项目;

2)   选择 Create a simple project…

3)   设置项目保存目录Location,如果选择默认,可能会出现项目目录文件混乱,不易管理。

3.2.1.2  Configure project

1)   Packaging需要选择pom;

3.2.1.3  ssm-parent项目结构

3.2.2     ssm-commons

ssm项目中公共组件包,以便其他工程调用。
3.2.2.1  Maven project

3.2.2.2  Configure project

1)   Packaging选择jar

2)   ParentProject输入ssm-parent相关信息

3.2.2.3  ssm-commons项目结构

3.2.3     ssm-manager

ssm项目中web应用实现工程
3.2.3.1  Maven project

3.2.3.2  Configure project

1)   Packaging选择pom;

2)   ParentProject输入ssm-parent

3.2.3.3  ssm-manager项目结构

3.2.4     ssm-manager-pojo

pojo存放项目相关实体

3.2.4.1  Maven module

3.2.4.2  Configure project

1)   Packaging选择jar

3.2.5     ssm-manager-service和ssm-manager-mapper

ssm-manager-mapper: dao层,主要与数据交互;

ssm-manager-service: service层,主要进行业务逻辑处理;

ssm-manager-service,ssm-manager-mapper的项目工程类似

ssm-manager-pojo

3.2.6     ssm-manager-controller

ssm-manager-controller:与前端交互控制,同时也包含前端代码;

3.2.6.1  Maven module

类似ssm-manager-pojo创建module;

3.2.6.2  Configure project

1)   Packaging选择war;

3.2.6.3  ssm-manager-controller项目结构

 

4.    SSM项目-项目结构总结

通过上面的步骤,我们SSM项目整体项目结构已搭建完成,下一章我们将引入Spring,mybatis实现相关配置。

 

二.  SSM项目-Spring mybatis mysql配置实现

三.  SSM项目-redis缓存策略和配置实现

四.  SSM项目-Springmvc配置实现

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
打赏
0
0
0
0
101
分享
相关文章
微服务——SpringBoot使用归纳——Spring Boot集成MyBatis——基于 xml 的整合
本教程介绍了基于XML的MyBatis整合方式。首先在`application.yml`中配置XML路径,如`classpath:mapper/*.xml`,然后创建`UserMapper.xml`文件定义SQL映射,包括`resultMap`和查询语句。通过设置`namespace`关联Mapper接口,实现如`getUserByName`的方法。Controller层调用Service完成测试,访问`/getUserByName/{name}`即可返回用户信息。为简化Mapper扫描,推荐在Spring Boot启动类用`@MapperScan`注解指定包路径避免逐个添加`@Mapper`
37 0
微服务——SpringBoot使用归纳——Spring Boot集成MyBatis——基于注解的整合
本文介绍了Spring Boot集成MyBatis的两种方式:基于XML和注解的形式。重点讲解了注解方式,包括@Select、@Insert、@Update、@Delete等常用注解的使用方法,以及多参数时@Param注解的应用。同时,针对字段映射不一致的问题,提供了@Results和@ResultMap的解决方案。文章还提到实际项目中常结合XML与注解的优点,灵活使用两者以提高开发效率,并附带课程源码供下载学习。
29 0
微服务——SpringBoot使用归纳——Spring Boot集成MyBatis——MyBatis 介绍和配置
本文介绍了Spring Boot集成MyBatis的方法,重点讲解基于注解的方式。首先简述MyBatis作为持久层框架的特点,接着说明集成时的依赖导入,包括`mybatis-spring-boot-starter`和MySQL连接器。随后详细展示了`properties.yml`配置文件的内容,涵盖数据库连接、驼峰命名规范及Mapper文件路径等关键设置,帮助开发者快速上手Spring Boot与MyBatis的整合开发。
65 0
对Spring、SpringMVC、MyBatis框架的介绍与解释
Spring 框架提供了全面的基础设施支持,Spring MVC 专注于 Web 层的开发,而 MyBatis 则是一个高效的持久层框架。这三个框架结合使用,可以显著提升 Java 企业级应用的开发效率和质量。通过理解它们的核心特性和使用方法,开发者可以更好地构建和维护复杂的应用程序。
160 29
Java后端开发-使用springboot进行Mybatis连接数据库步骤
本文介绍了使用Java和IDEA进行数据库操作的详细步骤,涵盖从数据库准备到测试类编写及运行的全过程。主要内容包括: 1. **数据库准备**:创建数据库和表。 2. **查询数据库**:验证数据库是否可用。 3. **IDEA代码配置**:构建实体类并配置数据库连接。 4. **测试类编写**:编写并运行测试类以确保一切正常。
121 2
分布式爬虫框架Scrapy-Redis实战指南
本文介绍如何使用Scrapy-Redis构建分布式爬虫系统,采集携程平台上热门城市的酒店价格与评价信息。通过代理IP、Cookie和User-Agent设置规避反爬策略,实现高效数据抓取。结合价格动态趋势分析,助力酒店业优化市场策略、提升服务质量。技术架构涵盖Scrapy-Redis核心调度、代理中间件及数据解析存储,提供完整的技术路线图与代码示例。
分布式爬虫框架Scrapy-Redis实战指南
【📕分布式锁通关指南 02】基于Redis实现的分布式锁
本文介绍了从单机锁到分布式锁的演变,重点探讨了使用Redis实现分布式锁的方法。分布式锁用于控制分布式系统中多个实例对共享资源的同步访问,需满足互斥性、可重入性、锁超时防死锁和锁释放正确防误删等特性。文章通过具体示例展示了如何利用Redis的`setnx`命令实现加锁,并分析了简化版分布式锁存在的问题,如锁超时和误删。为了解决这些问题,文中提出了设置锁过期时间和在解锁前验证持有锁的线程身份的优化方案。最后指出,尽管当前设计已解决部分问题,但仍存在进一步优化的空间,将在后续章节继续探讨。
495 131
【📕分布式锁通关指南 02】基于Redis实现的分布式锁
|
2月前
|
Springboot使用Redis实现分布式锁
通过这些步骤和示例,您可以系统地了解如何在Spring Boot中使用Redis实现分布式锁,并在实际项目中应用。希望这些内容对您的学习和工作有所帮助。
198 83
太惨痛: Redis 分布式锁 5个大坑,又大又深, 如何才能 避开 ?
Redis分布式锁在高并发场景下是重要的技术手段,但其实现过程中常遇到五大深坑:**原子性问题**、**连接耗尽问题**、**锁过期问题**、**锁失效问题**以及**锁分段问题**。这些问题不仅影响系统的稳定性和性能,还可能导致数据不一致。尼恩在实际项目中总结了这些坑,并提供了详细的解决方案,包括使用Lua脚本保证原子性、设置合理的锁过期时间和使用看门狗机制、以及通过锁分段提升性能。这些经验和技巧对面试和实际开发都有很大帮助,值得深入学习和实践。
太惨痛: Redis 分布式锁 5个大坑,又大又深, 如何才能 避开 ?
Redis分布式锁如何实现 ?
Redis分布式锁主要依靠一个SETNX指令实现的 , 这条命令的含义就是“SET if Not Exists”,即不存在的时候才会设置值。 只有在key不存在的情况下,将键key的值设置为value。如果key已经存在,则SETNX命令不做任何操作。 这个命令的返回值如下。 ● 命令在设置成功时返回1。 ● 命令在设置失败时返回0。 假设此时有线程A和线程B同时访问临界区代码,假设线程A首先执行了SETNX命令,并返回结果1,继续向下执行。而此时线程B再次执行SETNX命令时,返回的结果为0,则线程B不能继续向下执行。只有当线程A执行DELETE命令将设置的锁状态删除时,线程B才会成功执行S
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等