IDEA最好用的插件推荐,吐血整理!

2023-11-10

作者 | 明明如月

来源 | 慕课专栏《阿里巴巴Java开发手册》

1.前言

俗话说:“工欲善其事,必先利其器”。

为了助力大家的学习和进阶,本小节介绍几个对 Java 学习非常有帮助的 IDEA 插件,代码反编译和反汇编工具,以及非常不错的网站等。

2. IDEA 插件

首先不必多说,IDEA 是目前 Java工程师最主流的开发工具, IDEA 的强大之处不仅在于自身,还在于提供了丰富的插件(这点和谷歌浏览器非常类似)。

本部分介绍几款强大实用的 IDEA 插件,助力大家开发。

以下插件大都可以通过 IDEA 自带的插件管理中心安装,如果搜不到可以去 IDEA 插件官网下载本地导入。

具体安装界面不同版本 IDEA略有差异,请自行研究。

如果连插件安装都不愿意学、学不会的话,很难成为一名合格的 Java 开发工程师。

2.1 Alibaba Java Coding Guidelines

首先要推荐的是和《手册》配套的阿里巴巴 Java代码规范插件。

安装该插件后,代码超过 80 行、手动创建线程池等,这些和《手册》中的规约不符时,IDEA中会给出警告提示。

建议大家一定一定一定要安装该插件,它会帮助你检查出很多隐患,督促你写更规范的代码。

2.2 jclasslib bytecode viewer

下面要隆重介绍的是一款可视化的字节码查看插件:jclasslib 。

大家可以直接在 IDEA 插件管理中安装(安装步骤略)。

使用方法:

  1. 在 IDEA 打开想研究的类;

  2. 编译该类或者直接编译整个项目( 如果想研究的类在 jar 包中,此步可略过);

  3. 打开“view” 菜单,选择“Show Bytecode With jclasslib” 选项;

  4. 选择上述菜单项后 IDEA 中会弹出 jclasslib 工具窗口。

那么有自带的强大的反汇编工具 javap 还有必要用这个插件吗?

这个插件的强大之处在于:

  1. 不需要敲命令,简单直接,在右侧方便和源代码进行对比学习;

  2. 字节码命令支持超链接,点击其中的虚拟机指令即可跳转到 jvms 相关章节,超级方便。

该插件对我们学习虚拟机指令有极大的帮助。

2.3 Codota

另外一个不得不说的就是专栏中提到的辅助开发神器: Codota。

可以点击下图所示“Add Codota to you IDEA” 了解安装步骤。


该插件的强大之处在于:

  1. 支持智能代码自动提示,该功能可以增强 IDEA 的代码提示功能;

  2. 支持 JDK 和知名第三方库的函数的使用方法搜索,可以看到其他知名开源项目对该函数的用法。

当我们第一次使用某个类,对某个函数不够熟悉时,可以通过该插件搜索相关用法,快速模仿学习。

如上图所示,我们想了解 Stream 类中 flatMap 函数的用法,可以使用该插件查看知名开源项目的用法。

插件窗口顶部还给出了该类最常用的函数,可以点击查看相关用法案例,每个案例右侧的 "view source"可以跳转到该片段对应的开源项目的源码中。

2.4 Auto filling Java call arguments

开发中,我们通常会调用其它已经编写好的函数,调用后需要填充参数,但是绝大多数情况下,传入的变量名称和该函数的参数名一致,当参数较多时,手动单个填充参数非常浪费时间。

该插件就可以帮你解决这个问题。

安装完该插件以后,调用一个函数,使用 Alt+Enter 组合键,调出 “Auto fill call parameters” 自动使用该函数定义的参数名填充。

2.5 GenerateO2O、GenerateAllSetter

我们定义好从 A 类转换到 B 类的函数转换函数后,使用这两个插件可以自动调用 Getter 和 Setter 函数实行自动转换。

实际开发中还有一个非常常见的场景:我们创建一个对象后,想依次调用 Setter 函数对属性赋值,如果属性较多很容易遗漏或者重复。

