SSM框架(Spring+SpringMVC+Mybatis)

整合Spring SpringMvc Mybatis,搭建SSM框架 在Eclipse下创建Java Web项目 因为把所有代码都贴出来了,所以看起来有点长 目录结构: MySQL数据库中新建一个ssm数据库,创建一张t_user表 SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- Table structure for t_user -- ----------------------... 阅读详情

接上篇文章......

目录

接上篇文章......

1.SpringMVC开发步骤

2.SpringMVC的执行流程

3.SpringMVC注解解析

4.SpringMVC的XML配置解析

4.1视图解析器

5.SpringMVC的数据响应方式


1.SpringMVC开发步骤

  • 导入SpringMVC相关坐标
  • 配置SpringMVC核心控制器DispatcherServvlet
  • 创建Controller类和视图页面
  • 使用注解配置Controller类中业务方法的映射地址
  • 配置SpringMVC核心文件spring-mvc.xml
  • 客户端发起请求测试

上述步骤完成的业务需求是:客户端发起请求,执行逻辑并进行视图跳转。

2.SpringMVC的执行流程

  • 用户发送请求至前端控制器DispatcherServlet
  • DispatcherServlet收到请求调用HandlerMapping处理器映射器
  • 处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet
  • DispatcherServlet调用HandlerAdapter处理器适配器
  • HandlerAdapter经过适配器调用具体的处理器(Controller,也叫后端控制器)
  • Controller执行完成返回ModelAndView
  • HandlerAdapter将controller执行结果ModelAndView返回给DispatcherServlet
  • DispatcherServlet将ModelAndView传给ViewReslover视图解析器
  • ViewReslover解析后返回具体view
  • DispatcherServlet根据View进行渲染视图(即将模型数据填充至视图中),DispatcherServlet响应用户

3.SpringMVC注解解析

@RequestMapping

作用:用于建立请求URL和处理请求方法之间的对应关系

位置:

  • 类上,请求URL的第一级访问目录,此处不写的话,就相当于应用的根目录
  • 方法上,请求URL的第二级访问目录,与类上的使用@RequestMapping标注的一级目录一起组成访问虚拟路径

属性:

  • value:用于指定请求的URL。它和path属性的作用是一样的
  • method:用于指定请求的方式
  • params:用于指定限制请求参数的条件。它支持简单的表达式,要求请求参数的key和value必须和配置的一模一样
  • 例如:params={"accountName"},表示请求的参数必须有accountName

4.SpringMVC的XML配置解析

4.1视图解析器

SpringMVC有默认组件配置,默认组件都是DispatcherServlet.properties配置文件中配置的,该配置文件地址org/springframework/web/servlet/DispatcherServlet.properties,该文件中配置了默认的视图解析器,如下:

org.springframework.web.servlet.ViewResolver=org.springframework.web.servlet.view.InternalResourceViewResolver

翻看该解析器源码,可以看到该解析器的默认设置,如下:

REDIRECT_URL_PREFIX="redirect:"--重定向前缀
FORWARD_URL_PREFIX="forward"--转发前缀(默认值)
prefix="";--视图名称前缀
suffix="";--视图名称后缀

5.SpringMVC的数据响应方式

1)页面跳转

  • 直接返回字符串
  • 通过ModelAndView对象返回

2)回写数据

  • 直接返回字符串
  1. 通过SpringMVC框架注入的response对象,使用response.getWriter().print("hello world")回写数据,此时不需要视图跳转,业务方法返回值为void。
@RequestMapping("/quick3")
public void save3(HttpServletResponse response) throws IOException {
     response.getWriter().print("hello world!");
}
  1. 将需要回写的字符串直接返回,但此时需要通过@ResponseBody注解告知SpringMVC框架,方法返回的字符串不是跳转是直接在http响应体中返回。
@RequestMapping("/quick4")
@ResponseBody // 告知SpringMVC框架,不进行视图跳转,直接进行数据响应
public String save4() throws IOException {
    return "Hello Quick4!";
}
  • 返回对象或集合

通过SpringMVC帮助我们对对象或集合进行json字符串的转换并回写,为处理器适配器配置消息转换参数,指定使用jackson进行对象或集合的转换,因此需要在springMVC.xml中进行配置:

