SpringMVC:整合 SSM 中篇

文章目录

  • SpringMVC - 04
  • 整合 SSM 中篇
  • 一、优化
  • 二、总结
  • 三、说明
  • 注意:

SpringMVC - 04

整合 SSM 中篇

一、优化

  1. 在 spring-dao.xml 中配置 dao 接口扫描,可以动态地实现 dao 接口注入到 Spring 容器中。
  • 优化前手动创建 SqlSessionTemplate 对象,然后调用 getMapper 方法得到 mapper

  • 优化后自动将 dao 接口注入到 Spring 容器中,此时 Spring 容器中已经有了 mapper 对象

  1. 可以通过 spring-service.xml 配置文件将所有的业务实现类注入到 Spring 中,也可以通过注解自动装配,两者方式二选一
  • 配置文件

  • 注解


二、总结

  1. 总体过程为:controller 层调 service 层,service 层调 dao 层;
  2. 使用注解前一定要在配置文件中配置自动扫描包:<context:component-scan base-package="com.Sun3285.包名"/>
  3. 业务层相当于加了一层,除了执行 dao 层的方法,还有其他方法,例如处理业务逻辑;
  4. 最后报错,可以从以下几个方面排查错误
    • 查看 Bean 是否注入成功;
    • 用 Junit 单元测试,看代码是否可以查询到结果,如下图所示,若可以查询到数据库,说明底层没有问题;
    • 通过错误提示信息,排查错误。

  1. 自己写的时候,最后运行出现 500 错误,排查到的原因有:
    • 项目结构中,没有把所有的配置文件放到一起;
    • 实体类包名重复,把 com.Sun3285.pojo.Books 写成了 com.Sun3285.com.Sun3285.pojo.Books
    • 在配置文件中对 JSON 乱码问题进行了配置,但 JSON 的依赖没有导入;
    • c3p0 数据库连接池的依赖没有升级到最新。

  1. 整体的项目结构如图所示:


三、说明

整合 SSM 上篇:点此进入
整合 SSM 下篇:点此进入


注意:

设置在 xml 文件中写 sql 语句自动提示方法:

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

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

相关文章

2022第十二届PostgreSQL中国技术大会-核心PPT资料下载

一、峰会简介 本次大会以“突破•进化•共赢 —— 安全可靠&#xff0c;共建与机遇”为主题&#xff0c;助力中国数据库基础软件可掌控、可研究、可发展、可生产&#xff0c;并推动数据库生态的繁荣与发展。大会为数据库从业者、数据库相关企业、数据库行业及整个IT产业带来崭…

软件测试5未来大发展路线,测试工程师发展偏向

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、软件测试的五大…

springCould中的consul-从小白开始【4】

目录 1.consul介绍 ❤️❤️❤️ 2.安装 ❤️❤️❤️ 3.创建8006模块 ❤️❤️❤️ 4.创建80模块❤️❤️❤️ 1.consul介绍 ❤️❤️❤️ Consul 是一种用于服务发现、配置和分布式一致性的开源软件。它由HashiCorp开发和维护&#xff0c;可用于帮助构建和管理现代化的分布…

ARM学习(24)Can的高阶认识和错误处理

笔者来聊一下CAN协议帧的认识和错误处理。 1、CAN协议帧认识 CAN 差分信号&#xff0c;是经过CAN收发器转成差分信号的&#xff0c;CAN RX和TX是逻辑电平。CAN的基础知识&#xff0c;可参考笔者这边文章&#xff1a;ARM学习&#xff08;21&#xff09;STM32 外设Can的认识与驱…

零基础快速上手HarmonyOS ArkTS开发2---ArkTS开发实践

ArkTS开发实践&#xff1a; 接着上一次零基础快速上手HarmonyOS ArkTS开发1---运行Hello World、ArkTS开发语言介绍继续&#xff0c; 在上一次对于ArkTS的基础知识进行了学习&#xff0c;依照官方的课程计划&#xff0c;还有两个具体的小案例需要来实践实践&#xff1a; 实践出…

蓝桥杯 1223 第 2 场 小白入门赛

