[發(fā)明專利]代碼生成方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)有效
| 申請(qǐng)?zhí)枺?/td> | 202010082375.2 | 申請(qǐng)日: | 2020-02-07 |
| 公開(kāi)(公告)號(hào): | CN111309303B | 公開(kāi)(公告)日: | 2023-02-24 |
| 發(fā)明(設(shè)計(jì))人: | 劉舟;楊帆 | 申請(qǐng)(專利權(quán))人: | 廣州極尚網(wǎng)絡(luò)技術(shù)有限公司 |
| 主分類號(hào): | G06F8/30 | 分類號(hào): | G06F8/30 |
| 代理公司: | 北京市萬(wàn)慧達(dá)律師事務(wù)所 11111 | 代理人: | 劉艷麗 |
| 地址: | 510335 廣東省廣州市海*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 代碼 生成 方法 裝置 計(jì)算機(jī) 設(shè)備 存儲(chǔ) 介質(zhì) | ||
1.一種代碼生成方法,其特征在于,包括:
響應(yīng)于程序啟動(dòng)指令,從所述程序啟動(dòng)指令對(duì)應(yīng)的程序代碼中確定具有預(yù)設(shè)增強(qiáng)標(biāo)識(shí)的待增強(qiáng)代碼的目標(biāo)類;
從預(yù)設(shè)配置文件中確定所述預(yù)設(shè)增強(qiáng)標(biāo)識(shí)對(duì)應(yīng)的配置信息;
根據(jù)所述配置信息生成所述目標(biāo)類對(duì)應(yīng)的增強(qiáng)代碼,所述增強(qiáng)代碼用于在所述目標(biāo)類對(duì)應(yīng)的數(shù)據(jù)集發(fā)生數(shù)據(jù)變更時(shí),自動(dòng)根據(jù)所述配置信息存儲(chǔ)所述數(shù)據(jù)集對(duì)應(yīng)的變更后數(shù)據(jù)。
2.如權(quán)利要求1所述的代碼生成方法,其特征在于,
所述響應(yīng)于程序啟動(dòng)指令,從所述程序啟動(dòng)指令對(duì)應(yīng)的程序代碼中確定具有預(yù)設(shè)增強(qiáng)標(biāo)識(shí)的待增強(qiáng)代碼的目標(biāo)類,包括:
響應(yīng)于程序啟動(dòng)指令,在類加載器加載所述程序啟動(dòng)指令對(duì)應(yīng)的程序代碼中的類代碼時(shí),從所述預(yù)設(shè)配置文件中確定預(yù)設(shè)類掃描范圍信息,所述預(yù)設(shè)類掃描范圍信息包括至少一條類路徑;
掃描所述至少一條類路徑對(duì)應(yīng)的文件;
將從所述至少一條類路徑對(duì)應(yīng)的文件中掃描到的具有預(yù)設(shè)增強(qiáng)標(biāo)識(shí)的類代碼確定為待增強(qiáng)代碼的目標(biāo)類。
3.如權(quán)利要求1所述的代碼生成方法,其特征在于,
所述從預(yù)設(shè)配置文件中確定所述預(yù)設(shè)增強(qiáng)標(biāo)識(shí)對(duì)應(yīng)的配置信息,包括:
確定所述預(yù)設(shè)配置文件包括的多項(xiàng)配置信息;
從所述多項(xiàng)配置信息中確定與所述預(yù)設(shè)增強(qiáng)標(biāo)識(shí)對(duì)應(yīng)的配置信息。
4.如權(quán)利要求1所述的代碼生成方法,其特征在于,
所述根據(jù)所述配置信息生成所述目標(biāo)類對(duì)應(yīng)的增強(qiáng)代碼,包括:
創(chuàng)建繼承所述目標(biāo)類的子類;
獲取所述目標(biāo)類的類體;
根據(jù)所述配置信息和所述目標(biāo)類的類體生成所述子類的類體;
將所述子類的類體添加到所述子類中,得到所述目標(biāo)類的增強(qiáng)子類,所述增強(qiáng)子類的類代碼為所述目標(biāo)類對(duì)應(yīng)的增強(qiáng)代碼。
5.如權(quán)利要求4所 述的代碼生成方法,其特征在于,
所述目標(biāo)類的類體包括多個(gè)方法代碼段;
所述根據(jù)所述配置信息和所述目標(biāo)類的類體生成所述子類的類體,包括:
按照預(yù)設(shè)重寫(xiě)方式對(duì)各個(gè)方法代碼段進(jìn)行重寫(xiě),生成重寫(xiě)后的方法代碼段;
確定所述多個(gè)方法代碼段中具有預(yù)設(shè)增強(qiáng)標(biāo)識(shí)的待增強(qiáng)方法代碼段;
根據(jù)所述配置信息對(duì)所述待增強(qiáng)方法代碼段進(jìn)行代碼增強(qiáng),生成增強(qiáng)后的方法代碼段。
6.如權(quán)利要求5所述的代碼生成方法,其特征在于,
所述配置信息包括數(shù)據(jù)緩存配置、持久化策略配置;
所述根據(jù)所述配置信息對(duì)所述待增強(qiáng)方法代碼段進(jìn)行代碼增強(qiáng),生成增強(qiáng)后的方法代碼段,包括:
根據(jù)所述數(shù)據(jù)緩存配置和持久化策略配置生成所述待增強(qiáng)方法代碼段對(duì)應(yīng)的數(shù)據(jù)存儲(chǔ)代碼,所述數(shù)據(jù)存儲(chǔ)代碼用于在所述待增強(qiáng)方法代碼段對(duì)應(yīng)的數(shù)據(jù)實(shí)體發(fā)生數(shù)據(jù)變更時(shí),自動(dòng)根據(jù)所述數(shù)據(jù)緩存配置在內(nèi)存中更新所述數(shù)據(jù)實(shí)體對(duì)應(yīng)的變更后數(shù)據(jù),以及根據(jù)所述持久化策略配置在內(nèi)存中更新所述數(shù)據(jù)實(shí)體對(duì)應(yīng)的變更后數(shù)據(jù)。
7.如權(quán)利要求1-6任一項(xiàng)所述的代碼生成方法,其特征在于,
所述預(yù)設(shè)增強(qiáng)標(biāo)識(shí)為預(yù)設(shè)的注解標(biāo)識(shí)。
8.一種代碼生成裝置,其特征在于,包括:
目標(biāo)類確定模塊,用于響應(yīng)于程序啟動(dòng)指令,從所述程序啟動(dòng)指令對(duì)應(yīng)的程序代碼中確定具有預(yù)設(shè)增強(qiáng)標(biāo)識(shí)的待增強(qiáng)代碼的目標(biāo)類;
配置信息確定模塊,用于從預(yù)設(shè)配置文件中確定所述預(yù)設(shè)增強(qiáng)標(biāo)識(shí)對(duì)應(yīng)的配置信息;
代碼生成模塊,用于根據(jù)所述配置信息生成所述目標(biāo)類對(duì)應(yīng)的增強(qiáng)代碼,所述增強(qiáng)代碼用于在所述目標(biāo)類對(duì)應(yīng)的數(shù)據(jù)集發(fā)生數(shù)據(jù)變更時(shí),自動(dòng)根據(jù)所述配置信息存儲(chǔ)所述數(shù)據(jù)集對(duì)應(yīng)的變更后數(shù)據(jù)。
9.一種計(jì)算機(jī)設(shè)備,包括存儲(chǔ)器、處理器及存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,其特征在于,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)權(quán)利要求1至7中任一項(xiàng)所述方法的步驟。
10.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,其特征在于,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)權(quán)利要求1至7中任一項(xiàng)所述的方法的步驟。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于廣州極尚網(wǎng)絡(luò)技術(shù)有限公司,未經(jīng)廣州極尚網(wǎng)絡(luò)技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010082375.2/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 遙控器代碼格式結(jié)構(gòu)及其收發(fā)信方法及裝置
- 在虛擬機(jī)中驗(yàn)證代碼模塊的方法及裝置
- 一種用于代碼的管理方法及裝置
- 虛擬代碼提供系統(tǒng)、生成裝置、驗(yàn)證裝置、提供方法
- 一種自動(dòng)化代碼質(zhì)量檢查方法及系統(tǒng)
- 代碼掃描方法、裝置、計(jì)算設(shè)備及計(jì)算機(jī)存儲(chǔ)介質(zhì)
- 用于更新代碼的方法和裝置
- 前端代碼打包方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 一種代碼審查服務(wù)同步方法、裝置及計(jì)算機(jī)設(shè)備
- 一種高效智能源代碼安全管理平臺(tái)
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





