国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文

這篇具有很好參考價(jià)值的文章主要介紹了基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

背景

前面曾體驗(yàn)過(guò)通過(guò)零代碼、可視化、拖拉拽的方式快速完成了從 MySQLClickHouse 的數(shù)據(jù)遷移,但是在實(shí)際生產(chǎn)環(huán)境,我們?cè)谶w移到目標(biāo)庫(kù)之前還需要做一些過(guò)濾和轉(zhuǎn)換工作;比如,在詩(shī)詞數(shù)據(jù)遷移后,發(fā)現(xiàn)原來(lái) MySQL 中的詩(shī)詞數(shù)據(jù)都是繁體字,這就導(dǎo)致在直接遷移到 ClickHouse 做統(tǒng)計(jì)分析時(shí)生成的圖表展示也是繁體中文的,對(duì)于不熟悉繁體中文的用戶來(lái)說(shuō)影響體驗(yàn)。
今天就借助 ETLCloud 提供的自定義規(guī)則能力,同時(shí)調(diào)用第三方 jaropencc4j ,完成繁體中文到簡(jiǎn)體中文的轉(zhuǎn)換;具體來(lái)說(shuō),將詩(shī)詞數(shù)據(jù)庫(kù)從 MySQL 遷移到 ClickHouse ,并在入庫(kù)之前完成數(shù)據(jù)清洗轉(zhuǎn)換工作,完成數(shù)據(jù)表中標(biāo)題、作者與內(nèi)容等字段的繁體中文到簡(jiǎn)體中文的轉(zhuǎn)換。

數(shù)據(jù)集說(shuō)明

MySQL 數(shù)據(jù)庫(kù)中的庫(kù)表 poetry 結(jié)構(gòu)如下,數(shù)據(jù)量: 311828 。