蓝桥小课堂-平方和 模拟 1 2 2 2 3 2 ⋯ n 2 n ⋅ ( n 1 ) ⋅ ( 2 n 1 ) 6 1^22^23^2\cdotsn^2\dfrac{n\;\cdot\;(n 1)\;\cdot\;(2n1)}{6} 122232⋯n26n⋅(n1)⋅(2n1)​。 write(n * (n 1) * (n * 2 1) / 6);房顶漏水啦 m a x ( 最大的行 − 最小的行 , 最大的列 −…

Jmeter、postman、python 三大主流技术如何操作数据库?

1、前言 只要是做测试工作的&#xff0c;必然会接触到数据库&#xff0c;数据库在工作中的主要应用场景包括但不限于以下&#xff1a; 功能测试中&#xff0c;涉及数据展示功能&#xff0c;需查库校验数据正确及完整性&#xff1b;例如商品搜索功能 自动化测试或性能测试中&a…

CentOS 7 设置网络

CentOS 7 设置网络 正常情况 ①登陆进去之后使用下面的命令修改文件 echo ONBOOTyes >> /etc/sysconfig/network-scripts/ifcfg-ens33②如果是虚拟机重启后使用如下命令进行查看IP地址 ip addr注&#xff1a;到这里如果显示有两部分&#xff0c;则代表网络设置成功&a…

在同一局域网下连接共享文件夹失败,提示:你不能访问共享文件夹,因为你组织的安全策略阻止未经身份验证的来宾访问

1.尝试打开guest访问。 &#xff08;1&#xff09;使用键盘 win R 键&#xff0c;打开运行窗口&#xff0c;并输入 gpedit.msc 打开本地组策略编辑器窗口 &#xff08;2&#xff09;选择计算机配置------->管理模板-------->网络-------->Lanman工作站。 &#…

WorkPlus超级APP助力企业节省IT人力成本,实现快速移动化

在信息化时代&#xff0c;移动应用已经成为企业发展的重要组成部分。然而&#xff0c;开发和维护原生客户端的成本却相对较高&#xff0c;需要大量的iOS、安卓和桌面端工程师。为了解决这一问题&#xff0c;WorkPlus作为一个功能完备的超级APP&#xff0c;为企业节约了大量的IT…

【算法提升—力扣每日一刷】五日总结【12/18--12/22】

文章目录 2023/12/18LeetCode每日一刷&#xff1a;[20. 有效的括号](https://leetcode.cn/problems/valid-parentheses/) 2023/12/19LeetCode每日一刷&#xff1a;[150. 逆波兰表达式求值&#xff08;后缀表达式运算&#xff09;](https://leetcode.cn/problems/evaluate-rever…

EA常见画图(类图、包图、构件图、状态图、顺序图、活动图)

EA常见活动图&#xff0c;状态图画法 类图:111&#xff08;1&#xff09;给关系添加注释&#xff08;2&#xff09;设置关系线样式 包图&#xff1a;&#xff08;1&#xff09;创建包图&#xff08;2&#xff09;在包中添加子包&#xff1a;&#xff08;3&#xff09;在包中添加…

【OAuth】快速入门

一、引言 1、什么是OAuth2.0&#xff1f; OAuth 2.0是一个关于授权的开放网络协议&#xff0c;允许用户授权第三方应用访问其在服务提供商上存储的资源&#xff08;如照片、视频、联系人列表&#xff09;&#xff0c;而无需将用户名和密码提供给第三方应用。OAuth 2.0在第三方应…

该酷的酷该飒的飒,穿出自己的潮流前线

精选匈牙利白鸭绒填充&#xff0c;柔软蓬松 舒适感很强&#xff0c;回弹性好 没有什么异味很干净安全 宝贝穿上去保暖又舒适 树脂拉链&#xff0b;金属按扣&#xff0c;松紧帽檐&#xff0b;袖口 下摆还做了可调节抽绳&#xff0c;细节满满防风保暖很nice 短款设计相较于…

分享 | 软件测试的基本流程是什么?软件测试流程详细介绍

软件测试 软件测试和软件开发一样&#xff0c;是一个比较复杂的工作过程&#xff0c;如果无章法可循&#xff0c;随意进行测试势必会造成测试工作的混乱。为了使测试工作标准化、规范化&#xff0c;并且快速、高效、高质量地完成测试工作&#xff0c;需要制订完整且具体的测试…

12.21~12.24最短路,dij,堆优化dij,spfa

有条件的最短路径一定长于无条件的最短路径 朴素dij dij的思路就是先入起点&#xff0c;然后从起点开始向四周遍历&#xff0c;每次确定一个实际最短的&#xff0c;&#xff0c;这里注意&#xff0c;正是因为没有负权&#xff0c;所以越早遇到的最短&#xff0c;就一定是最短…

智能变电站协议系列-2、SV/SMV协议示例(IEC61850)以及5G专网下的电力方案分析

文章目录 一、前言二、资料准备三、libiec61850的SV运行示例及抓包分析1、单独编译示例程序2、运行示例程序及5G专网场景下部署3、wireshark抓包分析 四、最后 一、前言 之前我们对IEC61850协议有了整体的了解&#xff0c;对一些概念有了一定的认识&#xff0c;并针对GOOSE协议…

JWT、session、token区别和实现

JWT、session、token区别和实现 这里需要用到Redis和JWT。 springboot版本是3.2.1 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency><…

【MySQL】mysql执行查询超过30秒之后报错

出现场景&#xff1a; 用workbench&#xff0c;查本地数据库&#xff0c;执行查询超过30秒之后&#xff0c;会报错断开连接&#xff0c;报错信息&#xff1a;Error Code: 2013. Lost connection to MySQL server during query 解决办法&#xff1a; 修改配置设置&#xff0c…

数据可视化分析大屏,大数据统计UI页面源文件(信息分析平台免费PS资料)

数据可视化可以帮助数据分析者更好地理解数据&#xff0c;发现数据中的规律和趋势。通过图表和图形等可视化工具&#xff0c;数据分析者可以更快速地发现数据中的关系&#xff0c;比如相关性、趋势、异常值等。对于普通用户来说&#xff0c;理解复杂的数据可能会很困难。通过数…