前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【云驻共创】 JAVA常用的开发工具有哪些?

【云驻共创】 JAVA常用的开发工具有哪些?

作者头像
再见孙悟空_
发布于 2023-02-10 13:19:36
发布于 2023-02-10 13:19:36
1.7K0
举报

前言

俗话说,工欲善其事,必先利其器。工匠想要使他的工作做好,一定要先让工具锋利。比喻要做好一件事,准备工具非常重要。对于我们做程序员的来说也是一样的,想要提高开发效率,也需要选择好自己的开发工具,下面我们就来详细盘点一下Java开发一般都会用到哪些开发工具。

一.开发编程工具

1.Eclipse  官网地址

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

2.MyEclipse  官网地址

MyEclipse,是在Eclipse 基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java、Java EE以及移动应用的开发。在最新版本的MyEclipse中,配合CodeMix使用支持也十分广泛,尤其是对各种开源产品和主流开发框架的支持相当不错。已支持PHP、Python、Vue、Angular、React、Java、Java EE等语言和框架开发。

3.IntelliJ IDEA   官网地址

IDEA 全称 IntelliJ IDEA,是java编程语言的集成开发环境。IntelliJ在业界被公认为最好的Java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。它的旗舰版还支持HTML,CSS,PHP,MySQL,Python等。免费版只支持Java,Kotlin等少数语言。

我后来转Android后用的是 Android Studio工具,其实这个工具就是Google在idea的基础上二次开发出来的,所以两者非常像,只是侧重不同。

上面这几个工具我全部都用过,2011年刚入门培训的时候就是用的Eclipse,后来做Java web项目就改为用MyEclipse,后来转Android 用过一段时间Idea,说一下这几个工具的主要区别:

MyEclipse是收费的,eclipse是免费的。

Eclipse自带的插件很少,如果写web项目,需要自己配置很多东西,MyEclipse集成了很多的插件,一般Java的企业应用开发都会使用MyEclipse

idea比myeclipse 更加智能,自带更智能的代码提示,代码检查

MyEclipse 以前用的时候有时候经常会卡死,Idea更加稳定,而且我感觉Idea界面看起来更舒服。(个人感受)

我个人更推荐开发同学直接用idea,感觉idea集合了eclipse和MyEclipse的功能和优点,然后又在此基础上做了升级,尤其是代码智能提示,自动生成一些相关的类文件的确方便了很多。java开发工具还有NetBeans 、Visual Studio Code等其他工具,但是那些我没用过,相关介绍大家可以自行从网上搜索相关资料。

二.接口调试工具

作为一名开发人员,完成开发工作后,肯定要自己进行测试,这可能还会用到接口测试的一些工具。

1.Postman 官网地址

Postman是一款功能非常棒的Chrome扩展,提供功能强大的API&HTTP请求调试。它可以发送几乎所有类型的HTTP请求,并可以附带任何数量的参数和请求头(headers)。

2.Apipost 官网地址

ApiPost是一个支持模拟POST、GET、PUT等常见HTTP请求,支持团队协作,并可以直接生成并导出接口文档的API文档、调试、Mock、测试一体化协作平台。

3.ApiFox 官网地址

API 文档、API 调试、API Mock、API 自动化测试,一体化协作平台。平台化的产品不多说。

4.Charles 官网地址

Charles 是一个 HTTP 代理 / HTTP 监视器 / 反向代理,它使开发人员能够查看他们的机器和 Internet 之间的所有 HTTP 和 SSL / HTTPS 流量。这包括请求、响应和 HTTP 标头(其中包含 cookie 和缓存信息)。

charles更多的用在监视接口调用情况,说直白点就是抓包工具,类似的工具还有 Fiddler 和Wireshark。

三.测试工具

1.jmeter 官网地址

Apache JMeter 是 Apache 组织基于 Java 开发的压力测试工具,用于对软件做压力测试。

jmeter能够进行接口测试和性能测试,可是对于作单纯的接口测试jmeter操做起来没有postman、apipost使用起来方便。jmeter重点在于压力测试,稳定性测试和负载测试。针对于接口和程序的稳定性设计的一款以软件性能为主,接口测试为辅的接口测试工具。

2.JTest 官网地址