可以使用这 GenerateAllSetter 提供的功能,自动调用所有 Setter 函数(可填充默认值),然后自己再跟进实际需求设置属性值。

2.6 Material Theme UI

对于很多人而言,写代码时略显枯燥的,如果能够安装自己喜欢的主题将为开发工作带来些许乐趣。

IDEA 支持各种主题插件,其中最出名的当属 Material Theme UI。


安装后,可以从该插件内置的各种风格个选择自己最喜欢的一种。

2.7 Rainbow Brackets

由于很多人没有养成好的编码风格,没有随手 format 代码的习惯,甚至有些同事会写代码超过几百行,阅读起来将非常痛苦。

痛苦的原因之一就是找到上下文,由于括号太多,不确定当前代码行是否属于某个代码块,此时这个插件就会帮上大忙。

插件 github 地址:https://github.com/izhangzhihao/intellij-rainbow-brackets。

大家可以观看其 github 首页的动图体会和学习其强大功能。

2.8 Maven Helper

现在 Java 项目通常会使用 maven 或者 gradle 构建,对于maven 项目来说, jar 包冲突非常常见。

那么如何更容易地查看和解决 jar 包冲突呢?

大家可以安装该插件,安装后 IDEA 中打开 pom.xml 文件时,就会多出一个 “Dependency Analyzer” 选项卡。

如上图所示,该插件支持值插件冲突的 jar 包,可以选择冲突的 jar 包将其 exclude 掉。

2.9 FindBugs

程序员总是想尽可能地避免写 BUG, FindBugs 作为静态代码检查插件,可以检查你代码中的隐患,并给出原因。

当然还有很多类似的静态代码检查插件,大家可以自行了解安装。

2.10 SequenceDiagram

SequenceDiagram 可以根据代码调用链路自动生成时序图,超级赞,超级推荐!

这对研究源码,梳理工作中的业务代码有极大的帮助,堪称神器。

安装完成后,在某个类的某个函数中,右键 --> Sequence Diagaram 即可调出。

如下图是 Netty 的源码,可以通过该插件绘制出当前函数的调用链路。

双击顶部的类名可以跳转到对应类的源码中,双击调用的函数名可以直接调入某个函数的源码,总之非常强大。

2.11 Stack trace to UML

Stack trace to UML 支持根据 JVM 异常堆栈画 UML时序图和通信图。

打开方式 Analyze > Open Stack trace to UML plugin + Generate UML diagrams from stacktrace from debug

2.12 Java Stream Debugger

Stream 非常好用,可以灵活对数据进行操作,但是对很多刚接触的人来说,不好理解。

那么 Java Stream Debugger 这款神器的 IDEA 就可以帮到你。它可以将 Stream 的操作步骤可视化,非常有助于我们的学习。

2.13 其它

IDEA 的插件浩如烟海,好的IDEA 插件欢迎留言交流。

另外大家可以通过 IDEA插件官网进行搜索,有海量插件供你选择。

3.反编译和反汇编软件

Java 学习进阶之路离不开Java 反编译和反汇编。

实际开发中需要用到反汇编的典型场景有:

  • 自己或者二方上传的包含新的接口 jar 包到maven 仓库,下载下来查看 jar 包检查新的接口是否包含在新的 jar 包中;

  • 需要临时查看某个 Jar 包的源码,不想加到本地仓库中;

  • 拿不到源码,又想了解其源码究竟是怎么写的;

  • 线上代码表现和自己的源码不一致,怀疑线上代码不对,可以反编译去核对。

对于大多数普通 Java 工程师来说,使用反编译的场景多是为了学习研究。

3.1 在线Java反编译工具

有很多在线反编译的网站,其中比较好用的主要是以下两个:

http://www.decompiler.com/

使用简单,直接将 jar 包和 class文件拖到页面即可。

http://www.javadecompilers.com/

功能很强大,支持多种反编译方式,但是浏览效果不如上面网站好。

3.2 离线 Java 反编译工具

3.2.1 反编译软件

