@Mapper @Insert 注解式方法批量入库(ORACLE数据库)

摘要:
方法1:使用InsertAllinto实现1。创建一个实体类(DemoBean)以便于数据处理publiclassDemoBean{privateStringdemo1;privateStringdemo2;private Stringdemo 3;private-Stringdemon4;publicStringgetDemo1(){returndemo1);}publicvoidsetDemo1(Strin

方法一:使用 Insert All into 实现

1.创建实体类(DemoBean)方便处理数据

public classDemoBean {
    privateString demo1;
    privateString demo2;
    privateString demo3;
    privateString demo4;

    publicString getDemo1() {
        returndemo1;
    }

    public voidsetDemo1(String demo1) {
        this.demo1 =demo1;
    }

    publicString getDemo2() {
        returndemo2;
    }

    public voidsetDemo2(String demo2) {
        this.demo2 =demo2;
    }

    publicString getDemo3() {
        returndemo3;
    }

    public voidsetDemo3(String demo3) {
        this.demo3 =demo3;
    }

    publicString getDemo4() {
        returndemo4;
    }

    public voidsetDemo4(String demo4) {
        this.demo4 =demo4;
    }
}

2.mapper 中的批量插入接口方法

/*** 批量插入数据 入表(batch_demo)
 * @paramlist
 */@Insert({"<script>",
        "INSERT ALL ",
        "<foreach collection='list' item='element' index='index' separator=''>",
        "INTO batch_demo(demo1,demo2,demo3,demo3,demo4) ",
        "VALUES(",
        "#{element.demo1,jdbcType=VARCHAR},",
        "#{element.demo2,jdbcType=VARCHAR},",
        "#{element.demo3,jdbcType=VARCHAR},",
        "#{element.demo4,jdbcType=VARCHAR})",
        "</foreach>",
        "SELECT * FROM dual",
        "</script>"})
void batchAddDemo(@Param("list") List<DemoBean> list);

3.调用即可

方法二:使用 insert into ... select ... from dual 实现;

相较于方法一效率快点

mapper 中的批量插入接口方法

/*** 批量插入数据 入表(batch_demo)
     * @paramlist
     */@Insert({"<script>",
            "INSERT INTO batch_demo(demo1,demo2,demo3,demo3,demo4) (",
            "<foreach collection='list' item='element' index='index' separator='union all'>",
            " (select",
            "#{element.demo1,jdbcType=VARCHAR},",
            "#{element.demo2,jdbcType=VARCHAR},",
            "#{element.demo3,jdbcType=VARCHAR},",
            "#{element.demo4,jdbcType=VARCHAR}",
            "from dual)"
            "</foreach>",
            ")",
            "</script>"})
    void batchAddDemo(@Param("list") List<DemoBean> list);

免责声明:文章转载自《@Mapper @Insert 注解式方法批量入库(ORACLE数据库)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇如何快速清除ZBrush画布中多余图像python-鼠标宏下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

单节点GI(ASM)+DB 安装以及它对oracle DB自动重启的守护(11g)

此即“restart 数据库”,在单实例数据库的基础上,利用clusterware软件对其进行更高级的管理。部署过程:先装GI,再装DB,然后将DB注册到GI上,使得GI可以管理DB。注册可以在DBCA过程中自动进行,在特别情况下也可用命令手动进行。 实现管理的工具:CRSCTL管集群stand-alone server, SRVCTL 管理DB。 测试环...

使用PLSql连接Oracle时报错ORA-12541: TNS: 无监听程序

非常多时候为了优化我们的启动项把oracle的服务禁止了。但是重新启动启动之后使用PLSQL登陆oracle时会出现无监听程序,这说明我们有一些服务没有启动。我们先查看一下oracle的服务是否启动,查看方法是计算机-->>管理-->>服务和应用程序-->>服务,进行查找oracle的启动服务, 进入之后详细情况例如以...

使用orapki生成证书,配置Oracle数据使用SSL和TLS进行数据库连接的TCP/IP配置==TCPS

内容参考Oracle官方文档:   https://oracle-base.com/articles/misc/configure-tcpip-with-ssl-and-tls-for-database-connections   https://docs.oracle.com/cd/E11882_01/network.112/e40393/asoappf...

监控和管理Oracle UNDO表空间的使用

监控和管理Oracle UNDO表空间的使用                 对Oracle数据库UNDO表空间的监控和管理是我们日常最重要的工作之一,UNDO表空间通常都是Oracle自动化管理(通过undo_management初始化参数确定);UNDO表空间是用于存储DML操作的前镜像数据,它是实例恢复,数据回滚,一致性查询功能的重要组件;我...

【Oracle】给clob字段插入数据

// 插入 //OracleCommand cmd = "insertInto into GIS_PolygonPoint(PCode,PointColl) values('140134', :var)"; // 修改 //OracleCommand cmd = new OracleCommand("update yd_line set coord=:co...

oracle数据库ID自增长--序列

什么是序列?在mysql中有一个主键自动增长的id,例如:uid number primary key auto_increment;在oracle中序列就是类似于主键自动增长,两者功能是一样的,只是叫法不同而已。 在oracle中想要实现id自动增长只能用序列来实现。在oracle中,是将序列装入内存,可以提高访问效率。 1.)序列的创建 create...