<!-- 配置处理器映射器 -->
<bean class="org.springframework.web.servlet.mvc.method.annotation
.RequestMappingHandlerAdapter">
    <property name="messageConverters">
        <list>
            <bean class="org.springframework.http.converter.json
                        .MappingJackson2HttpMessageConverter">
            </bean>
        </list>
    </property>
</bean>

在方法上添加@ResponseBody就可以返回json格式的字符串,但是这样配置比较麻烦,配置的代码比较多,因此,我们可以使用mvc的注解驱动代替上述配置:

<beans xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd">
    <!-- mvc的注解驱动 -->
    <mvc:annotation-driven/>
</beans>

在SpringMVC的各个组件中,处理器映射器、处理器适配器、视图解析器称为SpringMVC的三大组件。使用<mvc:annotation-driven>自动加载RequestMappingHandlerMapping(处理映射器)和RequestMappingHandlerAdapter(处理适配器),可用在Spring-xml.xml配置文件中使用<mvc:annotation-driven>替代注解处理器和适配器的配置。

同时使用<mvc:annotation-driven>默认底层就会集成Jackson进行对象或集合的json格式字符串的转换。

问题:关于jsp文件无法获取${}表达式的值?解决方法如下:

<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false"%>

Spring+SpringMVC+Mybatis SSM框架详解 JDBC其实就是 Java 官方提供的一套规范(接口),用于帮助开发人员快速实现不同关系型数据库的连接。程序运行的时候,数据都是在内存中的。当程序终止的时候,通常都需要将数据保存到磁盘上,无论是保存到本地磁盘,还是通过网络保存到服务器上,最终都会将数据写入磁盘文件。而如何定义数据的存储格式就是一个大问题。 阅读详情

相关推荐

SSM框架:Spring+SpringMVC+Mybatis综合详解与实践

SSM框架是Spring、SpringMVC和Mybatis三个框架的组合简称,其结合了这三个框架各自的优势,形成了一个功能强大、结构清晰、易于维护的Java EE全栈开发框架。SSM框架适用于多种类型的web应用程序开发,能够快速有效地处理数据的持久化、业务逻辑处理以及展示层的构建。MVC(Model-View-Controller)模式是现代Web开发中常用的一种架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。

weixin_30356433的博客 543

SSM框架整合教程(Spring+SpringMVC+MyBatis)

一、安装maven 并(如果已有maven和eclipse,可忽略此步骤) 请参看博文 如何搭建maven环境  的1-5步:https://blog.youkuaiyun.com/qq_25646191/article/details/79232054 二、在eclipse中配置maven 三、Eclipse使用maven创建web项目1.创建一个maven项目2、按照上面教程,即可创建出一个Maven项...

懵懂无知的蜗牛的博客 938

【实战指南】WinPE环境下360系统急救箱的病毒查杀全流程解析

本文详细解析了在WinPE环境下使用360系统急救箱进行病毒查杀的全流程。从制作WinPE启动盘到进入PE环境,再到360急救箱的深度使用和系统修复,提供了实用技巧和常见问题解决方案,帮助用户高效清除顽固病毒。

weixin_28568819的博客 537

vscode+spring开发配置

安装插件 Spring Boot Extension Pack Spring Boot Support 安装后,需要在项目工程pom.xml中添加插件 &lt;!-- mvn dependency:build-classpath --&gt; &lt;plugin&gt; &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt...

robin912的专栏 5924

10-142 6-4 查询厂商“D“生产的PC和便携式电脑的平均价格

分数 10全屏浏览题目切换布局作者 lhm单位 河北农业大学本题目要求编写SQL语句,查询厂商D生产的PC和便携式电脑的平均价格。

dqd66的博客 2750

保姆级教程:在Ubuntu 20.04上搞定PX4飞控与T265的视觉定位(附避坑指南)

本文提供在Ubuntu 20.04上配置PX4飞控与T265视觉定位系统的详细教程,涵盖驱动安装、ROS与MAVROS桥接、PX4参数调优及故障排查。通过实测验证的步骤和避坑指南,帮助开发者实现厘米级精度的视觉定位,特别适合室内无人机应用。

weixin_29038155的博客 251

vscode创建spring项目

vscode创建spring项目有问题,来看看这篇吧!

qq_51302529的博客 3023

点云最小二乘法拟合曲线

文章目录一、引言 一、引言

