当前位置: 首页 > news >正文

南通制作企业网站搜索引擎优化面对哪些困境

南通制作企业网站,搜索引擎优化面对哪些困境,网站做百度小程序改造的好处,网站功能组件MyBatis的批量插入有多种写法&#xff0c;下面我将列出一些常见的批量插入写法 方式列表 使用XML配置文件进行批量插入&#xff1a;在XML映射文件中使用<insert>标签&#xff0c;并通过foreach标签迭代批量数据&#xff0c;然后在SQL语句中使用VALUES关键字。使用Java注…

MyBatis的批量插入有多种写法,下面我将列出一些常见的批量插入写法

方式列表

  1. 使用XML配置文件进行批量插入:在XML映射文件中使用<insert>标签,并通过foreach标签迭代批量数据,然后在SQL语句中使用VALUES关键字。
  2. 使用Java注解进行批量插入:在实体类上使用@Insert注解,并通过@Param注解传入批量数据的参数。
  3. 使用Java编程语言提供的数据绑定进行批量插入:在Java代码中使用List<Entity>类型的参数,通过SqlSession.insert()方法进行批量插入。
  4. 使用MyBatis Plus的LambdaUpdate进行批量插入:在实体类上使用@LambdaUpdate注解,并通过Lambda表达式定义批量插入的SQL语句。
  5. 使用MyBatis Plus的UpdateProvider进行批量插入:在实体类上使用@UpdateProvider注解,并指定一个自定义的UpdateProvider类,该类通过反射生成批量插入的SQL语句。
  6. 使用Java编程语言提供的批处理机制进行批量插入:在Java代码中使用PreparedStatementaddBatchexecuteBatch方法,将多个插入操作添加到批处理队列中,然后一次性执行所有操作。
  7. 使用MyBatis Plus的BatchExecutor进行批量插入:在Java代码中使用BatchExecutor类,通过指定SQL语句和参数列表,执行批量插入操作。
  8. 使用MyBatis Plus的BatchInsertBuilder进行批量插入:在实体类上使用@AutoBatchInsert注解,并使用BatchInsert类提供的静态方法进行批量插入操作。
  9. 使用MyBatis的批量执行器BatchExecutor进行批量插入:在Java代码中使用ExecutorType.BATCH类型的执行器,通过SqlSessionFactory.getSqlSession()方法获取批量执行的SqlSession,然后使用SqlSession.insert()方法进行批量插入操作。
  10. 使用MyBatis Plus的Mapper批量插入:在Java代码中使用BaseMapper接口的insertList()方法,通过传入批量插入的数据列表进行操作。

主要的方式

XML方式

<insert id="insertBatch" parameterType="java.util.List">  INSERT INTO table_name (column1, column2, ...)  VALUES  <foreach collection="list" item="item" separator=",">  (#{item.column1}, #{item.column2}, ...)  </foreach>  
</insert>

注解方式

@LambdaUpdate({  @QuerySql("INSERT INTO table_name (column1, column2, ...) VALUES ",  "#{list,jdbcType=VARCHAR},#{list2,jdbcType=INTEGER}")  
})  
void insertBatch(List<Entity> list);

Plus方式

servicce.saveBatch(List<entity>,size)//size默认1000

Provider方式

@UpdateProvider(sql = "INSERT INTO table_name (column1, column2, ...) VALUES ",provider = BatchEntityProvider.class)  
void insertBatch(List<Entity> list);
public class BatchEntityProvider extends AbstractEntityProvider<Entity> {  public BatchEntityProvider() {  super(Entity.class);  }  @Override  public String createSql(Entity model, String sql, LambdaSqlContext ctx) {  StringBuilder sqlBuilder = new StringBuilder(sql);  List<Object> params = ctx.getParams();  sqlBuilder.append(" VALUES ");  for (int i = 0; i < params.size(); i++) {  sqlBuilder.append("(");  Object param = params.get(i);  if (param instanceof Map) { // 当参数是一个Map时,map的key对应属性名,value对应属性值。属性名顺序需要和Entity保持一致。  Map<String, Object> map = (Map<String, Object>) param;  for (Object key : map.keySet()) { // 遍历map的key,拼接sql。  sqlBuilder.append("#{" + key + ",jdbcType=" + JdbcType.class.getName().replace(".", ",").replace("JdbcType", "").replace("}", "").replace("}", "") + "},"); // 去掉JdbcType后的所有括号以及.号拼接到sql中。  }  } else { // 当参数不是Map时,直接拼接sql。属性顺序需要和Entity保持一致。  for (int j = 0; j < model.getColumns().size(); j++) { // 遍历Entity的所有属性,拼接sql。  sqlBuilder.append("#{" + model.getColumns().get(j) + "},"); // 拼接到sql中。  }  }  sqlBuilder.deleteCharAt(sqlBuilder.length() - 1); // 删除最后一个逗号。  if (i != params.size() - 1) { // 如果不是最后一个参数,需要添加逗号隔开每个子语句。  sqlBuilder.append(",");  } else { // 是最后一个参数,不需要添加逗号隔开每个子语句。  sqlBuilder.append(")"); // 需要添加括号结束子语句。  }  if (i != params.size() - 1) { // 如果不是最后一个参数,需要添加逗号隔开每个子语句的左括号。  sqlBuilder.append(",");  } else { // 是最后一个参数,不需要添加逗号隔开每个子语句的左括号。  sqlBuilder.append(" "); // 需要添加空格结束每个子语句的左括号。  }  }  return sqlBuilder.toString(); // 返回拼接好的SQL语句。  }  
}

本文由mdnice多平台发布

http://www.yayakq.cn/news/392791/

相关文章:

  • 谈谈对网站开发的理解官方网站建设 磐石网络知名
  • 如何更换网站后台网站后台数据库设计
  • 专业网站的建设设行吗国际新闻最新消息10条
  • 可以做幻灯片的网站科技成果转化平台
  • 怎么做私人彩票网站2345高级版
  • 网站主体变更可视化 网站开发工具
  • 物流做网站哪家好证书兼职网
  • 做宣传的网站有哪些山西公司响应式网站建设平台
  • 北京外包网站网站建设用什么技术
  • 广州做网站哪里好定远建设小学投诉网站
  • 安徽振兴集团网站开发加盟网站有哪些
  • 哪个网站做布料好wordpress font google
  • wordpress 网站名称免费建站软件哪个好
  • 网站网站营销特点网站建设实践收获
  • 百度收录率高的网站巴南区网站建设
  • 建设项目竣工验收网站软件营销网站
  • 如何免费做网站 详细点说辽宁建设工程信息网、
  • 手机主题制作网站网站建设与网络编辑综合实训课程指导手册pdf
  • 深圳网站制作哪里济南兴田德润简介定制类网站建设
  • 有哪些做网站的公司室内设计效果图 客厅
  • 网站建设与 维护实训报告范文沈阳企业制作网站
  • 建设通查询设通网站emlog怎么转换到WordPress
  • 上海网站建设设计公司哪家好做彩票网站模板
  • 网站的建设要多少钱网站后台从哪里进去
  • 做影视后期应该关注哪些网站网站托管哪家好
  • 南京市公共工程建设 中心网站创建建站
  • 网站开发包括软件吗百度网站是怎么建设的
  • 免费建站开发网站五个阶段
  • 制作网站的平台wordpress点击图片
  • 手机o2o网站建设通栏网站