最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java程序員必會的遠(yuǎn)程debug教程

 更新時間:2022年08月05日 14:27:15   作者:奔跑的毛球  
這篇文章主要為大家介紹了java程序員必會的遠(yuǎn)程debug教程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

正文

現(xiàn)在都是拆分的比較細(xì)的微服務(wù)了,當(dāng)系統(tǒng)運行在測試環(huán)境出現(xiàn)問題的時候,就需要按照日志來分析出什么問題了。有的能看出來,要是年久失修的老項目,那么說不定連log都沒有。純純的看源碼找問題,效率就很低了。

其實這個時候還可以遠(yuǎn)程debug,來更精確的定位問題。效率也是高高滴。

這個之前在工作中其實一直在使用,但是不知道咋配置的,今天就找了一些資料,自己實際配置了一下。

下邊我們介紹下如何操作:

啟動添加參數(shù)

啟動的時候添加如下參數(shù):

java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=192.168.1.101:7891 -jar demo-0.0.1-SNAPSHOT.jar

參數(shù)大概講一下:

transport 指定了調(diào)試數(shù)據(jù)的傳送方式,dt_socket是指用SOCKET模式,另有dt_shmem指用共享內(nèi)存方式,其中,dt_shmem只適用于Windows平臺;

address 調(diào)試服務(wù)器的端口號,客戶端用來連接服務(wù)器的端口號;

server=y/n VM 是否需要作為調(diào)試服務(wù)器執(zhí)行;

suspend=y/n 是否在調(diào)試客戶端建立連接之后啟動 VM;

啟動成功后顯示如下:

配置idea

我我們可以去idea配置了。

點擊 editConfigurations...

點擊左上角的+號,選擇Remote Jvm Debug

填寫地址和端口號

點擊apply,點擊OK

啟動debug模式

這時就可以點擊debug按鈕啟動了

成功會有如下提示:

測試

編寫測試代碼如下:

@Slf4j
@RestController
@RequestMapping("test")
public class TestDebug {
    @GetMapping(value = "debug/{num}")
    public String verifyNum(@PathVariable Integer num) {
        int a = num;
        log.info("接收到參數(shù){}",a);
        return "ok";
    }
}

當(dāng)使用瀏覽器訪問這個接口,并在log位置添加斷點的時候

http://192.168.1.101:8080/test/debug/1

就會走進斷點,并顯示我們傳入的值。

這個時候就可以愉快的debug啦。

以上就是java程序員必會的遠(yuǎn)程debug教程的詳細(xì)內(nèi)容,更多關(guān)于java遠(yuǎn)程debug的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Spring Boot 3 集成 RabbitMQ 實踐指南(原理解析)

    Spring Boot 3 集成 RabbitMQ 實踐指南(原理解析

    本文介紹了SpringBoot 3集成RabbitMQ的實踐指南,涵蓋了RabbitMQ的核心原理、核心概念、高級特性、應(yīng)用場景、環(huán)境搭建、核心配置類、消息生產(chǎn)者、消息消費者、接口控制器、監(jiān)控與運維、最佳實踐以及常見問題與解決方案等內(nèi)容,感興趣的朋友一起看看吧
    2025-02-02
  • Java中HashSet、LinkedHashSet和TreeSet區(qū)別詳解

    Java中HashSet、LinkedHashSet和TreeSet區(qū)別詳解

    這篇文章主要介紹了Java中HashSet、LinkedHashSet和TreeSet區(qū)別詳解,如果你需要一個訪問快速的Set,你應(yīng)該使用HashSet,當(dāng)你需要一個排序的Set,你應(yīng)該使用TreeSet,當(dāng)你需要記錄下插入時的順序時,你應(yīng)該使用LinedHashSet,需要的朋友可以參考下
    2023-09-09
  • java返回前端實體類json數(shù)據(jù)時忽略某個屬性方法

    java返回前端實體類json數(shù)據(jù)時忽略某個屬性方法

    這篇文章主要給大家介紹了關(guān)于java返回前端實體類json數(shù)據(jù)時忽略某個屬性的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-08-08
  • Spring?MVC異步上傳、跨服務(wù)器上傳和文件下載功能實現(xiàn)

    Spring?MVC異步上傳、跨服務(wù)器上傳和文件下載功能實現(xiàn)

    這篇文章主要介紹了Spring?MVC異步上傳、跨服務(wù)器上傳和文件下載功能實現(xiàn),本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-07-07
  • Mybatis接口式編程的原理

    Mybatis接口式編程的原理

    mybatis有兩種實現(xiàn)方式,一種可以通過xml配置文件實現(xiàn),其二是面向接口編程的實現(xiàn)。本文重點給大家介紹mybatis接口編程的原理,需要的的朋友參考下
    2017-03-03
  • Java緩存池代碼實例詳解

    Java緩存池代碼實例詳解

    本篇文章主要介紹了Java實現(xiàn)簡單的緩存方法實例,需要的朋友可以參考下
    2017-04-04
  • Java通過切面實現(xiàn)統(tǒng)一處理Token設(shè)置用戶信息

    Java通過切面實現(xiàn)統(tǒng)一處理Token設(shè)置用戶信息

    這篇文章主要介紹了Java切面統(tǒng)一處理Token設(shè)置用戶信息,常見的后端開發(fā)中,接口請求中一般前端都是先通過用戶登錄獲取token,每次接口請求都需要在頭信息中攜帶token信息,后端每次都需要手動處理token信息,從token信息中解析獲取用戶信息,需要的朋友可以參考下
    2023-10-10
  • MyBatis-Plus?實體類注解的實現(xiàn)示例

    MyBatis-Plus?實體類注解的實現(xiàn)示例

    MyBatis-Plus作為MyBatis的增強版,提供了一系列實用的注解,如@TableName、@TableId、@TableField等,旨在簡化數(shù)據(jù)庫和Java實體類之間的映射及CRUD操作,通過這些注解,開發(fā)者可以輕松實現(xiàn)表映射、字段映射、邏輯刪除、自動填充和樂觀鎖等功能
    2024-09-09
  • springboot整合ACTable生成數(shù)據(jù)庫表方式

    springboot整合ACTable生成數(shù)據(jù)庫表方式

    ACTable是一個增強Mybatis的功能框架,支持SpringBoot和SpringMvc項目,通過配置model注解即可創(chuàng)建、修改表結(jié)構(gòu),并實現(xiàn)了共通的CRUD功能
    2025-02-02
  • Java語言Iterator轉(zhuǎn)換成 List的方法

    Java語言Iterator轉(zhuǎn)換成 List的方法

    在 Java 中,迭代器(Iterator)是一種用于遍歷集合中元素的對象,它提供了一種簡單而一致的方式來訪問集合中的元素,而不需要暴露集合內(nèi)部的結(jié)構(gòu),這篇文章主要介紹了Java語言Iterator轉(zhuǎn)換成 List的方法,需要的朋友可以參考下
    2023-08-08

最新評論

尉氏县| 丽水市| 涿州市| 会宁县| 会同县| 宜川县| 塘沽区| 上栗县| 东平县| 崇阳县| 侯马市| 屯门区| 杂多县| 贡山| 沐川县| 上犹县| 汝南县| 万安县| 承德县| 察雅县| 商洛市| 厦门市| 延边| 疏附县| 平南县| 阜阳市| 边坝县| 溆浦县| 垣曲县| 大足县| 仁化县| 日土县| 西平县| 梁平县| 新乐市| 四子王旗| 花莲县| 慈溪市| 宁陵县| 赫章县| 伊宁县|