dayuhaitang1的博客 2736

vscode 搭建SSM项目环境

vscode 搭建SSM项目环境简介创建Maven项目web.xml配置springmvc.xml配置applicationContext.xml配置vscode进行调试servlet匹配题外话参考资料 简介 这是一个简单的SSM(Spring+SpringMVC+Mybatis)的Demo 本项目使用的是vscode进行编写 推荐插件 Tomcat for Java (adashen.vscode-tomcat) Java Code Generators (sohibe.java-generate-s

antRain的博客 7568

用 OP-TEE 给 AI 模型“上锁”:密文存储、TEE 解密放行、推理后销毁(实战可落地)

本文提出一种基于OP-TEE的AI模型保护方案,通过两级密钥体系确保模型静态存储为密文,运行时仅在TEE内解密。方案采用KEK+DEK架构,DEK永不出TEE,支持分块解密与可验证擦除。该方案能有效防御静态分析、应用层逆向等威胁,但需承认其物理级攻击的局限性。文章详细描述了端到端架构、文件格式设计及TA实现要点,包括密钥管理、分块解密策略和销毁机制,为设备侧AI部署提供了工程可行的安全解决方案。

Interview_TC的博客 291

这款值68亿的游戏,你不实战一下吗?安排!

本文介绍了如何使用Cocos开发传送带像素消除类游戏。游戏包含像素画、传送带、炮台等核心元素,需要先解析图片生成像素数据,再通过关卡编辑器设计关卡机制。炮台会在传送带上环绕运动,发射子弹消除匹配颜色的像素点。文章详细讲解了游戏对象实现方法,包括像素生成、传送带运动轨迹、炮台瞄准算法等,并展示了实战效果。完整源码已集成到亿元Cocos小游戏实战合集中,适合对像素消除游戏开发感兴趣的开发者参考。

lsw_Cs的博客 438

SpringMVC:创建一个简单的SpringMVC框架

web.xml文件是Java Web应用程序的部署描述文件,用于配置Web应用程序的部署信息和配置参数。-- springMVC的前端控制器,此处为名称显示在Web服务器管理页面的 -->-- 如果以xxx-servlet.xml命名,并且位于/WEB-INF下,则服务器会自动识别,不需要配置 init-param-->--init-param配置是告诉服务器DispatcherServlet的配置文件在哪,此处是告诉服务器文件在src/classes下去找该配置文件 -->

qq_55038440的博客 2020

RK3568平台开发系列讲解(NPU篇)什么是RKNPU

📢本篇章将介绍RKNPU。

内核笔记 4357

SSM(Spring+SpringMVC+MyBatis)框架概念及原理详细讲解

IoC(控制反转): Inverse of Control,是一种设计思想,Spring框架运用这个思想控制的理解以前:应用程序控制着所需要资源(对象,对象中的属性,配置文件,…)例如:应用程序需要某个对象,我们要创建一个类然后通过new来创建现在:Spring框架控制所有资源 例如:Spring管理项目中所需要的资源(对象,配置文件)反转的理解反转前:由应用程序来主动调用所需要资源反转后:由Spring来提供应用程序所需要的资源(应用程序需要什么资源去找Spring要)

weixin_74866702的博客 1999

RK3588开发笔记-麦克风阵列多pdm通道合并成一个声卡

在音频设备的开发中,特别是在多通道音频数据处理场景中,如何将多个PDM(Pulse Density Modulation)通道整合成一个声卡设备,是一个非常具有挑战性的问题。RK3588芯片作为一款性能强大的平台,提供了对多个音频通道的支持。本文将介绍如何在RK3588上将多个PDM通道合并成一个麦克风阵列声卡,从而在Linux系统下统一管理和使用,提高多通道音频的同步性。在本文中我们主要介绍使用2通道回采+4通道mic声音采集构成一个6通道声卡,加以回声消除实现一个多麦克风阵列。

flypig has a dream! 1927

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

SSM框架:spring+springMVC+Mybatis

1.什么是SSM框架: SSM框架是Spring MVC ,Spring和Mybatis框架的整合,是标准的MVC模式,将整个系统划分为View层,Controller层,Service层,DAO层四层,使用Spring MVC负责请求的转发和视图管理,Spring实现业务对象管理,Mybatis作为数据对象的持久化引擎。 2.SSM框架各层的关系: DAO层、Service层这两个层次都可以单独开发,互相的耦合度很低,完全可以独立进行,这样的一种模式在开发大项目的过程中尤其有优势。 Contr

m0_62145574的博客 3521

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)

