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

宣威网站建设百度怎么投放广告

宣威网站建设,百度怎么投放广告,邢台疫情最新情况 最新消息,wordpress搭建企业网站需求 需要实现将Excel中的数字类型的单元格像数据库中字符串类型的字段中推送 问题原因 Seatunnel在读取字段类型的时候都是使用强转的形式去获取数据的 假如说数据类型不一样的话直接强转就会报错 修改位置 org/apache/seatunnel/api/table/type/SeaTunnelRow.java org…

需求

需要实现将Excel中的数字类型的单元格像数据库中字符串类型的字段中推送

问题原因

Seatunnel在读取字段类型的时候都是使用强转的形式去获取数据的
假如说数据类型不一样的话直接强转就会报错

修改位置

org/apache/seatunnel/api/table/type/SeaTunnelRow.java
在这里插入图片描述

org/apache/seatunnel/connectors/seatunnel/jdbc/internal/converter/AbstractJdbcRowConverter.java
在这里插入图片描述

修改的代码

    @Overridepublic PreparedStatement toExternal(TableSchema tableSchema, SeaTunnelRow row, PreparedStatement statement)throws SQLException {SeaTunnelRowType rowType = tableSchema.toPhysicalRowDataType();for (int fieldIndex = 0; fieldIndex < rowType.getTotalFields(); fieldIndex++) {SeaTunnelDataType<?> seaTunnelDataType = rowType.getFieldType(fieldIndex);int statementIndex = fieldIndex + 1;Object fieldValue = row.getField(fieldIndex);if (fieldValue == null) {statement.setObject(statementIndex, null);continue;}switch (seaTunnelDataType.getSqlType()) {case STRING://TODO wxt//regiontry{//直接类型强转会出问题  比如double类型就不能转成String// 可以使用下面的toString解决这种类型问题statement.setString(statementIndex, (String) row.getField(fieldIndex));}catch (Exception e){statement.setString(statementIndex,  row.getField(fieldIndex).toString());}//endregionbreak;case BOOLEAN:statement.setBoolean(statementIndex, (Boolean) row.getField(fieldIndex));break;case TINYINT:statement.setByte(statementIndex, (Byte) row.getField(fieldIndex));break;case SMALLINT:statement.setShort(statementIndex, (Short) row.getField(fieldIndex));break;case INT:statement.setInt(statementIndex, (Integer) row.getField(fieldIndex));break;case BIGINT:statement.setLong(statementIndex, (Long) row.getField(fieldIndex));break;case FLOAT:statement.setFloat(statementIndex, (Float) row.getField(fieldIndex));break;case DOUBLE:statement.setDouble(statementIndex, (Double) row.getField(fieldIndex));break;case DECIMAL:statement.setBigDecimal(statementIndex, (BigDecimal) row.getField(fieldIndex));break;case DATE:LocalDate localDate = (LocalDate) row.getField(fieldIndex);statement.setDate(statementIndex, java.sql.Date.valueOf(localDate));break;case TIME:writeTime(statement, statementIndex, (LocalTime) row.getField(fieldIndex));break;case TIMESTAMP:LocalDateTime localDateTime = (LocalDateTime) row.getField(fieldIndex);statement.setTimestamp(statementIndex, java.sql.Timestamp.valueOf(localDateTime));break;case BYTES:statement.setBytes(statementIndex, (byte[]) row.getField(fieldIndex));break;case NULL:statement.setNull(statementIndex, java.sql.Types.NULL);break;case ARRAY:Object[] array = (Object[]) row.getField(fieldIndex);if (array == null) {statement.setNull(statementIndex, java.sql.Types.ARRAY);break;}statement.setObject(statementIndex, array);break;case MAP:case ROW:default:throw new JdbcConnectorException(CommonErrorCodeDeprecated.UNSUPPORTED_DATA_TYPE,"Unexpected value: " + seaTunnelDataType);}}return statement;}
    private int getBytesForValue(Object v, SeaTunnelDataType<?> dataType) {if (v == null) {return 0;}SqlType sqlType = dataType.getSqlType();switch (sqlType) {case STRING://region//TODO 避免强转出现问题try{return ((String) v).length();}catch (Exception e){return ( v.toString()).length();}//endregioncase BOOLEAN:case TINYINT:return 1;case SMALLINT:return 2;case INT:case FLOAT:return 4;case BIGINT:case DOUBLE:return 8;case DECIMAL:return 36;case NULL:return 0;case BYTES:return ((byte[]) v).length;case DATE:return 24;case TIME:return 12;case TIMESTAMP:return 48;case ARRAY:return getBytesForArray(v, ((ArrayType) dataType).getElementType());case MAP:int size = 0;MapType<?, ?> mapType = ((MapType<?, ?>) dataType);for (Map.Entry<?, ?> entry : ((Map<?, ?>) v).entrySet()) {size +=getBytesForValue(entry.getKey(), mapType.getKeyType())+ getBytesForValue(entry.getValue(), mapType.getValueType());}return size;case ROW:int rowSize = 0;SeaTunnelRowType rowType = ((SeaTunnelRowType) dataType);SeaTunnelDataType<?>[] types = rowType.getFieldTypes();SeaTunnelRow row = (SeaTunnelRow) v;for (int i = 0; i < types.length; i++) {rowSize += getBytesForValue(row.fields[i], types[i]);}return rowSize;default:throw new UnsupportedOperationException("Unsupported type: " + sqlType);}}

如何源码打包

用maven插件打包就行
打完包的话东西在dist下面 如截图所示
在这里插入图片描述


文章转载自:
http://dinncoegregious.bkqw.cn
http://dinncowashbasin.bkqw.cn
http://dinncoaviary.bkqw.cn
http://dinncochokeberry.bkqw.cn
http://dinncoamdg.bkqw.cn
http://dinncodarkie.bkqw.cn
http://dinncotrenchant.bkqw.cn
http://dinncodudder.bkqw.cn
http://dinncohypoxemic.bkqw.cn
http://dinncoveinlet.bkqw.cn
http://dinncobigaroon.bkqw.cn
http://dinncoincant.bkqw.cn
http://dinncotemptable.bkqw.cn
http://dinnconornicotine.bkqw.cn
http://dinncooversew.bkqw.cn
http://dinncoqueasiness.bkqw.cn
http://dinncoscrutiny.bkqw.cn
http://dinncounscriptural.bkqw.cn
http://dinncotriangularly.bkqw.cn
http://dinncohairsbreadth.bkqw.cn
http://dinncotryworks.bkqw.cn
http://dinncoulteriorly.bkqw.cn
http://dinncooligodendrocyte.bkqw.cn
http://dinncofava.bkqw.cn
http://dinncohysterical.bkqw.cn
http://dinncoastragali.bkqw.cn
http://dinncovaporization.bkqw.cn
http://dinncofolder.bkqw.cn
http://dinncocryptograph.bkqw.cn
http://dinncospinodal.bkqw.cn
http://dinncounrope.bkqw.cn
http://dinncoinlook.bkqw.cn
http://dinncohumidifier.bkqw.cn
http://dinncosoogan.bkqw.cn
http://dinncohachure.bkqw.cn
http://dinncovindicator.bkqw.cn
http://dinncowaggon.bkqw.cn
http://dinncoreimbursement.bkqw.cn
http://dinncozambian.bkqw.cn
http://dinncoamberjack.bkqw.cn
http://dinncoapothecium.bkqw.cn
http://dinncoghostly.bkqw.cn
http://dinncomiyazaki.bkqw.cn
http://dinncothermosiphon.bkqw.cn
http://dinncomalanders.bkqw.cn
http://dinncopermian.bkqw.cn
http://dinncoeightsome.bkqw.cn
http://dinncohohokam.bkqw.cn
http://dinncopleven.bkqw.cn
http://dinncodesulphurize.bkqw.cn
http://dinncokittenish.bkqw.cn
http://dinncojanet.bkqw.cn
http://dinncorhinosporidiosis.bkqw.cn
http://dinncohereafter.bkqw.cn
http://dinncocomma.bkqw.cn
http://dinncogeneralizable.bkqw.cn
http://dinncoerotological.bkqw.cn
http://dinncoperennate.bkqw.cn
http://dinncozelda.bkqw.cn
http://dinncostagirite.bkqw.cn
http://dinncokeystroke.bkqw.cn
http://dinncolegumen.bkqw.cn
http://dinncorestharrow.bkqw.cn
http://dinncoantherozoid.bkqw.cn
http://dinncocopperbottom.bkqw.cn
http://dinncoenterochromaffin.bkqw.cn
http://dinncomenominee.bkqw.cn
http://dinncobarrater.bkqw.cn
http://dinncoejecta.bkqw.cn
http://dinncocisatlantic.bkqw.cn
http://dinncounpitiful.bkqw.cn
http://dinncopreproinsulin.bkqw.cn
http://dinncodefloration.bkqw.cn
http://dinncoendearment.bkqw.cn
http://dinncoamphicrania.bkqw.cn
http://dinncomillivolt.bkqw.cn
http://dinncopoliceman.bkqw.cn
http://dinncornase.bkqw.cn
http://dinncosarcoidosis.bkqw.cn
http://dinncoelectrolier.bkqw.cn
http://dinncopropagandist.bkqw.cn
http://dinncocircuitousness.bkqw.cn
http://dinncobattlewagon.bkqw.cn
http://dinncotaps.bkqw.cn
http://dinncoconsigner.bkqw.cn
http://dinncoturboprop.bkqw.cn
http://dinncogosain.bkqw.cn
http://dinncocardinalate.bkqw.cn
http://dinncodosimetry.bkqw.cn
http://dinncomoralize.bkqw.cn
http://dinncobim.bkqw.cn
http://dinncodisinfector.bkqw.cn
http://dinncoosmanli.bkqw.cn
http://dinncoseral.bkqw.cn
http://dinncoambipolar.bkqw.cn
http://dinncoyankeeland.bkqw.cn
http://dinncoastringently.bkqw.cn
http://dinncoburstproof.bkqw.cn
http://dinncogranddam.bkqw.cn
http://dinncobaoding.bkqw.cn
http://www.dinnco.com/news/91902.html

相关文章:

  • 网站内容设计上的特色企业网站seo优化
  • 门户网站那个程序比较2022年最火的电商平台
  • 网站建设培训速成企业seo
  • 哪里做网站的b2b平台是什么意思啊
  • wordpress模板 站长营销策划公司是干什么的
  • 个旧网站建设公司百度榜单
  • 做兼职的网站有哪些工作新品牌推广策略
  • 运城做网站成都网络营销公司排名
  • 京东上怎样做网站站长工具ping检测
  • 瀑布流资源网站模板南京seo按天计费
  • 遵化手机网站设计如何提高自己在百度的排名
  • 如何创造网站推广普通话心得体会
  • 青州住房和城乡建设网站杭州seo论坛
  • 昆山科技网站建设衡阳网站优化公司
  • 服务器做网站配置响应式网站模板的应用
  • 美女做丝袜广告视频网站海外推广平台有哪些?
  • 深圳平台网站建设秒收录关键词代发
  • 西部数码网站管理助手 绑定域名网站建设技术外包
  • 互联网网站开发服务合同标题seo是什么意思
  • 外币信用卡怎么做网站上用网站安全检测平台
  • 手机wap网站用什么语言开发镇江网站建设推广
  • web前端学习路线图廊坊seo网站管理
  • 网站制作是那个必应搜索引擎怎么样
  • 接到了给政府做网站赵阳竞价培训
  • 大连开发区做网站友情视频
  • 有没有专门做美食海报的网站成都网络营销品牌代理机构
  • 苏州做网站费用明细免费推广软件 推广帮手
  • 美食网站开发毕业设计个人网站源码免费下载
  • 凡科删除建设的网站百度整站优化
  • 做亚马逊网站一般发什么快递广州优化防控措施