JTest是Parasoft公司推出的一款针对java语言的自动化白盒测试工具,它通过自动实现java的单元测试和代码标准校验,来提高代码的可靠性。

3.JUnit 官网地址

JUnit是一个为Java编程语言设计的单元测试框架。 JUnit为测试驱动开发框架的发展发挥了重要作用。它是现在被统称为xUnit的单元测试框架大家庭的组成成员之一,源于SUnit。在编译时,JUnit可以连接作为JAR,用于编写可重复的测试。

4.Arquillian官网地址

Arquillian是JVM一个高度创新性和可扩展的测试平台,支持Java开发人员轻松创建自动化集合的,功能性的和验收的测试。Arquillian允许在运行时间执行测试。Arquillian可以用来管理单个或多个容器的生命周期,捆扎测试用例,从属类和资源。它还能够部署归档到容器中,在容器中执行测试、捕获结果,并创建报告。

Arquillian集成了常见的测试框架,如JUnit 4、TestNG 5,并允许使用现有的IDE发布测试,并且由于其模块化的设计使得能够运行Ant和Maven测试插件。

四.远程连接工具

国内程序员大部分都是在windows环境开发,但是开发完毕后,免不了需要部署到服务器(Liunx);特别是Java开发的程序,几乎都是部署在Linux系统,如何把程序部署到远程的Linux服务器呢?这时候远程连接工具就派上用场了。

1.Xshell

Xshell是一个功能强大的终端模拟器,支持SSH、SFTP、telnet,rlogin和串行。人们可以使用它在Windows界面下用来访问远端不同系统下的服务器,从而达到远程控制终端的目的。

2.SecureCRT

SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件。

3.FileZilla

FileZilla是一个免费开源的FTP软件,分为客户端版本和服务器版本,具备所有的FTP软件功能。可控性、有条理的界面和管理多站点的简化方式使得Filezilla客户端版成为一个方便高效的FTP客户端工具,而FileZilla Server则是一个小巧并且可靠的支持FTP&SFTP的FTP服务器软件。FileZilla是一种快速、可信赖的FTP客户端以及服务器端开放源代码程式,具有多种特色、直接的接口。

4.Putty

PuTTY是一个Telnet/SSH/rlogin/纯TCP以及串行连线软件。较早的版本仅支援Windows平台,在最近的版本中开始支援各类Unix平台,并打算移植至Mac OS X上。除了官方版本外,有许多非官方的团体或个人将PuTTY移植到其他平台上,像是以Symbian为基础的移动电话。

五.数据库视图工具

因为我以前做后台的时候主要用的是MySql,所以这部分主要列举MySql数据库图形化工具,如果工作用Oracle或者SqlServer的同学自行从网上找相关资料,当然下面介绍的工具有些也支持oracle和SqlServer。

1.Navicat 官网地址

Navicat是一套快速、可靠的数据库管理工具,Navicat 是以直觉化的图形用户界面而建的,可以兼容多种数据库,支持多种操作系统。

2.MySQL Workbench 官网地址

MySQL Workbench是一个统一的可视化开发和管理平台,该平台提供了许多高级工具,可支持数据库建模和设计、查询开发和测试、服务器配置和监视、用户和安全管理、备份和恢复自动化、审计数据检查以及向导驱动的数据库迁移。 MySQL Workbench是MySQL AB发布的可视化的数据库设计软件,它的前身是 FabForce 公司的 DDesigner 4。 MySQL Workbench 为数据库管理员、程序开发者和系统规划师提供可视化设计、模型建立、以及数据库管理功能。它包含了用于创建复杂的数据建模ER模型,正向和逆向数据库工程,也可以用于执行通常需要花费大量时间和需要的难以变更和管理的文档任务。MySQL工作台可在Windows,Linux和Mac上使用。

3.SQLyog 官网地址

SQLyog 是一个易于使用的、快速而简洁的图形化管理MYSQL数据库的工具,它能够在任何地点有效地管理你的数据库。

SQLyog是业界著名的Webyog公司出品的一款简洁高效、功能强大的图形化MySQL数据库管理工具。使用SQLyog可以快速直观地让您从世界的任何角落通过网络来维护远端的MySQL数据库。

4.DataGrip

