【笔记】回顾JavaWeb结合自身开发的项目——分层解耦与IOC、MySQL简单查询

分层解耦的三层架构

在这里插入图片描述
如下图所示是手术训练系统中的实现:
在这里插入图片描述

如果你需要从new EmpServiceA()变为new EmpServiceB(),那么必然需要修改Service和Controller层的代码,那么如果我们不new 这个对象呢?是不是就不需要依赖Controller层。
在这里插入图片描述
思路:提供一个容器存入一些对象,将EmpServiceA在容器种存入一个a对象,Controller程序运行的时候需要依赖empService这个类型的对象
在这里插入图片描述
如果这个时候需要B这个对象
在这里插入图片描述
即使service层代码变了,我们也不需要修改Controller层的代码。这里就引出了Spring的第一大核心IOC,将所有的对象都交给了容器管理。
如下图所示是手术训练系统中的实现:
在这里插入图片描述

IOC与DI

在这里插入图片描述
如何切换呢?如下图所示,只需要将EmpServiceB的@Component注解注释掉(不加入容器),将EmpServiceB的@Component注解加入容器
在这里插入图片描述

在这里插入图片描述

MySQL简单查询

在这里插入图片描述

一对多数据库的设计

多的一方建立一列少的一方的主键
在这里插入图片描述
如下图所示是手术训练系统中的实现:
手术训练系统的一个任务对应多条成绩
在这里插入图片描述

一对一数据库的设计

在这里插入图片描述
如下图所示是手术训练系统中的实现:
手术训练系统中的任务表与任务配置表
在这里插入图片描述

多对多数据库的实际

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/129395.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

关于maven读取settings.xml文件的优先级问题

今天在IDEA中配置maven的setting.xml文件路径指向的.m2路径下的setting_a.xml文件,同时,我的maven3.6.3也放在.m2中。 [1] .m2文件夹 [2] apache-maven-3.6.3文件夹 然后,在IDEA中打包发布时发现,无论如何都读取不到指定的setti…

GPT最佳实践:五分钟打造你自己的GPT

前几天OpenAI的My GPTs栏目还是灰色的,就在今天已经开放使用了。有幸第一时间体验了一把生成自己的GPT,效果着实惊艳!!!我打造的GPT模型我会放到文章末尾,大家感兴趣也可以自己体验一下。 打造自己的GPT模型…

小程序如何设置下单提示语句

下单提示会展示在购物车和提交订单页面,它可以帮助商家告知客户事项,提高用户体验和减少错误操作。例如提示:商品是否包邮、某些区域是否发货、商品送达时间等等。 在小程序管理员后台->配送设置处,填写下单提示。在设置下单提…

使用电阻检测仪是否能满足生产车间防静电要求

在现代工业生产中,静电对产品质量和人员安全造成的影响越来越受到重视。特别是在电子、半导体、化工等领域,静电问题可能导致产品损坏、人员触电等严重后果。因此,生产车间的防静电工作显得尤为重要。而电阻检测仪作为一种常用的防静电工具&a…

​软考-高级-系统架构设计师教程(清华第2版)【第2章 计算机系统基础知识-思维导图】​

软考-高级-系统架构设计师教程(清华第2版)【第2章 计算机系统基础知识-思维导图】 课本里章节里所有蓝色字体的思维导图

【分布式id生成系统——leaf源码】

分布式id生成系统——leaf源码 号段模式双buffer优化id获取 Leaf ,分布式 ID 生成系统,有两种生成 ID 的方式: 号段模式Snowflake模式 号段模式 由于号段模式依赖于数据库表,我们先看一下相关的数据库表: biz_tag&…

【Unity插件】分享几个完全免费的2D角色动画生成器(推荐收藏)

文章目录 前言一、lpc-character-generator二、Universal-LPC-Spritesheet-Character-Generator三、UP主开发的2D人物换装系统四、Character Editor: Megapack完结 前言 你可能游戏开发能力很强,但是正愁于2D角色动画,那么这篇文章就是为你而准备的&…

Jira Software Enterprise Crack

