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

长春网站设计价格seo优化的作用

长春网站设计价格,seo优化的作用,网站建站报告2000字,b2b网站推广的效果背景 因为Mybatis-Plus的saveBatch()方法的批量插入其实也是循环插入,而不是真正的一个SqlSession完成的批插,效率很低。所以我们在写批量插入的时候是自己实现了一个工具类去生成批量插入的sql再去执行,但是会遇到有些文本里有单引号导致插…

背景

因为Mybatis-Plus的saveBatch()方法的批量插入其实也是循环插入,而不是真正的一个SqlSession完成的批插,效率很低。所以我们在写批量插入的时候是自己实现了一个工具类去生成批量插入的sql再去执行,但是会遇到有些文本里有单引号导致插入失败的情况,因此需要优化这个工具类

优化工具类

先贴一下优化后的工具类的代码

/*** 构建批量插入语句 insert 语句** @param clazz        实体类class* @param beanList     要插入的带值的对象集合* @param ignoreFields 需要忽略的属性名集合*/public static <T> String getInsertString(Class<T> clazz, Collection<T> beanList, String... ignoreFields) {StringBuilder insertSql = new StringBuilder();String className = clazz.getSimpleName();insertSql.append("insert into ").append(StrUtil.toUnderlineCase(className)).append("(");Field[] allFields = FieldUtils.getAllFields(clazz);// 构建字段StringBuilder columnSql = new StringBuilder();for (Field field : allFields) {// 构建非static的属性String name = field.getName();if (!isIgnore(ignoreFields, name)) {if (!Modifier.isStatic(field.getModifiers())) {columnSql.append(StrUtil.toUnderlineCase(name)).append(",");}}}insertSql.append(StrUtil.removeSuffix(columnSql.toString(), ",")).append(")").append(" values ");// 循环构建参数for (T t : beanList) {StringBuilder paramsSql = new StringBuilder();paramsSql.append("(");// 根据字段构建参数for (Field field : allFields) {// 构建非static的属性String name = field.getName();if (!isIgnore(ignoreFields, name)) {if (!Modifier.isStatic(field.getModifiers())) {Object fieldValue = ReflectUtil.getFieldValue(t, field.getName());/* 根据格式转换数据 */if (fieldValue instanceof String) {String fieldValueStr = (String) ReflectUtil.getFieldValue(t, name);//防止值里面有'导致插入数据失败if (StringUtils.isNotBlank(fieldValueStr)) {fieldValueStr = fieldValueStr.replaceAll("'", "''");paramsSql.append("'").append(fieldValueStr).append("',");} else {paramsSql.append("null,");}} else if (fieldValue instanceof Enum) {paramsSql.append("'").append(ReflectUtil.getFieldValue(t, name)).append("',");} else if (fieldValue instanceof Date) {Date dateValue = (Date) ReflectUtil.getFieldValue(t, name);paramsSql.append("'").append(DateUtil.format(dateValue, DatePattern.NORM_DATETIME_PATTERN)).append("',");} else if (fieldValue instanceof LocalDateTime) {LocalDateTime dateValue = (LocalDateTime) ReflectUtil.getFieldValue(t, name);paramsSql.append("'").append(DateUtil.format(dateValue, DatePattern.NORM_DATETIME_PATTERN)).append("',");} else {paramsSql.append(ReflectUtil.getFieldValue(t, name)).append(",");}}}}insertSql.append(StrUtil.removeSuffix(paramsSql.toString(), ",")).append(")").append(",");}return StrUtil.removeSuffix(insertSql.toString(), ",");}

处理方案

对于’这种特殊符号,可以直接将一个单引号修改为两个单引号,在执行sql语句的时候,两个单引号会被像转移字符一样处理成一个单引号入库,这样即不会报错,也可以保留文本的原始内容

http://www.15wanjia.com/news/29394.html

相关文章:

  • 石家庄做标书的网站综合性b2b电子商务平台网站
  • 网站打开很慢怎么回事啊做网站
  • 网站制作找私人多少钱优化营商环境建议
  • 高性能网站建设指南 百度云抖音搜索排名
  • 企业网站程序制作一个网站的流程有哪些
  • 旅游门票做的最好的是哪个网站一个网站可以优化多少关键词
  • 合肥网站建设晨飞怎么去推广自己的网站
  • 做网站cpa宁波正规seo快速排名公司
  • 做一个网站成本大概多少钱图片扫一扫在线识别照片
  • 养殖场在哪个网站做环评备案专业网站seo推广
  • 湛江本地做网站成都网络推广运营公司
  • wordpress 付费剧集网站怎么做ppt
  • 网站备案 域名证书常用网站推广方法及资源
  • 网站联系客服是怎么做的seo技术推广
  • 品牌网站什么意思河南今日头条新闻
  • cp网站开发搭建2023年9月疫情又开始了吗
  • 网站开发开发需求今日最新国内新闻重大事件
  • 8上的信息课做网站作业浙江网站建设推广
  • app软件下载网站源码临沂seo优化
  • 创同盟做网站百度免费打开
  • 怎样加入好大夫网站做医生手机网站怎么优化关键词
  • 免费发布信息网站搭建网站要多少钱
  • 张店网站建设定制太原关键词优化软件
  • 一分钟用自己的电脑做网站网站制作的步骤
  • 江西省工程建设信息官方网站新闻今日头条最新消息
  • 网络规划设计师属于高级职称吗seo网站关键词优化
  • 筑站网络推广天津网站优化公司
  • 企业网站需要多少费用软文发稿
  • 淄博网站制作公司托管广告联盟接单赚钱平台
  • 网站推广与宣传怎么做mac日本官网入口