很多人担心在线反编译可能会引起代码泄露等,所以倾向于使用本地的反编译工具。

这里推荐两款软件:JD-GUI 和 Luyten。

JD-GUI 是一款可以根据 Java的 class 文件反编译出其源码的工具,界面简单,功能强大。

另外一个非常好用的反编译软件为 Luyten, 它是反编译工具 Procyon 的可视化显示工具。

大家可以在其 github 上下载安装:https://github.com/deathmarine/Luyten/releases。

该软件的用法和 JD-GUI 类似。

图形界面反编译虽然更直观,但是如果我们想反编译Linux服务器上的类文件可咋办呢?

我们可以通过 Jad 、CFR、Procyon、ernflower、 JD等反编译工具。

另外知名的阿里开源 Java诊断工具 arthas 也支持 jad 命令,可以将 JVM 中实际运行的 class 文件的字节码反编译成 Java 代码,便于理解业务和排查问题。

举一个真实发生过的典型的场景:

有一次代码发布上线,但是从功能表现看线上仍然是“旧代码”,但是从发布的 git 提交版本来看是最新版。

此时就可以使用 jad 反编译该类,来核查该问题。

3.2.2 反汇编

这里简单介绍 Java 反编译和反汇编的区别。

这里说的反编译是指:将 class 文件反编译成 Java 源码的过程。

这里说的反汇编是指:将class 文件反解析为更可读的虚拟机指令的过程。

反汇编最权威和强大的当属 JDK 自带的 javap 工具,具体用法直接输入帮助指令javap -help 即可查看:

用法: javap <options> <classes>
其中, 可能的选项包括:
  -help  --help  -?        输出此用法消息
  -version                 版本信息
  -v  -verbose             输出附加信息
  -l                       输出行号和本地变量表
  -public                  仅显示公共类和成员
  -protected               显示受保护的/公共类和成员
  -package                 显示程序包/受保护的/公共类
                           和成员 (默认)
  -p  -private             显示所有类和成员
  -c                       对代码进行反汇编
  -s                       输出内部类型签名
  -sysinfo                 显示正在处理的类的
                           系统信息 (路径, 大小, 日期, MD5 散列)
  -constants               显示最终常量
  -classpath <path>        指定查找用户类文件的位置
  -cp <path>               指定查找用户类文件的位置
  -bootclasspath <path>    覆盖引导类文件的位置

大家一定要自己多动手实践,才能更好地掌握它。

另外一个比较好用的反汇编工具为 jclasslib。

在IDEA 插件中心中还可以搜到该工具的IDEA插件。

当然,还有很多其他好用的 Java 反编译和反汇编软件,希望大家平时多尝试,多练习。

希望大家能够熟练掌握其中一两种,能够快速反编译和反汇编,帮助自己学习知识和解决问题。

4.效率软件

4.1 效率

4.1.1 Alfred

Alfred 可以说是 Mac 系统的效率神器。该软件支持文件搜索、粘贴板管理、快捷短语提示、各种工作流等功能。

具体功能介绍可以看这篇文章。

4.1.2 Wox

有些朋友可能会说,我们系统是 windows 的肿么办?

这里推荐一个 windows 上的 alfred:Wox, 该软件支持软件、文件、浏览器书签等搜索,支持通过快捷键快速搜索网页,还支持丰富的插件,可以查询英语单词、查快递等。

软件效果图(图片来自官网)

4.1.3 Snipaste

另外推荐一个非常好用的截图和贴图软件 Snipaste。

该软件不仅是一款截图工具,还支持将截图贴到屏幕上,使用非常简单, F1 截图,然后 F3 贴图,截图就会桌面置顶显示。

软件效果图(图片来自官网)

我们写技术文章或者开发时可能需要参考多个地方,由于开发的桌面和参考的桌面通常不在一个桌面,如果没有双屏,或者双显示屏还不过还需要切换,就非常浪费时间。此时该软件就有大用途,可以将待参考的内容分别截图、贴图,然后自己随意排列组合在当前页面中供你参考。

