`
流浪鱼
  • 浏览: 1683070 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

支持批量的操作

 
阅读更多

批量的添加、修改、删除

import java.sql.SQLException;
import java.util.List;

import org.springframework.orm.ibatis.SqlMapClientCallback;
import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;

import com.ibatis.sqlmap.client.SqlMapExecutor;

/**
 * <p>批量支持</p>
 */
public class BatchSqlMapClientDaoSupport extends SqlMapClientDaoSupport {
    /**
     * 批量更新
     * @param statementName
     * @param list
     */
    protected void batchUpdate(final String statementName, final List<?> list) {
        if (list != null) {
            this.getSqlMapClientTemplate().execute(new SqlMapClientCallback() {
                @Override
                public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
                    executor.startBatch();
                    for (int i = 0, n = list.size(); i < n; i++) {
                        executor.update(statementName, list.get(i));
                    }
                    executor.executeBatch();
                    return null;
                }
            });
        }

    }

    /**
     * 批量新增
     * @param statementName
     * @param list
     */
    protected void batchInsert(final String statementName, final List<?> list) {
        if (list != null) {
            this.getSqlMapClientTemplate().execute(new SqlMapClientCallback() {
                @Override
                public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
                    executor.startBatch();
                    for (int i = 0, n = list.size(); i < n; i++) {
                        executor.insert(statementName, list.get(i));
                    }
                    executor.executeBatch();
                    return null;
                }
            });
        }

    }

    /**
     * 批量删除
     * @param statementName
     * @param list
     */
    protected void batchDelete(final String statementName, final List<?> list) {
        if (list != null) {
            this.getSqlMapClientTemplate().execute(new SqlMapClientCallback() {
                @Override
                public Object doInSqlMapClient(SqlMapExecutor executor) throws SQLException {
                    executor.startBatch();
                    for (int i = 0, n = list.size(); i < n; i++) {
                        executor.delete(statementName, list.get(i));
                    }
                    executor.executeBatch();
                    return null;
                }
            });
        }
    }
}

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    一款支持批量操作的 JPEG 图片无损优化压缩神器for Android.rar

    标题中的“一款支持批量操作的 JPEG 图片无损优化压缩神器for Android.rar”指的是一个专为Android设备设计的软件,其主要功能是针对JPEG图片进行批量处理,实现无损优化和压缩。这种工具对于需要管理和减小大量JPEG...

    无限撸游戏红包项目玩法教程,低保项目支持批量操作.zip

    本教程主要关注的是一款名为“无限撸游戏红包”的项目,它允许用户在游戏中获得红包奖励,且支持批量操作,这对于想要通过自动化手段提高效率的用户来说具有较高的吸引力。下面将详细解析该项目的玩法和批量操作技巧...

    Android代码-safe adb:在多设备时更方便地操作 adb,支持批量操作。

    (safe adb)在多设备时更方便地操作adb,支持批量操作。 如果你的电脑连了多台设备,又需要直接使用adb命令时,会非常痛苦(特别是输完长长的命令后,还得回头 adb devices 后编辑命令重新执行)。 sadb 很好地解决...

    spring-data-redis支持批量操作

    1、基于1.8.0的基础上提供批量的数据操作包括get set del hmget hmset方法 2、使用方法如下: public List&lt;V&gt; pipelineGet(Set&lt;K&gt; keys){ return rt.opsForPipeline().get(keys); } public void pipelineSet...

    mybatis数据操作(增删改查+批量操作)

    5. **批量操作**:MyBatis不仅支持单条记录的操作,还支持批量操作。例如,你可以一次性插入多个对象,通过使用`&lt;insert&gt;`标签的`useGeneratedKeys`和`keyProperty`属性,配合`&lt;foreach&gt;`标签,可以方便地进行批量...

    php增删改查、支持批量操作、是我刚接触时花一天时间写的、很有成就感

    这是我在学校老师花了十分钟给我讲解php运行环境后,回来就写出来的一个练习,包括数据库连接、批量操作数据、前台后台一并、清楚,适合初学者,我花了一天,你看到了我写的源码可能会理解的更快,有些函数不明白的...

    SNMP测试工具 支持批量操作以及配置文件读取操作

    SNMP消息测试的工具市面上有很多,列如 MibBrower、FreeSNMP等,这边因为工作需要做了一个简单的测试工具,比较随意,也可以使用,内部实现才使用的是SNMPV1版本。 为了方便使用做成了可执行的jar文件,采用的也是...

    随心图片批量处理 v2.1.zip

    随心图片批量处理的主要功能是在电商、数字化图书、文字识别等行业中,对大量图片...支持批量操作时人工确认; 自动保存最近一次的操作参数; 支持多种语言; 绿色软件,拷贝即可使用; 随心图片批量处理截图:

    支持批量替换、修改、插入、删除文件名中的字符批量改名工具

    这时,一款支持批量操作的文件名修改工具就显得尤为必要。标题提到的“支持批量替换、修改、插入、删除文件名中的字符批量改名工具”正是为了满足这种需求而设计的。 批量替换功能允许用户快速替换文件名中的特定...

    java操作Oracle批量入库

    对于复杂的业务逻辑,可以考虑使用ORM框架,如Hibernate或MyBatis,它们提供了更高级别的抽象,简化了数据库操作,同时也支持批量操作。 以上就是Java操作Oracle批量入库的基本步骤和注意事项。在实践中,还需要...

    merge_批量导入MAX.zip,3dmax批量导入obj插件

    然而,3ds Max原生的导入功能并不支持批量操作,这就催生了这个插件的出现。 描述中提到的"3dmax批量导入obj插件"正是这个插件的核心功能。通过安装并启用该插件,用户可以一次性导入多个OBJ文件,大大节省了逐个...

    secret_hub:通过支持批量操作和组织机密管理GitHub机密

    SecretHub使您可以从命令行轻松管理GitHub机密,并支持批量操作和组织机密。 安装 使用Ruby: $ gem install secret_hub 或使用Docker: $ alias secrethub= ' docker run --rm -it -e GITHUB_ACCESS_TOKEN -v ...

    光速文件批量搜索器V4.2

    3. **批量操作**:找到所需文件后,软件支持批量操作,如复制、移动、删除或重命名,这对于需要处理多个相似文件的情况非常方便。 4. **用户友好的界面**:简洁明了的操作界面使得新手也能快速上手,减少学习成本。...

    批量插入数据库方法

    如果你使用的是Entity Framework,虽然其默认不支持批量操作,但可以通过第三方库如`EntityFramework.BulkInsert`扩展此功能。首先,安装相应的NuGet包,然后在DbContext的SaveChanges方法中调用扩展方法`Bulk...

    批量图片添加水印工具

    3.支持批量操作,专门为淘宝的商品图片作优化! 单文件操作: 点击“打开”选择图片(或者从剪切版粘贴) 点击“加阴影”或者将右手边的“水印图片”拖放到图片,或者将“水印文字”拖放到图片 点击“另存为”即完成...

    ASPNET批量更新

    使用Entity Framework时,虽然默认不支持批量操作,但可以通过第三方库如`EntityFramework.BulkInsert`扩展其功能。这个库提供了`DbContext.BulkInsert()`方法,允许一次插入或更新大量实体。 4. Dapper批量更新:...

    IC卡批量写卡.rar

    1. **准备阶段**:首先,你需要拥有一个支持批量操作的读卡器(如Acr122),并安装相应的驱动程序和管理软件。确保软件兼容你的操作系统,并具备批量处理IC卡的功能。 2. **数据准备**:根据需求,你需要生成或导入...

    Android RecyclerView批量操作

    为了实现批量操作,我们需要在Adapter中添加对这些操作的支持。这通常涉及到维护一个状态数组或集合,记录每个Item的选中状态。当用户触发全选或批量删除时,我们遍历这个状态数组,根据状态执行相应的操作。 1. **...

    odbc 数据库批量插入操作

    这是因为批量操作减少了网络通信的开销,提高了数据库引擎内部的处理效率,尤其是在处理大量数据时。单条更新需要多次交互,而批量操作只需一次,这大大降低了系统的I/O负载。 在实际应用中,我们还需要考虑一些...

Global site tag (gtag.js) - Google Analytics