浅浅了解一下SSM框架,全网最新

一.SSM框架初体验

作为当下流行的企业开发MVC开源框架,SSM框架是我们Java程序猿必须熟练掌握的知识点,

SSM框架是spring MVC ,spring和mybatis框架的整合.

SSM框架是标准的MVC模式,将整个系统划分为表现层,controller层,service层,DAO层四层 使用spring MVC负责请求的转发和视图管理, spring实现业务对象管理,mybatis作为数据对象的持久化引擎,接下来我们会主要说一下这三个框架。

MVC,即模型(model)-视图(view)-控制器(controller)的缩写,是一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方式来构造代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。

ps:框架之所以流行,在于其易复用和简化开发,精髓在思想,掌握了核心思想,我们掌握其他类似框架也不会有问题。_______________________________________________________

二.SpringMVC在框架中的主要任务

1.客户端发送请求到DispacherServlet(分发器)

2.由DispacherServlet控制器查询HanderMapping,找到处理请求的Controller

3.Controller调用业务逻辑处理后,返回ModelAndView

4.DispacherSerclet查询视图解析器,找到ModelAndView指定的视图

5.视图负责将结果显示到客户端

具体历程大体是这样:

_____________________________________________________________________________

三.Spring:

   我们平时开发接触最多的就是IOC容器,这边我们主要浅谈一下用的最多的IOC容器,,它可以装载bean(也就是我们Java中的类),有了这个机制,我们就不用在每次使用这个类的时候为它初始化,很少看到关键字new。

(1) IOC思想与依赖注入

IOCInversion of Control,翻译过来是反转控制

①获取资源的传统方式

就类似于我们自己做饭:买菜、洗菜、择菜、改刀、炒菜,全过程参与,费时费力,必须清楚了解资源创建整个过程 中的全部细节且熟练掌握。

在应用程序中的组件需要获取资源时,传统的方式是组件主动的从容器中获取所需要的资源,在这样的 模式下开发人员往往需要知道在具体容器中特定资源的获取方式,增加了学习成本,同时降低了开发效 率。

②反转控制方式获取资源

快捷的吃饭方式:点外卖:下单、等、吃,省时省力,不必关心资源创建过程的所有细节。

反转控制的思想完全颠覆了应用程序组件获取资源的传统方式:反转了资源的获取方向——改由容器主 动的将资源推送给需要的组件,开发人员不需要知道容器是如何创建资源对象的,只需要提供接收资源 的方式即可,极大的降低了学习成本,提高了开发的效率。这种行为也称为查找的被动形式。

DI

DIDependency Injection,翻译过来是依赖注入

DI IOC 的另一种表述方式:即组件以一些预先定义好的方式(例如:setter 方法)接受来自于容器的资源注入。相对于IOC而言,这种表述更直接。

所以结论是:IOC 就是一种反转控制的思想, 而 DI 是对 IOC 的一种具体实现。

(2)IOC容器在Spring中的实现

Spring IOC 容器就是 IOC 思想的一个落地的产品实现。IOC 容器中管理的组件也叫做 bean。在创建bean 之前,首先需要创建 IOC 容器。Spring 提供了 IOC 容器的两种实现方式:

BeanFactory

这是 IOC 容器的基本实现,是 Spring 内部使用的接口。面向 Spring 本身,不提供给开发人员使用。

ApplicationContext

BeanFactory 的子接口,提供了更多高级特性。面向 Spring 的使用者,几乎所有场合都使用

ApplicationContext 而不是底层的 BeanFactory

___________________________________________________________________________

四.Mybatis:

(1)mybatis是对jdbc的封装,它让数据库底层操作变的透明。

(2)mybatis的操作都是围绕一个sqlSessionFactory实例展开的。mybatis通过配置文件关联到各实体类的Mapper文件,Mapper文件中配置了每个类对数据库所需进行的sql语句映射。在每次与数据库交互时,通过sqlSessionFactory拿到一个sqlSession,再执行sql命令。

(3)同时可以让SQL Java 编码分开,功能边界清晰。Java代码专注业务、SQL语句专注数据

 

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浅浅的分享一下2022年ISCC

WEB 冬奥会:你来参加2022届冬奥会,想知道冬奥会的主办方想告诉你什么吗?题目入口:59.110.159.206:7060 我们根据审计可知需要我们构造 josn 然后 get 传参,需要绕过的地方: 1.is_numeric()对 year 的过滤…

冷热数据浅浅见

冷热数据浅浅见 一、前言二、冷热数据的标准(判断)三、判断冷热数据的算法3.1 基于数据结构特点的判断算法3.1.1 传统的方法3.1.2 改进的方法 3.2 基于统计学上的判断算法3.3 基于机器学习的判断算法 四、总结五、参考 一、前言 这个星期看了关于目前数…

商汤日日新大模型90天大升级!CEO现场整活,主打突破想象力

金磊 发自 WAIC量子位 | 公众号 QbitAI 商汤“日日新”AI大模型,如其名,真的做到了日日新。 这不,从发布到现在,时隔仅仅3个月,商汤便正式宣布: 商汤日日新(SenseNova)大模型体系全面…

一张快照就能还原出一段视频!AAAI 2023论文提出快照压缩成像新算法 | 开源

飞晔 投稿量子位 | 公众号 QbitAI 随着光学算法发展,如今我们用低维传感器也能“捕获”高维信号了。 举个例子,这是我们用2D传感器拍到的一张“照片”,看起来充满了噪声数据: 然而,正是通过这张“照片”所包含的数据&a…

微信春节大数据出炉:《三体》阅读量第一 ;曝iOS 17应用商店将向第三方开放;斯坦福大学推出DetectGPT|极客头条

