版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《整合准备工作》本节从项目需求分析、版本兼容性选择、开发环境搭建、Maven依赖配置四个维度,系统讲解Spring与MyBatis整合前的核心准备工作,为后续实战奠定基础。内容严格遵循教材《JavaEE企业级应用项目开发》项目六任务二知识体系。学习目标与思政目标知识目标掌握Spring与MyBatis版本匹配规则、开发环境搭建步骤、Maven核心依赖配置。能力目标独立完成企业级项目环境初始化,排查版本冲突与依赖矛盾。思政目标培养工程规范意识与团队协作精神,秉持'零缺陷'工匠精神。任务1——项目需求分析基于教材案例'共享单车管理系统'梳理三类需求,技术映射如下表:需求类型核心内容技术映射业务需求用户数据安全(防泄露/篡改)、系统稳定性(7×24小时运行)Spring事务管理、Druid连接池技术需求开发语言Java8+、数据库MySQL8.0+、Web容器Tomcat10.1+Maven依赖版本控制功能需求用户注册/登录、订单管理、数据统计MyBatisMapper接口、SpringService任务2——版本兼容性选择遵循'Spring主导'原则,版本搭配如下表。错误案例:Spring6.1.0搭配MyBatis3.5.6会导致NoSuchMethodError。组件版本号兼容性说明Spring6.1.0支持Java17+,需搭配MyBatis3.5.9+MyBatis3.5.11适配Spring6.0+,需mybatis-spring3.0.3+MyBatis-Spring3.0.3桥梁组件,版本需与Spring、MyBatis均兼容Druid1.2.16数据库连接池,支持MySQL8.0+驱动MySQL驱动8.0.33需添加时区参数:serverTimezone=Asia/Shanghai任务3——开发环境搭建(JDK+IDE)JDK安装下载JDK17,配置环境变量JAVA_HOME=C:\ProgramFiles\Java\jdk-17.0.10、PATH=%JAVA_HOME%\bin,验证java-version输出17.0.10。IDE配置IntelliJIDEA2023.2+,设置项目SDK为JDK17,配置Maven用户设置文件,安装Lombok插件,开启AnnotationProcessing。任务3——数据库环境准备“三清一授权”流程1清理旧服务停止并删除已有的MySQL服务,确保环境干净。netstopmysqlscdeletemysql2安装配置解压MySQL8.0.33安装包,并创建my.ini文件进行基础配置。关键配置项:basedir,datadir,port=3306,default-time-zone=+08:003初始化与授权初始化数据库并生成临时密码,启动服务后登录,创建项目数据库和开发用户并授权。mysqld--initialize--consoleGRANTALLONssm.*TO'dev'@'localhost'任务4——Maven依赖配置(核心)pom.xml核心依赖:Spring核心(spring-context:6.1.0)、SpringJDBC(spring-jdbc:6.1.0)、MyBatis核心(mybatis:3.5.11)、MyBatis-Spring(mybatis-spring:3.0.3)、Druid(1.2.16)、MySQL驱动(8.0.33)。使用mvndependency:tree排查冲突,通过<exclusions>排除低版本依赖。任务5——项目结构搭建遵循分层架构原则,目录结构如下:src/main/├──java/com/cqcvc/ssm/│├──controller/#控制层│├──service/#服务层│├──dao/#数据访问层│└──pojo/#实体类├──resources/│├──spring/#Spring配置│├──mybatis/#MyBatis配置│├──db/#数据库脚本│└──perties#数据库连接参数└──webapp/├──WEB-INF/├──static/└──...#其他Web资源关键文件:applicationContext.xml(Spring配置)、UserMapper.xml(MyBatis映射)、perties(数据库参数)。任务6——核心配置文件编写(上)Spring数据源配置:加载perties,配置Druid数据源:<beanid="dataSource"class="com.alibaba.druid.pool.DruidDataSource"><propertyname="driverClassName"value="${jdbc.driverClassName}"/><propertyname="url"value="${jdbc.url}"/><propertyname="username"value="${jdbc.username}"/><propertyname="password"value="${jdbc.password}"/><propertyname="initialSize"value="5"/><propertyname="maxActive"value="20"/><propertyname="minIdle"value="5"/></bean>任务6——核心配置文件编写(下)MyBatis配置:配置SqlSessionFactoryBean和MapperScannerConfigurer:<beanid="sqlSessionFactory"
class="org.mybatis.spring.SqlSessionFactoryBean"><propertyname="dataSource"
ref="dataSource"/><propertyname="configLocation"
value="classpath:mybatis/mybatis-config.xml"/><propertyname="mapperLocations"
value="classpath:mybatis/mapper/*.xml"/><propertyname="typeAliasesPackage"
value="com.cqcvc.ssm.pojo"/></bean><beanclass="org.mybatis.spring.mapper.MapperScannerConfigurer"><propertyname="basePackage"
value="com.cqcvc.ssm.dao"/></bean>任务7——单元测试环境搭建使用SpringTest+JUnit4:@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(locations={"classpath:spring/applicationContext.xml"})public
class
SpringMyBatisTest{
@AutowiredprivateDataSourcedataSource;
@TestpublicvoidtestDataSource()throwsSQLException{Connectionconn=dataSource.getConnection();Assert.assertNotNull(conn);//断⾔连接不为空conn.close();}}
运行结果:控制台输出数据库连接信息,测试通过。常见问题与解决方案(上)问题现象根本原因解决方案ClassNotFoundExceptionMySQL驱动类名错误确认驱动类:com.mysql.cj.jdbc.Driver(MySQL8+)连接超时(Connectiontimedout)URL参数缺失添加useSSL=false&allowPublicKeyRetrieval=trueMaven依赖冲突(NoSuchMethodError)低版本依赖干扰通过<exclusions>排除冲突依赖常见问题与解决方案(下)问题现象根本原因解决方案InvalidboundstatementMapper接口与XML文件不匹配检查namespace是否等于接口全路径Spring事务不生效未开启事务注解驱动添加<tx:annotation-driventransaction-manager="transactionManager"/>Druid连接池启动警告缺少log4j依赖添加slf4j-api和logback-classic依赖整合准备工作验收清单检查项验收标准负责人依赖完整性mvncleancompile无报错,target/classes包含所有配置文件开发工程师数据库连接单元测试testDataSource()通过,能正常获取连接开发工程师配置文件有效性Spring容器启动无警告架构师版本兼容性mvn
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 不限教学设计中职专业课-电子技术基础与技能-机电技术应用-装备制造大类
- Module 4 Unit 11 Chinese festivals Period 1(教学设计)沪教牛津版(深圳用)英语五年级下册
- 第3节 打印展示作品教学设计初中信息技术川教版2019八年级下册-川教版2019
- 2026年预防流感情境题目及答案
- Unit3 Grammar Focus教学设计人教版英语七年级下册
- 2026年西藏自治区专业技术人员职称业务考试(农学)模拟试题及答案
- 建工作保证承诺书7篇范文
- 2025版高考化学一轮总复习教案第七章化学反应速率和化学平衡第二十三讲化学反应速率及影响因素考点二影响化学反应速率的因素与解释
- 质量管理实战手册与案例研究
- 抵制网络诱惑护航健康成长小学主题班会课件
- 提高大小便标本留取率品管圈课件
- 《相见欢无言独上西楼》课件
- 浓硫酸泄漏应急预案
- 广东省普通高中学生档案
- DB13T 5714-2023 道路运输企业安全生产风险分级管控规范
- 华中科技大学研究生入学考试组织行为学
- 濮良贵机械设计课件完整版
- GB/T 4010-2015铁合金化学分析用试样的采取和制备
- GA/T 832-2014道路交通安全违法行为图像取证技术规范
- 输电线路工程组塔施工质量控制
- 公共伦理学(第三版)-课件
评论
0/150
提交评论