Jira Software Enterprise Crack Jira软件是为您的应用程序组中的每一个成员设计、监控和启动优秀软件的。 策略:生成用户故事和问题,策略冲刺,并在应用程序团队中分配任务。 跟踪:在具有绝对可见性的完整背景下,确定团…

GTDB-Tk基因组物种注释

文章目录 安装GTDB-Tk v2.3.3 and gtdbtk_r214_data.tar.gzGTDB-Tk v2.1.1 and gtdbtk_r207_v2_data.tar.gzGTDB-Tk 1.3.0 数据库classify_wf 物种注释一步使用分步使用批量dRep以及GTDB注释注意报错由于基因组存在重复id导致Pfam报错 查看已经安装的数据库iTOL可视化问题pplac…

SSM项目与Redis整合以及Redis注解式开发以及Redis击穿穿透雪崩

目录 前言 一、SSM项目整合Redis 1.导入pom依赖 2.Spring-redis相关配置 3.Spring上下文配置 二、redis注解式缓存 1.Cacheable 注解 2.CachePut 注解 3.CacheEvict 注解 三、redis击穿、穿透、雪崩 1. 缓存击穿 2. 缓存穿透 3. 缓存雪崩 前言 当将SSM项目与Red…

docker下的nginx代理转发到tomcat

多次尝试失败原因,修改nginx配置文件以后,需要./nginx.sh -s reload 下,之前一直不转发,好像完全没有跳转的意思,后来查了多篇文档,最简单的方法如下 docker 安装 nginx 和tomcat就不多说了,可…

创建一个小表表空间A。一个大表表空间B.并创建一个用户B1默认表空间为B。

目录 ​编辑 1、创建小表表空间 A 2、创建大表表空间 B 3、创建用户 B1 并将其默认表空间设置为 B 4、授权给用户 B1 的权限 1、创建小表表空间 A CREATE TABLESPACE A DATAFILE /u01/app/oracle/oradata/orcl/datafile_A.dbf SIZE 10M; 2、创建大表表空间 B 这个时间会略…

基于SSM的个人网站的设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…

2023第六届泰迪杯数据分析

第六届带队”指导“请私信本人,团队包含技能赛双一等,数学建模省一,泰迪杯挖掘国一,研究生队友。 去年一等作品可视化图如下,私信获取源码

高清视频转换格式如何保证质量?

日常生活中不可避免的会遇到需要转换视频的情况,而目前大部分转换的过程中对视频的质量都会有些损坏,如果在保证视频质量的同时将视频转换为自己需要的格式呢? 保证视频质量的前提我们要知道视频质量都和视频的哪些参数有关系,在…

AI 编程工具带来了什么

注册 地址为 https://web.devchat.ai/signup/ AI 编程工具带来了什么 深度学习框架: 用于实现神经网络和深度学习模型的框架,如TensorFlow、PyTorch、Keras等。这些工具提供了高级的API和工具,使得实现和训练神经网络变得相对容易。 自然语…

零基础必知的Python简介!

文章目录 前言1.Python 简介2.Python 发展历史3.Python 特点3.为什么是Python而不是其他语言?4.Python的种类总结关于Python技术储备一、Python所有方向的学习路线二、Python基础学习视频三、精品Python学习书籍四、Python工具包项目源码合集①Python工具包②Python…

访问者模式-操作复杂对象结构

商场里有许多的店铺,大致分为服装区、饮食区及休闲区,每天都会有络绎不绝的不同角色(打工人、学生、有钱人)的人来逛商场。商场想开发个系统用来模拟这些人的在这些店铺的行为。 public class SuperMarket {public static void m…

拥抱中国发展新机遇,原知因制药再次亮相2023进博会

11月5日至10日,第六届进博会在国家会展中心(上海)成功举办。作为世界上首个以进口为主题的国家级博览会,进博会成为构建新发展格局的窗口、高水平开放的载体,持续为世界经济注入正能量。 原知因制药再次亮相进博会&am…

【C++】new和delete深度解析

文章目录 一、new/delete是什么?1.new2.delete 二、new/delete怎么用?1.new2.delete3.new[]4.[]delete 三、new/delete为什么?1.为什么有operator new/operator delete?2.为什么要匹配使用new和delete? new/delete测试环境:visu…