DataGrip,是大名鼎鼎的JetBrains公司出品的,就是那个出品Intellij IDEA的公司。DataGrip是一款数据库管理客户端工具,方便连接到数据库服务器,执行sql、创建表、创建索引以及导出数据等。

下载地址:https://www.jetbrains.com.cn/datagrip/

六.其他工具

1.文本编辑工具EditPlus

在程序员的日常工作中,编辑器的使用是不可缺少的,一个好用方便的文本编辑器会在一定程度上提高工作效率。

EditPlus属于轻量级的编辑器,就小编而言,用EditPlus多些。不敢说EditPlus更好,但部分回复对EditPlus存在的说法做一些纠正。

  • editplus提供了与Internet的无缝连接,可以在EditPlus的工作范围中开启Intelnet访问窗口。
  • 提供了多工作窗口,无需转换到桌面便可在工作范围中开启好几个文档。
  • editplus默认支持HTML.CSS.PHP.ASP.Perl.C/C++.java.JavaScript和VBScript等语法突出显示,通过定制语法文档,可以扩展到别的程序语言。

2.文本编辑工具Notepad++

Notepad就是记事本,它用于文本编辑,在文字编辑方面与Windows写字板功能相当。

所见即所得功能、语法高亮、字词自动完成功能,支持同时编辑多重文档,支持自定义语言。

对于HTML网页编程代码,可直接选择在不同的浏览器中打开查看,以方便进行调试。

自动检测文件类型,根据关键字显示节点,节点可自由折叠/打开,可显示缩进引导线,使代码富有层次感。

可打开双窗口,在分窗口中又可打开多个子窗口,允许快捷切换全屏显示模式,支持鼠标滚轮改变文档显示比例。

可显示选中文本的字节数,并非普通编辑器所显示的字数。提供了一些实用工具,如邻行互换位置、宏功能等。

类似的文本编辑类的工具有很多,我现在开发做的少了,平时开会主要用一些线上的平台如幕布、有道云笔记之类的。

3.画图类的工具

这部分主要用于接收到需求做系统设计或者方案用,这类工具主要是为了理清楚思路;如Visual paradigm、OmniGraffle、ProcessOn。

Visual paradigm:Visual Paradigm for UML (VP-UML)是一款UML建模和CASE工具,产品具有建模版、标准版等功能。

OmniGraffle:OmniGraffle是由The Omni Group制作的一款绘图软件,其只能于运行在Mac OS X和iPad平台之上。OmniGraffle可以用来绘制图表,流程图,组织结构图以及插图,也可以用来组织头脑中思考的信息,组织头脑风暴的结果,绘制心智图,作为样式管理器,或设计网页或PDF文档的原型。

ProcessOn:支持绘制思维导图、流程图、UML、网络拓扑图、组织结构图、原型图、时间轴等等

我自己平时用的最多的其实是Xmind,这个看大家自己习惯吧,目的就是理清楚思路。

4.项目管理协作工具

项目管理协作工具也是我们开发过程中经常会用到的。这方面的产品也有很多:Slack、Asana、Teambition、Worktile、Towe、禅道等这部分就不一一赘述了,很早之前转载过一篇文章专门介绍过这个,大家感兴趣直接看这篇文章项目管理协作工具即可。

5.在线开发辅助工具

• BASE64编解码工具:https://base64.supfree.net/ • MD5编码工具:https://www.zxgj.cn/g/md5 • AES/DES加解密:http://www.fly63.com/tool/cipher/ • JWT解码工具:http://jwt.calebb.net/ • ASCII编解码工具:https://www.matools.com/code-convert-ascii • Unicode编解码工具:https://www.zxgj.cn/g/unicode • UTF-8编解码工具:https://www.zxgj.cn/g/utf8 • 字符串编解码工具:https://www.zxgj.cn/g/enstring

• 在线ASCII码对照表:http://www.fly63.com/tool/ascii/ • 通用进制转换工具:https://www.zxgj.cn/g/jinzhi • 在线浮点数十进制转换:http://www.binaryconvert.com/ • RGB颜色转换:https://www.zxgj.cn/g/yansezhi • 时间戳转换工具:https://www.zxgj.cn/g/unix • 计量单位换算工具:http://www.fly63.com/tool/unitable/ • 在线JSON解析:http://www.json.cn/ • 在线JS代码格式化工具:https://prettier.io/playground/ • SQL压缩/格式化工具:https://www.zxgj.cn/g/sqlformat • JSON和XML在线转换:https://www.zxgj.cn/g/jsonxml • JSON/YAML在线转换:http://www.fly63.com/tool/jsonyaml/