4.1.4 Contexts

该软件目前只支持 mac 系统,可以实现窗口的快速切换。

软件效果图(图片来自官网)

4.1.5 Paste

该软件目前只支持 mac 系统。

采用 iOS 多任务卡片切换界面,可以可视化粘贴板历史,支持剪切搜索,热键快速调用,可以快速选取想要的粘贴版历史内容并粘贴到当前应用中。

4.2 画图神器

作为一个合格的程序员,怎能没几个趁手的画图工具呢?

每个人的喜好各有不同,下面推荐几个本人和身边人开发中常用的画图工具。

4.2.1 UML 画图工具

visual-paradigm

推荐 visual-paradigm的理由是该画图工具不仅支持软件本地画图,还支持在线画图,支持最新的语法,并且有丰富的参考示例。

PlantUML

强烈推荐大家画UML 图时使用PlantUML,理由是其他大多数作图软件都采用拖拽式,对于有些强迫症的人会浪费很多时间进行对齐等操作。

该软件还提供了 IDEA 插件,在IDEA中创建 plantUML 的图形支持实时预览。

通过 PlantUML 官网给出的示例,大家可以快速上手。

其它UML画图工具

可以使用 processon 来作图,优势是在线存储。windows 系统用户可以使用 visio,功能强大,画的图也很美观。

4.2.2 思维导图

很多人会有些奇怪,为啥推荐思维导图呢?

其实对于Java工程师来说,思维导图是梳理知识,梳理需求的重要工具。

然而画思维导图并不是照着目录列一遍,而是带上自己的思考,具体再画图篇会讲到。

思维导图软件推荐使用:xmind、mindjet、ithoughts 等。

4.3 辅助开发

4.3.1 PostMan

PostMan 可以模拟前端请求,可以将请求进行分类、保存,支持变量,支持将请求导出为 curl 等其他请求方式,功能非常强大,大家可以根据官方文档多摸索使用。

4.3.2 VisulVM

VisulVM 是 JDK 命令行工具的可视化整合工具,可以在开发和生产中使用。

常规用法是先启动软件,然后选择本地的 Java 进程,或者添加远程机器的 Ip 和端口号监控远程 Java 进程状况。

IDEA 中还有 VisualVM 的插件,可以在本地应用启动时,自动启动 VisualVM。

4.3.3 前端插件助手

推荐一个方便大家开发的插件:前端插件助手。

该插件支持字符串的编解码、JSON串的格式化、代码美化、二维码生成器、页面滚动截屏、图片转Base64 、简易 Postman、Ajax 调试等功能。

虽然名叫“前端插件助手”,其实该插件对我们后端开发帮助也极大。

4.3.4 Print Friendly & PDF

我们平时看很多博客等,想保存为PDF,如果直接使用浏览器打印就会发现有很多广告等信息。

可以使用该插件,生成只包含页面主要内容的 PDF。

大家可以通过该软件的官网 进一步了解该插件。

4.3.5 ModHeader

该插件可以修改请求和响应头,在某种调试场合非常有用。

4.3.6 Ajax Interceptor

该插件非常强大,可以修改页面 Ajax 请求的返回结果。

4.3.7 翻译插件

沙拉查词

很多同学想看英文技术网站,但是英语不是特别好,可以借助该插件聚合多种翻译软件,翻译各种词汇或句子。

最大的好处是可以对比多种翻译插件的结果,得到最准确的理解。

彩云翻译

彩云翻译 提供了中英文对照翻译的能力,如果看某些英文技术文章有些吃力,可以适当使用该插件实现中英文对照理解。

5.很赞的网站

5.1 在线练习网站

很多人想学习某个技术,但是有自己电脑配置限制或者嫌麻烦等各种原因,可能不愿意安装某些环境。

那么有没有可以在线练习的网站呢? 答案是:有。

接下来推荐几个非常强大的在线练习和学习网站。

5.1.1 Git 在线练习

推荐一个在线学习 Git 的趣味网站: https://learngitbranching.js.org/