使用SSM(Spring、SpringMVC和Mybatis)已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就可以实现想要的功能,当然肯定有很多可以改进的地方。之前没有记录SSM整合的过程,这次刚刚好基于自己的一个小项目重新搭建了一次,而且比项目搭建的要更好一些。以前解决问题的过程和方法并没有及时记录,以后在自己的小项目中遇到我再整理分享一下。这次,先说说三大框架整合过程。个人认

在路上 64万+

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

SSM框架笔记,MyBatis、Spring、SpringMVC+SSM整合!

本文中包含了SSM90%基础知识,其中包含Spring容器IOC、AOP、MyBatis基础、一二级缓存、事务、分页插件、Spring整合MyBatis、SpringMvc、过滤器、拦截器、监听器、异常处理器等,最终拿一个小Demo作为SSM的整合。

ljw_javaScript的博客 486

SSM框架SpringMVC+ Spring + MyBatis介绍

手把手教你整合最优雅SSM框架:SpringMVC + Spring + MyBatis

小石潭记丶 2236

idea搭建ssm框架(spring+springmvc+mybatis)

idea搭建ssm框架(spring+springmvc+mybatis): 先创建一个maven工程: next next next 到这里项目创建完成。 下面我们来创建文件夹: 在main下new 一个directory名为java和resourses 选择java点击右键 选择resourses单击右键 创建具体的包,在java下: 包建好之...

h_j_c_123的博客 3万+

主流框架:SSM(Spring、SpringMVC、Mybatis)框架整合

主流框架:SSM(Spring、SpringMVC、Mybatis)框架整合一、搭建环境二、Spring框架三、SpringMVC框架四、Spring整合SpringMVC需要配置监听器实现启动服务创建容器五、Mybatis框架六、Spring整合Mybatis 一、搭建环境 (1)创建数据库,导入数据 (2)导入依赖坐标,创建子模块 (3)编写domain实体类,service层和dao层接...

rnang0的博客 1101

SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)

SSM框架——详细整合教程基本概念SpringSpringMVCMyBatis环境搭建SSM整合项目创建引入项目依赖的jar包配置SpringMVC配置日志使用Tomcat测试Spring与MyBatis的整合建立数据库配置文件db.properties 基本概念 Spring Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。 SpringMVC Spring MVC ...

JustinNeil的博客 1383

Spring、SpringMVC和Mybatis三大框架整合(SSM)

一、整合思路 1.1 搭建环境——导入jar包 1. spring包 2. springMVC包 3. mybatis包 4. 第三方支持包:log4j,pageHelper(暂无),数据库连接,jstl log4j.properties文件 # Global logging configuration log4j.rootLogger=DEBUG, stdout # Console output... log4j.appender.stdout=org.apache.log4j.ConsoleAp

无奇不有 不置可否的博客 1313

SSM框架整合Spring+SpringMVC+MyBatis

【SSM的系统架构】 【整合概述】 第一步: MyBatis和Spring整合,通过Spring管理mapper接口。 使用mapper的扫描器自动扫描mapper接口在Spring中进行注册。 第二步: 通过Spring管理Service接口。 使用配置方式将Service接口配置在Spring配置文件中。 实现事务控制。 第三步: 由于SpringMVC是Spring的...

我的优快云博客之家 932

SSM框架——Spring+SpringMVC+Mybatis的搭建教程

SSM框架——Spring+SpringMVC+Mybatis的搭建教程 愿意了解框架技术或者源码的朋友直接求求交流分享技术:2042849237 分布式的一些解决方案,有愿意了解的朋友可以找我们团队探讨 更多详细源码参考来源:http://minglisoft.cn/technology J2ee分布式架构, restful, kafka, shiro,Spring MVC,mybatis,redis,dubbo,zookeeper

qq_40238900的博客 702
上一篇: web全栈式开发之SSM框架(Spring+Spring MVC+MyBatis)
下一篇: SpringMVC获得请求数据
Caoyy686868
博客等级 码龄8年 5742粉丝 57原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Caoyy686868

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值