「极客头条」—— 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。 整理 | 梦依丹 出品 | CSDN(ID:CSDNnews) 一分钟速览新闻点&…

chatgpt赋能python:Python如何输出彩色的文字

Python如何输出彩色的文字 介绍 Python是一种高级编程语言,它广泛用于数据处理、人工智能、机器学习等各种领域。在Python编程中,输出信息是非常重要的部分。而有时,我们可能希望将输出的信息以不同的颜色呈现,以便更好地区分不…

视觉媒体通信——无损视频播放器

0 前言 我想,看这篇文章的朋友十有八九是在大三下选了这门课。那么我首先祝贺你们,即将结束美好的大学时光。以前听说这门课很难,但是这门课最大的诱惑就是没有期末考试~,所以我当初就选了。我也很担心自己不会做,但是…

chatgpt赋能python:Python绘制彩色线条的详细教程

Python绘制彩色线条的详细教程 简介 Python作为一门高级编程语言,可以用于许多不同领域的应用程序。其中,绘图是Python中很有用的一个应用领域。本文将介绍如何使用Python绘制彩色线条的方法,以及这对于数据可视化有多么重要。 方法 使用…

chatgpt赋能python:Python彩色转黑白简介

Python彩色转黑白简介 Python是一种高级编程语言,提供了许多内置功能和库来进行图像处理。其中之一就是彩色转黑白。彩色图像是RGB(红色,绿色和蓝色)通道的混合,而黑白图像则只有灰度值。 在本篇文章中,我…

chatgpt赋能Python-python_print_彩色

Python打印彩色文本:给你的代码添加亮丽的色彩 如果你是一位具备10年Python编程经验的工程师,那么你一定知道在Python中如何使用print函数输出文本。但是,你是否知道如何打印出彩色的文本?这样一来,你的代码就会变得更…

chatgpt赋能python:Python彩色字体介绍

Python彩色字体介绍 Python是一种高级编程语言,启发式风格的语法使其成为学习编程的理想选择。本文将介绍如何在Python代码中使用彩色字体。如果您是Python编程初学者,这篇文章将对您有所帮助。 什么是彩色字体? 彩色字体是一种添加颜色信…

chatgpt赋能python:Python彩色图像处理

Python彩色图像处理 Python是一门富有表现力语法和丰富库的语言,因此它成为了许多图像处理和计算机视觉任务的首选语言。其中,Python彩色图像处理已经被广泛应用,如图像滤波,图像分割,图像增强等。本文将介绍Python彩…

chatgpt赋能python:Python绘制彩色蟒蛇

Python绘制彩色蟒蛇 如果你曾经看过蟒蛇的图片,那么你会发现这种动物的图案非常独特。如何使用Python编程语言,绘制出这种非常具有特征的蟒蛇形状呢?在这篇文章中,我们将会介绍如何使用Python绘制彩色蟒蛇的方法。 加载必要的库…

chatgpt赋能python:Python色彩空间转换-介绍

Python 色彩空间转换 - 介绍 在图像处理中,色彩空间指的是颜色表示的方式。常见的色彩空间有 RGB、HSV、YUV 等。在图像处理中,经常需要进行不同色彩空间之间的转换。Python 提供了强大的图像处理库 Pillow,可以进行色彩空间的转换。 Pytho…

Unity实战篇 | 接入 声网SDK 实现 音频通话 —— 自己动手做一个 语音聊天房

目录 🐱‍🏍前言🎂Unity 接入 声网SDK 实现 音频通话第1️⃣步,创建声网应用第2️⃣步,获取相应的SDK第3️⃣步,将SDK接入Unity中第4️⃣步:搭建一个测试场景,编写测试代码第5️⃣步:音频通话API第6️⃣步:效果测试🎨总结🐱‍🏍前言 最近正好在网上看到声网…

声网Agora Lipsync技术剖析:通过实时语音驱动人像模拟真人说话

元宇宙的火热让人们对未来虚拟世界的形态充满了幻想,此前我们为大家揭秘了声网自研的3D空间音频技术如何在虚拟世界中完美模拟现实听觉体验,增加玩家沉浸感。今天我们暂时离开元宇宙,回到现实世界,来聊聊声网自研的 Agora Lipsync…

Audio2Face-语音驱动虚拟人表情

任务: 输入自己的音频,导入maya模型,让maya模型通过音频驱动说话 教程: https://www.bilibili.com/video/BV1rZ4y1R7H4/?p2&spm_id_frompageDriver&vd_sourceef114f70c3fd4d5394f12dbd3d022bbe 一.下载和安装 1.首先…

chatgpt赋能python:Python与电影评分

Python与电影评分 近年来,越来越多的人选择通过网络来观看电影。然而,在选择一部电影时,看到的只是电影名称和海报。这时就需要借助电影评分来给自己做出更明智的选择。Python作为一门流行的编程语言,它的应用程序提供了许多有用…

让Ai来告诉你Linux应该怎么学

今天在slack上添加了Claude,他属于ChatGPT的最强竞品,支持中文,体验非常舒适,也并不像国内某些自建AI那样弱智。 至于Linux要怎么学,就让Claude来回答吧。 你能告诉我Liunx应该怎么学吗? 学习Linux,我有…

推荐四款最易上手的电脑版视频编辑软件

视频编辑软件可以剪切并保存一段视频中的精彩部分,从而制作出美丽的视频,让观众欣赏到最有价值的部分。当然,无论是为天猫店铺录制视频,还是自定制作超强特效的科幻视频,都是可以通过视频编辑软件来完成。那么&#xf…