5.1.2 kafka集群体验

有一个网站提供kafka集群的体验:https://www.cloudkarafka.com/

5.1.3 leetcode

此处,不得不提的是鼎鼎大名的 leetcode。

该网站提供了在算法、数据库和Shell 脚本的练习题。

5.1.4 数据结构可视化

接下来推荐一个数据结构可视化的网站。可以选择某种数据结构,动态添加数据,观察变化过程。

5.1.5 正则表达式

还有很多支持在线学习和验证正则表达式的网站,如 https://regexr.com/、https://c.runoob.com/front-end/854、https://tool.oschina.net/regex。

5.1.6 在线练习SQL

推荐几个可在线练习 SQL 的超赞网站:SQLZOO、SQLBolt、SQL Fiddle。

中文版:xuesql、廖雪峰SQL教程

5.2 实用网站

5.2.1 时间戳转换

时间戳转换工具:https://tool.chinaz.com/tools/unixtime.aspx

5.2.2 JSON相关

JSON格式化

开发中还会经常用到格式化 JSON 串的功能,bejson 提供了 JSON相关的丰富功能,JSON的格式化校验、压缩、转义、去除转义等。

JSON 和 Java实体互转

有很多强大的网站支持 JSON和Java实体互转,如 bejson、jsonschema2pojo 、codebeautify、FreeCodeFormat、site24*7 等。

5.2.3 超赞的英文 Java学习网站

除了咱们的慕课网外,推荐几个非常好的英文学习网站。

首推 baeldung该网站几乎所有的文章都有配套代码,。我们可以直接通过该网站的代码运行学习某些知识点,某些框架等。

其次是 javacodegeeks, 该网站会提供丰富的 Java 教程,还会提供一些英文 PDF 教程。

journaldev 和 jamesdbloom 对技术的讲解非常透彻。

5.2.4 技术电子书百宝箱

Library Genesis 号称是帮助全人类知识传播计划,其网站 http://gen.lib.rus.ec/ 提供了很多英文图书的下载。

我们 Java 开发需要用到知名英文书籍几乎都可以在上面找到电子版。

强烈建议大家购买纸质版经典的 Java 技术图书,反复学习。

5.2.5 GitHub

GitHub 也可堪称是百宝箱,大家可以通过它来搜索想学技术的源码和相关示例代码。

大家可以在 Java 的 topic栏目 了解 stars 最多的,最近更新的,最佳的 Java项目等。

6.总结

本文重点介绍了 Java 学习和工作中常用的软件、插件、网站等。熟练地使用这些工具,将有助于提高我的开发效率和编程体验。

肯定还有很多好用的插件和软件,由于篇幅有限就不在这里一一介绍,欢迎大家留言分享。

1. 全栈架构之打包推荐【建议收藏,常读】

2. 探讨确保消息消费幂等性的几种方式

3. 分布式系统中Session共享的常用方案

4Java语言“坑爹”排行榜TOP 10

5. 我是一个Java类(附带精彩吐槽)

6. mysql索引失效,差点我的工作凉了

7. 既生synchronized,何生volatile?

8. 微服务一直火,为什么服务化要搞懂?

9. MySQL的COUNT语句,不简单!

10. 漫画:HashSet和TreeSet实现与原理

扫码二维码关注我

·end·

—如果本文有帮助,请分享到朋友圈吧—

我们一起愉快的玩耍!