CREATE TABLE `poetry` (
	`id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
	`title` VARCHAR(150) NOT NULL COLLATE 'utf8mb4_unicode_ci',
	`yunlv_rule` TEXT NOT NULL COLLATE 'utf8mb4_unicode_ci',
	`author_id` INT(10) UNSIGNED NOT NULL,
	`content` TEXT NOT NULL COLLATE 'utf8mb4_unicode_ci',
	`dynasty` VARCHAR(10) NOT NULL COMMENT '詩(shī)所屬朝代(S-宋代, T-唐代)' COLLATE 'utf8mb4_unicode_ci',
	`author` VARCHAR(150) NOT NULL COLLATE 'utf8mb4_unicode_ci',
	PRIMARY KEY (`id`) USING BTREE
)
COLLATE='utf8mb4_unicode_ci'
ENGINE=InnoDB
AUTO_INCREMENT=311829;

ClickHouse 中的建表語(yǔ)句:

CREATE TABLE poetry.poetry (`id` Int32, `title` String, `yunlv_rule` String, `author_id` Int32, `content` String, `dynasty` String, `author` String) ENGINE = MergeTree() PRIMARY KEY id ORDER BY id SETTINGS index_granularity = 8192

工具選型

  • ClickHouse數(shù)據(jù)庫(kù)
  • Docker部署ETLCloudV2.2
  • ETLCloud的庫(kù)表輸入組件、數(shù)據(jù)清洗轉(zhuǎn)換組件、釘釘消息組件

Note:這里選擇的是社區(qū)版,采用 Docker 部署的方式輕量、快速啟動(dòng): docker pull ccr.ccs.tencentyun.com/restcloud/restcloud-etl:V2.2 。

創(chuàng)建應(yīng)用與流程

先創(chuàng)建應(yīng)用(因?yàn)楹竺娴囊?guī)則是跟著應(yīng)用走的),填寫基本的應(yīng)用配置信息。
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot
接著,創(chuàng)建數(shù)據(jù)流程,填寫信息即可。
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot

自定義規(guī)則

在真正開(kāi)始數(shù)據(jù)遷移前,先準(zhǔn)備好清洗轉(zhuǎn)換規(guī)則,到遷移入庫(kù)時(shí)直接配置選擇定義好的規(guī)則即可。
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot
進(jìn)入應(yīng)用配置——>新增規(guī)則分類——>新增自定義規(guī)則
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot
編寫從繁體中文到簡(jiǎn)體中文的規(guī)則代碼,其中,類名是自動(dòng)生成的,先是引入了轉(zhuǎn)換的工具類: ZhConverterUtil ,然后調(diào)用其靜態(tài)方法即可;編寫完畢后,點(diǎn)擊“編譯并保存”,正常的話會(huì)提示編譯成功~。
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot

package cn.restcloud.etl.rule.ext;

import org.apache.commons.lang3.StringUtils;
import org.bson.Document;
import java.sql.Connection;
import cn.restcloud.framework.core.context.*;
import cn.restcloud.etl.base.IETLBaseEvent;
import cn.restcloud.etl.base.IETLBaseProcessEngine;
import cn.restcloud.framework.core.util.*;
import cn.restcloud.framework.core.util.db.rdb.*;
import cn.restcloud.etl.rule.service.ETLProcessRuleUtil;
import java.util.*;
import com.github.houbb.opencc4j.util.ZhConverterUtil;

/**
indoc是一個(gè)map的包裝對(duì)像內(nèi)部結(jié)構(gòu)為key-value
被流程的Java規(guī)則節(jié)點(diǎn)調(diào)用時(shí),返回0表示終止流程,返回1表示成功,其中indoc為流數(shù)據(jù),fieldId為空值
當(dāng)被字段綁定運(yùn)行時(shí)fieldId為綁定的字段Id,流入數(shù)據(jù)的每一行作為indoc對(duì)像傳入本方法執(zhí)行一次
params為綁定規(guī)則時(shí)填寫的傳入的參數(shù)格式為JSON字符串
繁體中文轉(zhuǎn)為簡(jiǎn)體中文
2023-07-07 10:58:21
admin
*/
public class ETL_64a77f4d955fc70345c4041a implements IETLBaseEvent {

	@Override
	public String execute(IETLBaseProcessEngine engine, Document modelNodeDoc, Document indoc,String fieldId,String params) throws Exception {
	    //List<Document> dataDocs=engine.getData(indoc); //上一節(jié)點(diǎn)傳入的數(shù)據(jù)流(僅作為Java規(guī)則節(jié)點(diǎn)運(yùn)行可用)
	    Document paramsDoc=ETLProcessRuleUtil.paramsToDocument(params);//規(guī)則參數(shù)轉(zhuǎn)為一個(gè)map包裝對(duì)像key-value
	    String paramsValue=DocumentUtil.getString(paramsDoc,"參數(shù)id"); //讀取規(guī)則選中時(shí)輸入的自定義參數(shù)值
		String fieldValue=indoc.getString(fieldId); //獲取規(guī)規(guī)綁定的字段Id獲取字段值
		PrintUtil.o(fieldId+"取到的值為=>"+fieldValue); //PrintUtil.o();可以打印變量到控制以日志中
		//TODO 對(duì)fieldValue進(jìn)行自定義處理
		String result = ZhConverterUtil.toSimple(fieldValue);
		PrintUtil.o("轉(zhuǎn)換后的值為=>"+result); 
		indoc.put(fieldId,result); //把新的值覆蓋舊字段的值
		return "1";
	}
}

Note:這里需要注意的是,我們用到了第三方的 Jaropencc4j 來(lái)完成這一工作,那么 ETLCloud 如何知道要怎樣調(diào)用自定義的工具類的方法呢?這就需要我們將第三方的 jar 放到 ETLCloud 的部署目錄下: /usr/tomcat/webapps/ROOT/WEB-INF/lib 。

[root@etl ~]# docker cp /opt/opencc4j-1.8.1.jar de63b29c71d0:/usr/tomcat/webapps/ROOT/WEB-INF/lib
                                             Successfully copied 513kB to de63b29c71d0:/usr/tomcat/webapps/ROOT/WEB-INF/lib

然后點(diǎn)擊版本更新,平臺(tái)提示以下內(nèi)容:

平臺(tái)配置(Successfully registered (0) java bean, update (2) java bean information!, API升級(jí)結(jié)果: 從Jar文件中更新或注冊(cè)(0)個(gè)服務(wù)、(0)個(gè)輸入?yún)?shù)、(0)個(gè)輸出編碼! ), ETL配置(Successfully registered (0) java bean, update (0) java bean information!, API升級(jí)結(jié)果: 從Jar文件中更新或注冊(cè)(2)個(gè)服務(wù)、(0)個(gè)輸入?yún)?shù)、(0)個(gè)輸出編碼! )

遷移實(shí)踐

接下來(lái)通過(guò)可視化的配置與操作完成從 MySQLClickHouse 的詩(shī)詞數(shù)據(jù)快速轉(zhuǎn)換與遷移操作。

數(shù)據(jù)源配置

  1. 配置Source:MySQL

選擇 MySQL ,填寫IP: 端口以及用戶密碼信息。
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot
測(cè)試連接成功~

  1. 配置Sink:ClickHouse

數(shù)據(jù)源選擇之前文章遷移的 ClickHouse 詩(shī)詞數(shù)據(jù)庫(kù)。

可視化配置流程

創(chuàng)建好流程后,可以通過(guò)點(diǎn)擊“流程設(shè)計(jì)”按鈕,進(jìn)入流程可視化的配置頁(yè)面。

  1. 庫(kù)表輸入:MySQL

在左側(cè)的輸入組件中,選擇“庫(kù)表輸入”,拖至中央的流程繪制區(qū),雙擊進(jìn)入配置階段。

第一步:選擇我們配置好的 MySQL 數(shù)據(jù)源,可以載入 MySQL 中已有的表。
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot
第二步:可以根據(jù)選擇的表,生成 SQL 語(yǔ)句。
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot
第三步:可從表中讀取到各個(gè)字段的定義,支持添加、刪除字段。
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot
第四步:根據(jù) SQL 語(yǔ)句自動(dòng)進(jìn)行了數(shù)據(jù)預(yù)覽,這樣的一個(gè)檢查操作,保證了后續(xù)操作的正常執(zhí)行。
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot

  1. 數(shù)據(jù)清洗轉(zhuǎn)換:opencc4j實(shí)現(xiàn)繁體中文轉(zhuǎn)簡(jiǎn)體中文

在對(duì)字段配置規(guī)則前,先熟悉下 opencc4j 在后端開(kāi)發(fā)中的用法。

  • 引入依賴
        <!-- Opencc4j 支持中文繁簡(jiǎn)體轉(zhuǎn)換 -->
        <dependency>
            <groupId>com.github.houbb</groupId>
            <artifactId>opencc4j</artifactId>
            <version>1.8.1</version>
        </dependency>
  • 編碼轉(zhuǎn)換
import com.github.houbb.opencc4j.util.ZhConverterUtil;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
class SpringbootOpencc4jApplicationTests {
	// 繁體中文轉(zhuǎn)簡(jiǎn)體中文
    @Test
    void toSimple(){
        String original = "李白乘舟將欲行,忽聞岸上踏歌聲。|桃花潭水深千尺,不及汪倫送我情。";
        String result = ZhConverterUtil.toSimple(original);
        System.out.println(result);
        Assertions.assertEquals("李白乘舟將欲行,忽聞岸上踏歌聲。|桃花潭水深千尺,不及汪倫送我情。", result);
    }

	// 簡(jiǎn)體中文轉(zhuǎn)繁體中文
    @Test
    void toTraditional(){
        String original = "李白乘舟將欲行,忽聞岸上踏歌聲。|桃花潭水深千尺,不及汪倫送我情。";
        String result = ZhConverterUtil.toTraditional(original);
        Assertions.assertEquals("李白乘舟將欲行,忽聞岸上踏歌聲。|桃花潭水深千尺,不及汪倫送我情。", result);
    }
}

在左側(cè)的數(shù)據(jù)轉(zhuǎn)換組件中,選擇“數(shù)據(jù)清洗轉(zhuǎn)換”,拖至中央的流程繪制區(qū),雙擊進(jìn)入配置階段。
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot
因?yàn)樵磾?shù)據(jù)表中的 title 、 content 以及 author 這三個(gè)字段值是繁體中文,所以針對(duì)這三個(gè)字段設(shè)置自定義的規(guī)則:繁體中文轉(zhuǎn)為簡(jiǎn)體中文,下一步點(diǎn)擊保存對(duì)所有數(shù)據(jù)記錄進(jìn)行轉(zhuǎn)換即可。

  1. 庫(kù)表輸出:ClickHouse

在左側(cè)的輸出組件中,選擇“庫(kù)表輸出”,拖至中央的流程繪制區(qū),雙擊進(jìn)入配置階段。

第一步:選擇我們配置好的ClickHouse數(shù)據(jù)源。
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot
第二步:可從表中讀取到各個(gè)字段的定義,支持添加、刪除字段、綁定規(guī)則。
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot
最后通過(guò) 流程線開(kāi)始、庫(kù)表輸入、數(shù)據(jù)清洗轉(zhuǎn)換、庫(kù)表輸出、結(jié)束組件分別連接起來(lái),數(shù)據(jù)通過(guò)自定義的規(guī)則轉(zhuǎn)換與遷移的可視化配置便告完成,Done~
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot

運(yùn)行流程

保存流程,運(yùn)行流程;之后可查看對(duì)應(yīng)的流程日志與轉(zhuǎn)換日志,并可視化監(jiān)控遷移進(jìn)度。
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot

問(wèn)題記錄

  • 數(shù)據(jù)轉(zhuǎn)換過(guò)程報(bào)錯(cuò)

問(wèn)題描述: 在 ETLCloud 的日志中發(fā)現(xiàn)錯(cuò)誤, Caused by: java.lang.ClassNotFoundException: com.github.houbb.heaven.support.instance.impl.Instances
問(wèn)題分析:在 SpringBoot 結(jié)合 IDEAMaven 中開(kāi)發(fā)時(shí),我們僅僅引入了一個(gè)依賴: opencc4j ,但是實(shí)際上觀察外部依賴庫(kù)時(shí)發(fā)現(xiàn)還有另外兩個(gè)依賴: heavennlp-common
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot
解決方法:將 opencc4j-1.8.1.jar 、 heaven-0.2.0.jarnlp-common-0.0.5.jar 這個(gè)三個(gè) jar 包都上傳到 ETLCloud/usr/tomcat/webapps/ROOT/WEB-INF/lib 目錄下,重新更新 ETLCloud 配置、重啟 ETLCloud 服務(wù)。
基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot

[root@etl ~]# docker cp /opt/heaven-0.2.0.jar de63b29c71d0:/usr/tomcat/webapps/ROOT/WEB-INF/lib
                                             Successfully copied 304kB to de63b29c71d0:/usr/tomcat/webapps/ROOT/WEB-INF/lib
[root@etl ~]# docker cp /opt/nlp-common-0.0.5.jar de63b29c71d0:/usr/tomcat/webapps/ROOT/WEB-INF/lib
                                             Successfully copied 1.97MB to de63b29c71d0:/usr/tomcat/webapps/ROOT/WEB-INF/lib

基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文,ETLCloud,BigData,SpringBoot,ETLCloud,MySQL,ClickHouse,opencc4j,SpringBoot
Note: Jar 包可以從阿里云鏡像倉(cāng)庫(kù)查找下載: https://developer.aliyun.com/mvn/search ,或者到本地開(kāi)發(fā)環(huán)境的的 .m2\repository\com\github\houbb 目錄下查找。

總結(jié)

以上介紹了如何通過(guò) ETLCloud 強(qiáng)大的自定義規(guī)則功能完成對(duì)數(shù)據(jù)的清洗轉(zhuǎn)換功能,實(shí)現(xiàn)了表字段值從繁體中文到簡(jiǎn)體中文的轉(zhuǎn)換,以下兩點(diǎn)要注意:

  1. 自定義規(guī)則是附屬于某個(gè)流程的;
  2. 第三方的Jar包依賴在數(shù)量上要完整。

Reference

  • ETLCloud官方文檔
  • ClickHouse官方文檔
  • opencc4j官方文檔

If you have any questions or any bugs are found, please feel free to contact me.
Your comments and suggestions are welcome!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-682268.html

到了這里,關(guān)于基于ETLCloud的自定義規(guī)則調(diào)用第三方j(luò)ar包實(shí)現(xiàn)繁體中文轉(zhuǎn)為簡(jiǎn)體中文的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Android基于JNA集成調(diào)用第三方C/C++的so庫(kù)

    Android基于JNA集成調(diào)用第三方C/C++的so庫(kù)

    Android基于JNA集成調(diào)用第三方C/C++的so庫(kù) (1)引入JNA。 基于JNA開(kāi)源項(xiàng)目,JNA對(duì)Android NDK的封裝,簡(jiǎn)化Android層JNI集成調(diào)用C/C++的so庫(kù)。 GitHub - java-native-access/jna: Java Native Access Java Native Access. Contribute to java-native-access/jna development by creating an account on GitHub. https://github.com/java-native-ac

    2024年02月02日
    瀏覽(25)
  • 基于opencv第三方視覺(jué)庫(kù),通過(guò)內(nèi)網(wǎng)IP調(diào)用手機(jī)攝像頭,實(shí)現(xiàn)人臉識(shí)別與圖形監(jiān)測(cè)

    基于opencv第三方視覺(jué)庫(kù),通過(guò)內(nèi)網(wǎng)IP調(diào)用手機(jī)攝像頭,實(shí)現(xiàn)人臉識(shí)別與圖形監(jiān)測(cè)

    OpenCV 是一個(gè)開(kāi)源的計(jì)算機(jī)視覺(jué)庫(kù),OpenCV 庫(kù)用C語(yǔ)言和 C++ 語(yǔ)言編寫,可以在 Windows、Linux、Mac OS X 等系統(tǒng)運(yùn)行。同時(shí)也在積極開(kāi)發(fā) Python、Java、Matlab 以及其他一些語(yǔ)言的接口,將庫(kù)導(dǎo)入安卓和 iOS 中為移動(dòng)設(shè)備開(kāi)發(fā)應(yīng)用。 OpenCV 庫(kù)包含從計(jì)算機(jī)視覺(jué)各個(gè)領(lǐng)域衍生出來(lái)的 500 多個(gè)函

    2024年02月09日
    瀏覽(31)
  • 【Spring Cloud】基于 Feign 實(shí)現(xiàn)遠(yuǎn)程調(diào)用,深入探索 Feign 的自定義配置、性能優(yōu)化以及最佳實(shí)踐方案

    【Spring Cloud】基于 Feign 實(shí)現(xiàn)遠(yuǎn)程調(diào)用,深入探索 Feign 的自定義配置、性能優(yōu)化以及最佳實(shí)踐方案

    在微服務(wù)架構(gòu)中,服務(wù)之間的通信是至關(guān)重要的,而遠(yuǎn)程調(diào)用則成為實(shí)現(xiàn)這種通信的一種常見(jiàn)方式。在 Java 中,使用 RestTemplate 是一種傳統(tǒng)的遠(yuǎn)程調(diào)用方式,但它存在一些問(wèn)題,如代碼可讀性差、編程體驗(yàn)不一致以及參數(shù)復(fù)雜URL難以維護(hù)等。 在本文中,我們將探討如何通過(guò)使

    2024年02月04日
    瀏覽(19)
  • AndroidStudio調(diào)用第三方so庫(kù)

    AndroidStudio調(diào)用第三方so庫(kù)

    背景 ????????最近公司設(shè)備換了新的觸摸屏(為I2C接口),該觸摸屏有個(gè)app,app中可以顯示觸摸屏固件的版本。我需要做的是在自己的app中讀取到觸摸屏固件版本。 ????????反編譯了apk,得到了源碼,發(fā)現(xiàn)對(duì)方app是通過(guò)jni調(diào)用so庫(kù)的方式獲取到的觸摸屏固件版本。所以

    2024年04月26日
    瀏覽(32)
  • SpringBoot案例 調(diào)用第三方接口傳輸數(shù)據(jù)

    SpringBoot案例 調(diào)用第三方接口傳輸數(shù)據(jù)

    最近再寫調(diào)用三方接口傳輸數(shù)據(jù)的項(xiàng)目,這篇博客記錄項(xiàng)目完成的過(guò)程,方便后續(xù)再碰到類似的項(xiàng)目可以快速上手 項(xiàng)目結(jié)構(gòu): 這里主要介紹HttpClient發(fā)送POST請(qǐng)求工具類和定時(shí)器的使用,mvc三層架構(gòu)編碼不做探究 pom.xml application-dev.yml Constast utils scheduled 該定時(shí)任務(wù)每10秒執(zhí)行一

    2024年02月12日
    瀏覽(29)
  • uniapp小程序調(diào)用第三方地圖導(dǎo)航

    uniapp小程序調(diào)用第三方地圖導(dǎo)航

    效果 ? ?

    2024年02月15日
    瀏覽(23)
  • C#--調(diào)用Python(包含第三方庫(kù))

    C#--調(diào)用Python(包含第三方庫(kù))

    參考鏈接 可以很好的支持第三方庫(kù)。 推薦這個(gè),經(jīng)本人驗(yàn)證這個(gè)很好用。 后文 2. 詳細(xì)使用。 如果使用第三方庫(kù)就放棄這個(gè)吧,真的用不了,使用時(shí)報(bào)各種錯(cuò)。 如果只是標(biāo)準(zhǔn)庫(kù),可以用這個(gè)。 只需要在 nuget 里裝上 IronPython 和 IronPython.StdLib 即可。 使用參考鏈接 1.3.1 示例演

    2024年02月07日
    瀏覽(21)
  • 僅僅是調(diào)用第三方接口那么簡(jiǎn)單嗎?

    僅僅是調(diào)用第三方接口那么簡(jiǎn)單嗎?

    最近有個(gè)項(xiàng)目需要本地處理之后,然后調(diào)用第三方接口,本來(lái)開(kāi)始覺(jué)得很簡(jiǎn)單得事情,不就是調(diào)用第三方接口嗎?但是卻一波三折。 首先有了下面的第一版的設(shè)計(jì)。 這個(gè)設(shè)計(jì)很簡(jiǎn)單,也是最容易想到的。主要有下面幾步 1、本地處理; 2、調(diào)用第三方接口; 3、本地日志打印

    2024年02月06日
    瀏覽(25)
  • 我調(diào)用第三方接口遇到的13大坑

    我調(diào)用第三方接口遇到的13大坑

    在實(shí)際工作中,我們經(jīng)常需要在項(xiàng)目中調(diào)用第三方API接口,獲取數(shù)據(jù),或者上報(bào)數(shù)據(jù),進(jìn)行數(shù)據(jù)交換和通信。 那么,調(diào)用第三方API接口會(huì)遇到哪些問(wèn)題?如何解決這些問(wèn)題呢? 這篇文章就跟大家一起聊聊第三方API接口的話題,希望對(duì)你會(huì)有所幫助。 ? 一般我們?cè)诘谝淮螌?duì)接

    2023年04月16日
    瀏覽(29)
  • UE5調(diào)用第三方DLL庫(kù)

    UE5調(diào)用第三方DLL庫(kù)

    ? 在C++中,通常我們這樣去調(diào)用,首先添加頭文件路徑和庫(kù)文件路徑并且將dll文件復(fù)制在輸出目錄下,然后在程序中添加一行代碼, #pragma comment(lib, \\\"mylib.lib\\\") ,接著就能正常調(diào)用了,但在打包之后就不行了。其實(shí)UE4有自己的一套調(diào)用Dll的方法,他通常用C#去管理上面的一堆事

    2023年04月13日
    瀏覽(78)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包