总结

其实开发过程中用过的各种各样的工具还有很多,只是一时间无法全部都枚举出来,后续想到其他的好用工具会持续补充到文章中,文档中涉及到的工具找不到的可以评论区留言或者私信我,希望本文对大家有所帮助。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-10-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
Redis脑裂为何会导致数据丢失?
主从集群有1个主库、5个从库和3个哨兵实例,突然发现客户端发送的一些数据丢了,直接影响业务层数据可靠性。
JavaEdge
2023/02/13
1.4K0
Redis脑裂为何会导致数据丢失?
面试系列之-Redis集群脑裂问题
是指在主从集群中,同时有两个主节点,它们都能接收写请求。而脑裂最直接的影响,就是客户端不知道应该往哪个主节点写入数据,结果就是不同的客户端会往不同的主节点上写入数据。而且严重的话,脑裂会进一步导致数据丢失;
用户4283147
2023/08/21
1.2K0
面试系列之-Redis集群脑裂问题
一线互联网大厂都是怎么面试Redis
Redis是一个使用ANSI C编写的开源、包含多种数据结构、支持网络、基于内存、可选持久性的键值对存储数据库。也是当下互联网首选的一款高性能nosql数据库。
兔云小新LM
2022/11/21
4320
一线互联网大厂都是怎么面试Redis
腾讯音乐:说说Redis脑裂问题?
Redis 脑裂问题是指,在 Redis 哨兵模式或集群模式中,由于网络原因,导致主节点(Master)与哨兵(Sentinel)和从节点(Slave)的通讯中断,此时哨兵就会误以为主节点已宕机,就会在从节点中选举出一个新的主节点,此时 Redis 的集群中就出现了两个主节点的问题,就是 Redis 脑裂问题。
磊哥
2024/04/18
1370
腾讯音乐:说说Redis脑裂问题?
腾讯音乐:说说Redis脑裂问题?
Redis 脑裂问题是指,在 Redis 哨兵模式或集群模式中,由于网络原因,导致主节点(Master)与哨兵(Sentinel)和从节点(Slave)的通讯中断,此时哨兵就会误以为主节点已宕机,就会在从节点中选举出一个新的主节点,此时 Redis 的集群中就出现了两个主节点的问题,就是 Redis 脑裂问题。
磊哥
2024/04/17
1590
redis哨兵主备切换的数据丢失问题:异步复制、集群脑裂
因为master -> slave的复制是异步的,所以可能有部分数据还没复制到slave,master就宕机了,此时这些部分数据就丢失了
HUC思梦
2020/09/03
1.2K0
第五章· Redis主从复制介绍
1)使用异步复制。 2)一个主服务器可以有多个从服务器。 3)从服务器也可以有自己的从服务器。 4)复制功能不会阻塞主服务器。 5)可以通过复制功能来让主服务器免于执行持久化操作,由从服务器去执行持久化操作即可。
DriverZeng
2022/09/26
5440
第五章· Redis主从复制介绍
Redis数据丢失问题
因为master -> slave的复制是异步的(客户端发送给redis,主节点数据同步到内存中后就返回成功了) 所以可能有部分数据还没复制到slave,master就宕机了,此时master内存中的数据也没了,这些部分数据就丢失了。
名字是乱打的
2021/12/24
3.9K0
Redis数据丢失问题
(三万字长文)面试不怂之redis与缓存大全
点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路,很肝~ 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析 作业调度中间件 Elastic-Job 源码解析 分布式事务中间件 TCC-Transaction
芋道源码
2022/03/04
3640
Redis读写分离和分布式缓存算法原理
当启动一个slave node的时候,它会发送一个PSYNC命令给master node
丁D
2022/08/12
4940
【架构师修炼之路】Redis 哨兵机制 ( Sentinel )
哨兵(Sentinel)主要是为了解决在主从复制架构中出现宕机的情况,主要分为两种情况:
一个会写诗的程序员
2019/11/12
1.1K0
初学乍练redis:复制与哨兵
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wzy0623/article/details/82500593
用户1148526
2019/05/25
5580
Redis哨兵主备切换的数据丢失问题
此时哨兵可能就会认为M宕机了,然后开启选举,将其他S切换成M。这时,集群里就会有两个M-脑裂
JavaEdge
2022/11/30
9900
Redis哨兵主备切换的数据丢失问题
Redis 学习笔记(五)高可用之主从模式
上一节提到了 Redis 的持久性,也就是在服务器实例宕机或故障时,拥有再恢复的能力。但是在这个服务器实例宕机恢复期间,是无法接受新的数据请求。对于整体服务而言这是无法容忍的,因此我们可以使用多个服务器实例,在一个实例宕机中断时,另外的服务器实例可以继续对外提供服务,从而不中断业务。Redis 是如何做的呢?Redis 做法是增加冗余副本,将一份数据同时保存在多个实例上。那么如何保存各个实例之间的数据一致性呢?Redis 采用主从库读写分离模式来保证数据副本的一致性。
归思君
2023/10/16
3730
Redis 学习笔记(五)高可用之主从模式
Redis学习三:Redis高可用之哨兵模式
Redis 的 Sentinel 系统用于管理多个 Redis 服务器(instance), 该系统执行以下三个任务:
一枝花算不算浪漫
2020/04/22
6450
Redis学习三:Redis高可用之哨兵模式
突破Java面试(23-8) - Redis哨兵主备切换的数据丢失问题
由于 master => slave的复制是异步的,所以可能有部分数据还没复制到slave,master就宕机,于是这些数据就丢失了
JavaEdge
2019/07/06
1.2K0
突破Java面试(23-8) - Redis哨兵主备切换的数据丢失问题
Redis高可用之哨兵机制实现细节
在上一篇的文章《Redis高可用全景一览》中,我们学习了 Redis 的高可用性。高可用性有两方面含义:一是服务少中断,二是数据少丢失。主从库模式和哨兵保证了服务少中断,AOF 日志和 RDB 快照保证了数据少丢失。
杨同学technotes
2022/12/20
5340
Redis高可用之哨兵机制实现细节
redis学习笔记(五)哨兵模式
前面几篇分析了redis保证高可用的一些特性,比如redis可以通过aof和rdb同步机制来保证数据的持久性,可以使用主从集群模式来保证服务的高可用。
虞大大
2021/02/24
5460
Redis 系列--06. Redis 架构
Redis 在实际使用的过程中,针对不同的场景需要对应的架构,这篇博客主要是总结 Redis 在实际在生产中遇到的架构以及各自的有点和缺点。
付威
2021/01/28
4110
Redis主从集群切换数据丢失问题如何应对
对于Redis主节点与从节点之间的数据复制,是异步复制的,当客户端发送写请求给master节点的时候,客户端会返回OK,然后同步到各个slave节点中。
用户4283147
2022/10/08
1.3K0
Redis主从集群切换数据丢失问题如何应对
推荐阅读
相关推荐
Redis脑裂为何会导致数据丢失?
更多 >
LV.3
蚂蚁科技集团股份有限公司高级软件架构师
目录
  • 前言
  • 一.开发编程工具
    • 1.Eclipse  官网地址
    • 2.MyEclipse  官网地址
    • 3.IntelliJ IDEA   官网地址
  • 二.接口调试工具
    • 1.Postman 官网地址
    • 2.Apipost 官网地址
    • 3.ApiFox 官网地址
    • 4.Charles 官网地址
  • 三.测试工具
    • 1.jmeter 官网地址
    • 2.JTest 官网地址
    • 3.JUnit 官网地址
    • 4.Arquillian官网地址
  • 四.远程连接工具
    • 1.Xshell
    • 2.SecureCRT
    • 3.FileZilla
    • 4.Putty
  • 五.数据库视图工具
    • 1.Navicat 官网地址
    • 2.MySQL Workbench 官网地址
    • 3.SQLyog 官网地址
    • 4.DataGrip
  • 六.其他工具
    • 1.文本编辑工具EditPlus
    • 2.文本编辑工具Notepad++
    • 3.画图类的工具
    • 4.项目管理协作工具
    • 5.在线开发辅助工具
  • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档