你点的每个赞,我都认真当成了喜欢

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IDEA最好用的插件推荐,吐血整理! 的相关文章

  • 【机器学习】DBSCAN密度聚类算法(理论 + 图解)

    文章目录 一 前言 二 DBSCAN聚类算法 三 DBSCAN算法步骤 四 算法的理解 五 常用评估方法 轮廓系数 一 前言 之前学聚类算法的时候 有层次聚类 系统聚类 K means聚类 K中心聚类 最后呢 被DBSCAN聚类算法迷上了
  • Android Studio中Intel HAXM的那些坑

    最近用过两台电脑折腾Android Studio 都是windows的系统 不知道为什么连着踩了两个坑 第一台我结束了qemu system i386 exe这个倒霉的进程 导致我开启模拟器的时候一直提示我没有安装Intel HAXM 没办
  • mySQL常用DDL命令

    mysql常用DDL命令 1 创建数据库 2 查看数据库 3 查看数据库创建明细 4 修改数据库编码 5 删除数据库 6 使用数据库 7 创建表 8 查看表的结构 9 在表中插入列 字段 10 修改列 字段 的属性 11 删除某列 字段 1
  • 首字母变大写

    小写字母变大写m 0 m 0 32 include
  • 【周末闲谈】剑指offer,了解面试,学会面试

    我们在找工作时 需要结合自己的现状 针对意向企业做好充分准备 作为程序员 你有哪些面试IT技术岗的技巧 你可以从一下几个方向谈谈你的想法和观点 个人主页 个人主页 系列专栏 周末闲谈 文章目录 前言 剑指Offer 面试指南 一 了解你的面
  • Java学习笔记(十八)

    Spring Boot 什么是 Spring Boot Spring Boot 已经建立在现有 spring 框架之上 使用 spring 启动 避免了之前我们必须做的所有样板代码和配置 因此 SpringBoot 可以帮助我们以最少的工作
  • vue项目中实现扫码登录

    1 需求描述 PC端实现两种登录方式 账号登录 扫码登录 扫码登录未绑定账号 弹框提示绑定账号 账号登录 未绑定微信 弹框提示 效果图 2 扫码登录未绑定账号 弹框提示绑定账号 2 1 安装 qrcode npm install qrcod
  • TFS淘宝分布式文件核心存储引擎源码架构剖析实现

    这里写目录标题 相关背景介绍 相关设计思路介绍 项目基础 文件系统接口 扇区 文件结构 关于inode 为什么淘宝不用小文件存储 淘宝网为什么不用普通文件存储海量小数据 设计思路 关键数据结构哈希表 代码日志 mmp file h mmap
  • 31_access 日志

    文章目录 过滤模块的位置 返回响应 加工响应内容 过滤模块的位置 接收 http 头部 gt pre access 阶段 gt limit req 模块 gt limit conn 模块 gt access 阶段 gt access 模块
  • Java java.lang.NumberFormatException: For input string: ““问题解决

    问题描述 java lang NumberFormatException For input string 问题分析 1 使用Long parseLong Integer parseInt Double parseDouble Float
  • BP神经网络理解原理——用Python编程实现识别手写数字(翻译英文文献)

    BP神经网络理解原理 用Python编程实现识别手写数字 备注 这里可以用这个方法在csdn中编辑公式 https www zybuluo com codeep note 163962 一 前言 本文主要根据一片英文书籍进行学习 并且尝试着
  • CCProxy网络共享代理服务端配置使用

    CCProxy是一个局域网络共享工具 可用于VPN共享等 1 解压安装CCProxy工具 双击CCProxy exe启动 打开如下界面 2 打开设置界面 设置对外共享的IP地址和端口号 如下 点击确定 最后再点击启动即可
  • OAuth2扩展access_token(二)

    接着上一篇继续展示其他功能 2 1 如何拿着生成的access token获取用户详情信息 有的小伙伴可能好奇这个jti是合适呢么东西 这个是jwt生成令牌的唯一标识 后期我们还要拿它来整合redis哦 因为他是唯一的 我们可以把它作为ke
  • Mac系统CLion中C语言EOF如何结束输入(楼主亲测有效)

    今日发现在mac系统CLion中C语言EOF没有办法结束输入 如下代码 我写了一个C语言程序 以EOF结束 include
  • 《Thinking in Java》读后总结与感想

    作为Java界的四大名著之一 Thinking in Java 一直备受推崇 我很早就知道了这本书 当时只是初涉Java 粗略的翻了翻之后觉得看起来这本书讲的比较深就没有再去碰它 后来Java基础学完之后又忙着学Android开发的知识 就
  • 如何打开mysql_MySQL教程

    MySQL经常和 数据库 连在一起读 这很容易对新手造成误解 认为MySQL就是一个数据库 其实不是这样 MySQL是数据库的集合 MySQL里面有很多数据库 那么数据是直接存在数据库里的吗 并不 数据库底下还有一个叫做数据表的存储单元 数
  • 无需公网IP,安全访问云端资源,3步搞定

    某企业将OA ERP Git代码库等业务资源 分别部署在了公有云和私有云 但随着业务发展 分部和移动办公人员逐渐增多 如何高效实现50名员工安全远程访问云端资源成了难题 使用MPLS专线 IPSec VPN等传统方案实现远程访问 不仅实施费
  • Spring的入门及案例----Ioc

    一 Spring的核心 Spring的核心是控制反转 IoC 和面向切面 AOP 简单来说 Spring是一个分层的JavaSE EEfull stack 一站式 轻量级开源框架 IoC 控制反转 对于Spring来说 Spring创建对象
  • 通过css内修改input框placeholder样式

    使用css内修改input框placeholder样式 需求将input框内placeholder属性文字设置颜色及字体大小 修改前 修改后 代码 input webkit input placeholder WebKit Blink Ed
  • 利用std::async实现异步功能

    c 11标准推出了多线程功能 其中我比较喜欢的是把async和future联合起来使用 实现异步功能 目录 首先介绍async的使用办法 输入参数 返回值 std future的使用办法 异步结果的获取 等待异步结果的返回 wait wai

