Java 中级实践:MyBatis 批量删除与 SSM 数据库配置
需积分: 9 28 浏览量
更新于2024-07-03
收藏 1.36MB DOCX 举报
"Java 中级实操文档,包含 MyBatis 批量删除与 SSM 框架数据库配置"
在 Java 开发中,MyBatis 是一个流行的持久层框架,它允许开发者将 SQL 查询与 Java 代码直接绑定。在这个问题中,我们需要使用 MyBatis 的注解方式来实现根据 `companyID` 进行批量删除的功能。
在给定的代码片段中,我们看到了一个 `@Delete` 注解,这是 MyBatis 用于定义 SQL 删除操作的注解。我们需要填充缺失的部分来完成批量删除的方法。
1. 第一个空格【1】应该填写的是 SQL 中的条件,这里是要表示 `companyID` 在给定列表中。在 SQL 的 `IN` 条件语句中,这通常表示为 `IN (value1, value2, ...)`,所以这里应填写 `IN`。
2. 第二个空格【2】代表集合的名称,这个集合包含了待删除的 `companyID`。在方法签名中,我们看到参数是 `@Param("idList") List<String> idList`,这意味着列表的参数名是 `idList`,因此这里填写 `idList`。
3. 第三个空格【3】需要填写的是 SQL 语句中的占位符,代表 `companyID` 字段,由于我们在 `<foreach>` 循环中引用了它,所以这里填写 `companyID`。
完整的代码应该如下所示:
```java
@Delete("<script>"
+ "DELETE FROM cfa_company WHERE companyID IN "
+ "<foreach item='companyID' index='index' collection='idList' open='(' separator=',' close=')'>"
+ "#{companyID}"
+ "</foreach>"
+ "</script>")
void deleteByCompanyID(@Param("idList") List<String> idList);
```
接下来,我们来看 SSM 框架(Spring、SpringMVC、MyBatis)的配置部分。这部分涉及 Spring 配置数据库连接、MyBatis 整合 Spring 以及事务管理。
1. 第一个空格【1】通常用于加载配置文件,如数据库连接信息,此处填写 `property`,因为我们需要加载 `db.properties` 文件,所以这里是 `<context:property-placeholder location="classpath:db.properties"/>`。
2. 第二个空格【2】是 MyBatis 的 `SqlSessionFactory`,表示 MyBatis 与 Spring 的集成,这里填写 `SqlSessionFactoryBean`。
3. 第三个空格【3】是传递数据源给 `SqlSessionFactory` 的属性,所以填写 `dataSource`。
4. 第四个空格【4】是 JDBC 事务管理器的配置,这里填写 `DataSourceTransactionManager`,并使用 `dataSource-ref` 属性引用数据源。
5. 第五个空格【5】应与上一个空格的 `dataSource` 相匹配,继续填写 `dataSource`。
6. 第六个空格【6】是启用基于注解的事务管理配置,这里填写 `annotation-driven`。
完整的配置段可能如下:
```xml
<!-- 加载数据源数据 -->
<context:property-placeholder location="classpath:db.properties"/>
<!-- 配置c3p0数据源 -->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"/>
<!-- 配置mybatis整合Spring的bean -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean" p:dataSource-ref="dataSource"/>
<!-- jdbc事物管理器配置 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager" p:dataSource-ref="dataSource"/>
<!-- 启用支持annotation注解方式事物管理 -->
<tx:annotation-driven/>
```
这段配置将确保 Spring 可以管理 MyBatis 的事务,并且能够正确地处理数据库连接。通过这种方式,我们可以方便地在 Java 代码中使用注解来控制事务边界。
2020-02-12 上传
2022-06-22 上传
175 浏览量
m0_65944781
- 粉丝: 0
- 资源: 2
最新资源
- lex and yacc
- 某公司考试题 doc 文件
- struts架构指导
- 基于Linux的信用卡授权程序的设计与实现
- javascript高级教程.pdf
- 高质量cc++编程.pdf
- ajax “煤炭子鬼”版主帮助处理后的文档
- 银行帐户管理系统需求分析
- 利用OpenSSL生成证书详解
- oracledi_getting_started入门指南
- Shell脚本调试技术
- java编程实例100
- 操作系统 考研 汤子赢
- HP-UX环境下Shell程序调试
- 单 片 机的40个实验
- 编写一个用户注册信息填写验证程序,注册信息包括用户名、密码、EMAIL地址、联系电话。要求验证联系电话中只能输入数字,EMAIL地址中需要包括“@”符号,密码域不少于6位。要求联系电话在输入过程中保证不能有非数字,而其他两个域在点击注册按钮时再进行数据检查。