随机推荐

  • Android图像开源视图:SmartImageView

    项目需要 开发中需要加载图片 自己要写图片从网上下载的方法 还要写缓存 等等 在网上找到一个开源项目 smartImageVIew 支持从URL和通讯录中获取图像 可以替代Android标准的ImageView 特征 根据URL地址装载图像
  • C# ---Constructor, Object Initializer, Property, Constant, and readonly

    C Constructor Object Initializer Property Constant and Readonly Constructor and Object Initializer Fields and Property 如
  • queue使用方法

    queue使用方法 提示 如果队列满了 那么使用put放入数据会等待 直到队列有空闲位置才可以放入 放入消息的时候不会进行等待 如果发现队列满了不能放入数据 那么会直接崩溃 import multiprocessing import tim
  • Spring Boot使用@Async实现异步调用

    1 Spring Boot使用 Async实现异步调用 链接 link 原文 http blog csdn net a286352250 article details 53157822 项目GitHub地址 https github co
  • 大数据背景下如何加强高校财务管理水平

    1 建立软 硬件平台 智能的软件平台是大数据技术实施的主要依托 必须加强与大数 据相适应的平台建设 才能充分发挥大数据技术的优势 服务好高校 财务管理工作 云平台存储便捷 处理高效 管理智能 是与大数据技术适应的 最佳软件平台 因此 高校要
  • python宽度学习训练后模型的持久化存储和快速调用

    在模型训练完成后 我们需要对我们训练出来的模型进行持久性储存 这样既能将我们调参后得到的最佳模型进行存储 还可以方便后期同团队的人进行调用预测 1 原理 此处用到的是sklearn库中的joblib包进行存储和加载 因为宽度学习的类属于自定
  • 华为OD机考-构建输入和输出

    华为OD机考 ACM模式下创建输入 概述 下文列举机考过程中常见输入的构造方法 如字符串 多维数组等 并对用到的函数进行详细讲解 最后通过真题实操巩固知识点 一 机考中常见的输入 1 输入字符串 输入一行字符串 str1 input pri
  • 36 数据增广 [动手学深度学习v2]

    数据增强 增加一个已有数据集 使得有更多的多样性 在语言里面加入各种不同的背景噪音 改变图片的颜色和形状 图像增广 import torch import torchvision from torch import nn 左右翻转图像 to
  • 深度学习刷 SOTA 有哪些 trick?

    深度学习刷 SOTA 有哪些 trick 此问题在知乎上有超 1700 人关注 浏览量超 32 万 相信是大家都非常关心的问题 快一起看看下面的分享吧 希望可以帮助到大家 对于图像分类任务 让我们以 Swin Transformer 中使用
  • 【2023】基于docker 实现部署jar包项目(包括单个和多个一起部署)

    建议学习本博客之前 需要对docke的基本命令有过学习 目录 前言 1 项目打包 2 编写Dockerfile文件 2 1 单个jar部署 Dockerfile文件常用命令 2 2 1 编写一个Dockerfile 文件格式制作镜像 2 1
  • AngularJs的生命周期

    AngularJs的生命周期分为六个阶段 编译 AngularJs会遍历浏览器提供的dom树 尝试参照已注册的指令集来匹配每个元素 属性 注释和css类 每当匹配一个指令时 ag就会调用该指令的编译函数 该函数返回一个连接函数 ag会收集所
  • linux 命令行操作串口

    linux 命令行操作串口 1 获取串口号 2 配置串口属性 stty命令 3 串口数据读写操作 4 解析数据 5 后台运行 6 绘制数据 Linux stty命令 一 参数 二 用法 Linux下minicom操作 Linux minic
  • 算法第六题:压缩字符串 2021-08-21

    一 题目 给你一个字符数组 chars 请使用下述算法压缩 从一个空字符串 s 开始 对于 chars 中的每组 连续重复字符 如果这一组长度为 1 则将字符追加到 s 中 否则 需要向 s 追加字符 后跟这一组的长度 压缩后得到的字符串
  • WPF的MVVM框架Stylet开发文档 14.7-14.9 杂项、性能、技术

    14 7 StyletIoC 杂项 文档地址 此页面包含其他各种值得一提的点点滴滴 但还不够大 不值得单独放置一个页面 循环依赖 循环依赖项 下面记录的类型除外 会导致 StackOverflow 异常 提前发现这些问题并非易事 虽然 St
  • C# 如何将EMF文件转换成PNG文件

    本文主要讲述如何将EMF文件转换成PNG文件 目录 一 EMF文件和PNG文件 二 代码 一 EMF文件和PNG文件 EMF文件和PNG文件都是Windows系统可以读取的图片文件格式 所以转换比较简单 二 代码 有几个地方需要要注意 1
  • Softing D-PDU API 11_30_010 新版本支持TLS

    一 TLS的概述 安全传输层协议 Transport Layer Security 缩写 TLS 前身为安全套接层 Secure Sockets Layer 缩写 SSL 用于在通信应用程序之间提供保密性和数据完整性 该协议由两层组成 一个
  • 质因数分解(唯一分解定理)

    质因数分解 题目描述 多数据 给出t个数 求出它的质因子个数 数据没坑 难度降低 输入描述 Input Description 第一行 t 之后t行 数据 输出描述 t行 分解后结果 质因子个数 样例输入 2 11 6 样例输出 1 2 数
  • vs2010 点击时应用程序无法正常启动(0xc000007b).请单击“确定”关闭应用程序解决办法

    昨天做项目的时候 在安装一个win32的应用程序后再次启动vs2010时发现报错 就是如下的错误 哎呀 我的天 关键时刻就打不开了 这么怎么办呢 赶紧去搜解决办法 1 使用Directx修复 修复了180个左右的dll文件 但是没有解决我的
  • 卷积操作中的卷积核形状到底是怎样的

    input shape 2 5 5 kernal size 2 3 3 kernal amount 3 卷积核的维度与输入的维度一致 都是三维的 最后的输出的通道数与卷积核数量一致 用了三个卷积核 就会输出三个通道
  • IDEA最好用的插件推荐,吐血整理!

    作者 明明如月 来源 慕课专栏 阿里巴巴Java开发手册 1 前言 俗话说 工欲善其事 必先利其器 为了助力大家的学习和进阶 本小节介绍几个对 Java 学习非常有帮助的 IDEA 插件 代码反编译和反汇编工具 以及非常不错的网站等 2 I