精华内容
下载资源
问答
  • Java开发实用小工具

    2018-05-22 15:04:32
    开发时使用此html工具可快速生成实体类或model文件内容,可选择是否使用hibernate注解,是否实现序列化,是否继承某个类 MD5加密 单表增删改查方法,配接口及实现类内容 ajax快速生成
  • 这是本人自己开发的一款java代码注释统计工具,支持统计总行数,总代码行数,总注释行数,注释率,注释合格率自定义,统计详细,单个文件统计情况,可导出统计报告等! 注:本软件未捆绑jre(java环境),需要在已...
  • MybatisAnnotationTools 是基于 Java8 开发的一款可以用于自动化生成 MyBatis 注解类的工具,支持配置数据源、类路径,表名去前缀、指定类名前后缀等功能.这篇文章主要介绍了Java 8 开发的 Mybatis 注解代码生成工具...
  • java开发人员必备26个开发工具类,每个方法里面都有注解,通俗易懂。
  • Java常用开发工具有哪些?

    千次阅读 2021-01-14 16:56:58
    Java常用的几个开发工具。下面这些工具或许功能和作用不同,但是有着一个共同的主旨,那就是——它们都是为了给 Java 编码和开发提供卓越的支持。 常用源码编辑工具介绍 Java源代码本质上其实就是普通的文本文件,...

    Java常用的几个开发工具。下面这些工具或许功能和作用不同,但是有着一个共同的主旨,那就是——它们都是为了给 Java 编码和开发提供卓越的支持。

    常用源码编辑工具介绍

    Java 源代码本质上其实就是普通的文本文件,所以理论上来说任何可以编辑文本文件的编辑器都可以作为我们的 Java 代码编辑工具。比如:Windows 记事本,Mac OS X 下的文本编辑,Linux 下的 vi、emacs、gedit、DOS 下的 edit 等。但是这些简单工具没有语法的高亮提示、自动完成等功能,这些功能的缺失会大大降低代码的编写效率。

    所以学习开发时一般我们不会选用这些简单文本编辑工具。我们一般会选用一些功能比较强大的类似记事本的工具,比如: Notepad++、Sublime Text、editplus、ultraedit、vim 等。下面我们分别具体介绍一下它们的优缺点,方便大家找到适合自己开发工具。

    大家可以点击文中蓝色的工具名称,直接进入官网下载。

    1)Notepad++

    Notepad++ 是 Windows 操作系统下的一套文本编辑器,有完整的中文化接口及支持多国语言编写的功能(UTF8 技术)。

    Notepad++ 优点:

    • 功能比 Windows 中的 Notepad(记事本)强大,除了可以用来制作一般的纯文字说明文件,也十分适合编写计算机程序代码。
    • 不仅有语法高亮度显示,也有语法折叠功能,并且支持宏以及扩充基本功能的外挂模组。
    • 是免费软件,可以免费使用,自带中文,支持所有主流的计算机程序语言。


    Notepad++ 缺点:

    • 比起专用的 IDE 缺少语法检查,颜色选取,代码的 outline,注释的解析,TODO,调试工具集成,部署工具集成等等好多功能。
    • 打开大文件比较慢

     

    Java开发工具Notepad++
    Notepad++

    2)EditPlus

    EditPlus 是一款由韩国 Sangil Kim (ES-Computing)出品的小巧但是功能强大的可处理文本、HTML 和程序语言的 Windows 编辑器,甚至可以通过设置用户工具将其作为 C,Java,Php 等等语言的一个简单的 IDE。

    EditPlus 优点:

    • EditPlus 界面简洁美观,且启动速度快。
    • 对中文支持比较好。
    • 支持多种日期、时间输入;支持语法高亮;支持代码折叠;支持代码自动完成。
    • 配置功能强大,且比较容易,扩展也比较强。
    • 适合编辑网页。


    EditPlus 缺点:

    • 不支持代码提示功能。
    • 不免费,收费单位美元,注册费用高
    • 功能较简单。
    • 版本更新比较慢。

    Java开发工具EditPlus
    EditPlus

    3)UltraEdit

    UltraEdit 是一套功能强大的文本编辑器,可以编辑文本、十六进制、ASCII 码,完全可以取代记事本,它是一款需要花费 49.95 美元的共享软件。

    UltraEdit 优点:

    • 提供了友好界面的编程编辑器,支持语法高亮,代码折叠和宏。
    • 内置了对于 HTML、PHP 和 js等语法的支持,可同时编辑多个文件,而且即使开启很大的文件速度也不会慢。


    UltraEdit 缺点:

    • 启动速度较慢。
    • 默认的设置中不支持 Pascal 语言。
    • 对中文支持不是很好。

    Java开发工具ultraedit
    UltraEdit

    4)Sublime Text

    Sublime Text 是由程序员 Jon Skinner 于 2008 年 1 月份所开发出来,它最初被设计为一个具有丰富扩展功能的 Vim。

    它是一款收费软件,但是可以无限期试用,它是一个跨平台的编辑器,同时支持 Windows、Linux、Mac OS X 等操作系统。

    Sublime Text 优点:

    • 主流前端开发编辑器
    • 体积较小,运行速度快
    • 文本功能强大
    • 支持编译功能且可在控制台看到输出

     

    Sublime Text
    Sublime Text

    5)Vim

    Vim 是从 Vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。是 Unix 系统用户最喜欢的文本编辑器。

    Vim 优点:

    • 支持多种操作系统
    • 打开大文件速度较快,在大文件中查找的速度也非常快。
    • 免费,开源
    • 有搜索高亮功能
    • 支持多中编辑语言
    • 功能强大


    Vim 缺点:

    • 比较难学
    • 虽然有菜单,但 Windows 用户第一次上手会很难
    • 界面不太好看
    • 键盘命令多,必须长期使用才能熟练。

     

    Java开发工具vim
    Vim

    集成开发工具介绍

    Java 初学者为了能更好的掌握 Java 代码的编写,我们一般会选用一款高级记事本类的工具作为开发工具, 而实际项目开发时,更多的还是选用集成 IDE 做为开发工具,比如当下最流行的两款工具:Eclipse、IDEA。

    所谓集成 IDE 就是把代码的编写、调试、编译、执行都集成到一个工具中了,不用单独在为每个环节使用工具。

    1)Eclipse IDE

    Eclipse 是一个开放源码的项目,是著名的跨平台的自由集成开发环境(IDE),最初主要用来 Java 语言开发,后来通过安装不同的插件 Eclipse 可以支持不同的计算机语言,比如 C++ 和 Python 等开发工具。

    Eclipse 优点:

    • 能提供关于代码完成、重构和语法检查这些急需的帮助。
    • 能提供 JDT 的一系列工具,包括各种插件工具来帮助开发各种 Java 应用。
    • 允许开发人员使用不同的语言支持,如它也可以提供 C/C++ 和 PHP 的 IDE。这使得它成为了 Java 开发的一个一站式资源。
    • Eclipse 是免费的,这点很重要,所以大多公司里依然是使用 Eclipse 这款 IDE,而且它良好的性能,也在市场占着不小的比重。


    Eclipse 缺点:

    • 版本间不兼容,特别是插件,在一个版本下可以很好工作,在另一个版本下就完全无法工作,就算两个版本的版本号只有微小的差异。
    • 与 JDK 捆绑过于紧密。当 JDK 新的版本出来后,Eclipse 一般要滞后很长一段时间才有一个新版本支持新的 JDK,然后等各个插件能在新版本的 Eclipse 下使用又要过很长时间。

     

    Java开发工具Eclipse
    图 2  Eclipse

    2)MyEclipse

    MyEclipse 是同 Eclipse 一个公司的,在功能上增加了不少,相对于 Eclipse 来说,MyEclipse 更像将 Eclipse 中好多插件都集成起来了,当然,性能上面也有更好的考虑,不过这款 IDE 是收费的。

    因 MyEclipse 属于收费软件,所以大公司很少使用。

    Java开发工具MyEclipse
    图 3  MyEclipse

    3)Intellij IDEA

    Intellij IDEA 简称 IDEA,具有美观,高效等众多特点。IDEA 是 JetBrains 公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。它的旗舰版本还支持 HTML,CSS,PHP,MySQL,Python 等。免费版只支持 Java 等少数语言。

    据传它有“最智慧的 Java ide”之称。它能帮助开发人员拿出最具有创造性的解决方案。它的“Smart Code Completion”和“On-the-fly Code Analysis”功能等可以提高开发人员的工作效率,并且还提供了对 web 和移动开发高级支持。

    IDEA 缺点:

    • 编辑超大文件不靠谱,易卡顿或直接卡死。
    • 相对于一些专用工具,显得不够专业:比如批量修改项目中的文件编码效果就很差劲。
    • 消耗大量硬件资源,IntelliJ IDEA 要求内存大,并且还要用的流畅还需要固态硬盘辅助。比如在做微服务类的项目的时候,一般需要同时启动多个项目,内存一会就上来的,8G 内存完全不够用的。

     

    Java开发工具Intellij IDEA
    图 4  Intellij IDEA

    4)NetBeans

    NetBeans 是业界第一款支持创新型 Java 开发的开放源码 IDE。开发人员可以利用业界强大的开发工具来构建桌面、Web 或移动应用。同时,通过 NetBeans 和开放的 API 的模块化结构,第三方能够非常轻松地扩展或集成 NetBeans 平台。 

    NetBeans IDE 目前支持 PHP、Ruby、JavaScript、Ajax、Groovy、Grails 和 C/C ++ 等开发语言。

    NetBeans 是甲骨文公司生产的 IDE,在其中也内置了许多功能,相对于 idea 和 Eclipse 市场还是较少的。

    NetBeans 提供了功能全面的阵列。如转换器,编辑器和代码分析器,这些工具可以帮助你使用最新的 Java 技术实现应用程序。工具范围相当广泛,而且 IDE 背后的团队也在不断地改进。此外你还可以得到静态分析工具的帮助——编写出无 bug 的代码。

    Java开发工具NetBeans
     


    在使用这些开发工具之前,我们最好能熟知这些软件的优点和缺点,以便根据实际情况选择应用。编程工具只是工具,为了方便人们工作而开发的,各有特点,因此,选工具主要的依据自己将要从事的领域是什么,而不是盲目的认为那种工具好,那种工具不好。看完这篇文章后希望大家都能找到自己合适的 Java 开发工具。

    最后

    学习不要走马观花的学,每个知识重点大纲,就是学习路线都是根据每一天市场上多数公司用到的新技术整理,在学习的时候还需要结合练习题来做这里的话我也将我之前在学习过程中用到的一些学习资料整理成了文档,以及我自身之前的一个面试文案和知识点补充,有需要的朋友可以加我的QQ群697888503这里也希望大家最终都能够学有所成,学习编程不是一天两天的功夫,勤能补拙才是硬道理,祝大家最终都能成为一名合适开发攻城狮。 

    展开全文
  • JAVA注解开发(精讲)

    万次阅读 多人点赞 2018-11-03 12:33:41
    Java注解开发 一. 什么是注解 Annotation(注解)就是Java提供了一种为程序元素关联任何信息或任何元数据(metadata)的途径和方法。Annotion(注解)是一个接口,程序可以通过反射来获取指定程序元素的Annotion对象...

    在这里插入图片描述
    Java注解开发
    一. 什么是注解
    Annotation(注解)就是Java提供了一种为程序元素关联任何信息或任何元数据(metadata)的途径和方法。Annotion(注解)是一个接口,程序可以通过反射来获取指定程序元素的Annotion对象,然后通过Annotion对象来获取注解里面的元数据。

    1. 注解出现的位置
      Annotation(注解)是JDK5.0及以后版本引入的。它可以用于创建文档,跟踪代码中的依赖性,甚至执行基本编译时检查。从某些方面看,annotation就像修饰符一样被使用,并应用于包、类型、构造方法、方法、成员变量、参数、本地变量的声明中。这些信息被存储在Annotation的“name=value”结构对中。

    2. 注解的成员提供了程序元素的关联信息(成员称为参数或注解属性)
      Annotation的成员在Annotation类型中以无参数的方法的形式被声明。其方法名和返回值定义了该成员的名字和类型。在此有一个特定的默认 语法:允许声明任何Annotation成员的默认值。一个Annotation可以将name=value对作为没有定义默认值的Annotation 成员的值,当然也可以使用name=value对来覆盖其它成员默认值。这一点有些近似类的继承特性,父类的构造函数可以作为子类的默认构造函数,但是也 可以被子类覆盖。

    3. 注解不会影响程序代码的执行
      Annotation能被用来为某个程序元素(类、方法、成员变量等)关联任何的信息。需要注意的是,这里存在着一个基本的规则:Annotation不能影响程序代码的执行,无论增加、删除 Annotation,代码都始终如一的执行。另外,尽管一些annotation通过java的反射api方法在运行时被访问,而java语言解释器在工作时忽略了这些annotation。正是由于java虚拟机忽略了Annotation,导致了annotation类型在代码中是“不起作用”的; 只有通过某种配套的工具才会对annotation类型中的信息进行访问和处理
      5、注解的作用是什么

    注解(Annotation) 为我们在代码中添加信息提供了一种形式化的方法,是我们可以在稍后 某个时刻方便地使用这些数据(通过 解析注解 来使用这些数据),常见的作用有以下几种:
    (1).生成文档。这是最常见的,也是java 最早提供的注解。常用的有@see @param @return 等;
    (2).在编译时进行格式检查。如@Override放在方法前,如果你这个方法并不是覆盖了超类方法,则编译时就能检查出;
    (3).跟踪代码依赖性,实现替代配置文件功能。比较常见的是spring 2.5 开始的基于注解配置。作用就是减少配置。现在的框架基本都使用了这种配置来减少配置文件的数量;

    二.JDK自带的注解

    1. @Override 表示当前方法覆盖了父类的方法
      此注释只适用于修辞方法,表示一个方法声明打算重写超类中的另一个方法声明。如果方法利用此注释类型进行注解但没有重写超类方法,则编译器
      会生成一条错误消息
      在这里插入图片描述
    2. @Deprecated 表示方法已经过时,方法上有横线,使用时会有警告。
      此注释可用于修辞方法、属性、类,表示不鼓励程序员使用这样的元素,通常是因为它很危险或存在更好的选择。在使用不被赞成的程序元素或在不被赞成的代码中执行重写时,编译器会发出警告
      在这里插入图片描述

    在这里插入图片描述
    3. @SuppressWarings 表示关闭一些警告信息(通知java编译器忽略特定的编译警告)
    用来抑制编译时的警告信息。与前两个注释有所不同,你需要添加一个参数才能正确使用,这些参数值都是已经定义好了的,我们选择性的使用就好了,
    参数如下:
    在这里插入图片描述
    在这里插入图片描述

    实例代码:
    在这里插入图片描述

    我们在方法上面加上 @SuppressWarnings(“rawtypes”) .这是泛型的警告就会消失.但是还有一个变量未使用的警告
    我们可以添加多种类型,多种类型用{}扩起来

    在这里插入图片描述
    另外,由于@SuppressWarnings注释只有一个参数,并且参数名为value,所以我们可以将上面一句注释简写为
    @SuppressWarnings(“unchecked”);
    同时参数value可以取多个值如:
    @SuppressWarnings(value={“unchecked”, “deprecation”})
    或@SuppressWarnings({“unchecked”, “deprecation”})。

    三.开发自定义注解

    1. 自定义注解的语法规则
      (1).使用@interface关键字定义注解,注意关键字的位置
      使用@interface自定义注解时,自动继承了java.lang.annotation.Annotation接口,由编译程序自动完成其他细节。在定义注解时,不能继承其他的注解或接口。
      (2).成员以无参数无异常的方式声明,注意区别一般类成员变量的声明
      其中的每一个方法实际上是声明了一个配置参数。方法的名称就是参数的名称
      (3).可以使用default为成员指定一个默认值,如上所示
      (4).成员类型是受限的,合法的类型包括原始类型以及String、Class、Annotation、Enumeration (JAVA的基本数据类型有8种:
      byte(字节)、short(短整型)、int(整数型)、long(长整型)、float(单精度浮点数类型)、double(双精度浮点数类型)、char(字符类型)、boolean(布尔类型)
      (5).注解类可以没有成员,没有成员的注解称为标识注解,例如JDK注解中的@Override、@Deprecation
      (6).如果注解只有一个成员,并且把成员取名为value(),则在使用时可以忽略成员名和赋值号“=” ,例如JDK注解的@SuppviseWarnings ;如果成员名 不为value,则使用时需指明成员名和赋值号"=",

    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    1. 元注解:
      何为元注解?就是注解的注解,就是给你自己定义的注解添加注解,你自己定义了一个注解,但你想要你的注解有什么样的功能,此时就需要用元注解对你的注解进行说明了。Java5.0定义了4个标准的meta-annotation类型,它们被用来提供对其它 annotation类型作说明。
      在这里插入图片描述

    2.1、@Target
    @Target说明了Annotation所修饰的对象范围:即注解的作用域,用于说明注解的使用范围(即注解可以用在什么地方,比如类的注解,方法注解,成员变量注解等等)
    注意:如果Target元注解没有出现,那么定义的注解可以应用于程序的任何元素。
    取值是在java.lang.annotation.ElementType这个枚举中规定的:
    1.CONSTRUCTOR:用于描述构造器
    2.FIELD:用于描述域
    3.LOCAL_VARIABLE:用于描述局部变量
    4.METHOD:用于描述方法
    5.PACKAGE:用于描述包
    6.PARAMETER:用于描述参数
    7.TYPE:用于描述类、接口(包括注解类型) 或enum声明
    实例代码
    在这里插入图片描述

    2.2 @Retention
    @Retention定义了该Annotation被保留的时间长短:
    (1)某些Annotation仅出现在源代码中,而被编译器丢弃;
    (2)而另一些却被编译在class文件中;编译在class文件中的Annotation可能会被虚拟机忽略,
    (3)而另一些在class被装载时将被读取(请注意并不影响class的执行,因为Annotation与class在使用上是被分离的)。
    使用这个meta-Annotation可以对 Annotation的“生命周期”限制。
    @Retention的取值是在RetentionPoicy这个枚举中规定的
    1.SOURCE:在源文件中有效(即源文件保留)
    2.CLASS:在class文件中有效(即class保留)
    3.RUNTIME:在运行时有效(即运行时保留)

    实例代码如下:

    在这里插入图片描述
    注意:注解的的RetentionPolicy的属性值是RUTIME,这样注解处理器可以通过反射,获取到该注解的属性值,从而去做一些运行时的逻辑处理

    2.3、@Documented
    @Documented用于描述其它类型的annotation应该被作为被标注的程序成员的公共API,因此可以被例如javadoc此类的工具文档化。Documented是一个标记注解,没有成员。

    2.4、@Inherited
    @Inherited 元注解是一个标记注解,@Inherited阐述了某个被标注的类型是被继承的。如果一个使用了@Inherited修饰的annotation类型被用于一个class,则这个annotation将被用于该class的子类。
    注意:@Inherited annotation类型是被标注过的class的子类所继承。类并不从它所实现的接口继承annotation,方法并不从它所重载的方法继承annotation。
    当@Inherited annotation类型标注的annotation的Retention是RetentionPolicy.RUNTIME,则反射API增强了这种继 承性。如果我们使用java.lang.reflect去查询一个@Inherited annotation类型的annotation时,反射代码检查将展开工作:检查class和其父类,直到发现指定的annotation类型被发现, 或者到达类继承结构的顶层。
    (1) 定义注解1
    在这里插入图片描述
    (2) 定义注解2
    在这里插入图片描述

    (3) 定义一个基类
    在这里插入图片描述
    (4) 定义一个子类
    在这里插入图片描述
    (5) 通过反射获取子类中使用的所有的注解
    在这里插入图片描述

    四.注解开发实例:通过注解创建数据库表

    1. 创建Column注解,表示数据库中的字段信息
      在这里插入图片描述

    2. 创建Table注解,表示数据库中的表
      在这里插入图片描述

    3. 创建JavaBen类,使用定义的注解

    在这里插入图片描述

    1. 创建Main方法,读取JavaBen类中的注解信息,根据注解信息自动生成DDL语句

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述*****************************


    1.Java中的注释类型Annotation是一种引用数据类型,也称为注解。*

    自定义注释的开发过程。
    no.1.声明一个类My Annotation
    no.2.把class 关键字改成 @interface,实质上声明了一个接口,这个接口自动的继承了Java.lang.annotation.Annotation接口。

    2.常用内置注解: @Override @Deprecated @SuppressWarnings,以及它们各自的作用。*

       @Deprecated,表示这个方法过时了,最好别用了  @Override表示方法重写,或者覆盖。
       @SuppressWarnings让编译器忽略警告信息。 (@suppressWarnings({rawtypes}))
       @suppressWarnings(value = {rawtypes})//泛型
    

    3.自定义注解的时候,这几个注解你知道分别是干什么的吗? @Retention @Target @Inherited @Documented*

    no1. //@Target元注解是用来限定自定义注解的使用范围的。
    @Target说明了Annotation所修饰的对象范围:即注解的作用域,
    用于说明注解的使用范围(即注解可以用在什么地方,比如类的注解,方法注解,成员变量注解等等)
    注意:如果Target元注解没有出现,那么定义的注解可以应用于程序的任何元素。
    @Target取值是在java.lang.annotation.ElementType这个枚举中规定的:
    //@Target({ ElementType.TYPE }) // 规定了自定义注解的使用范围是:只能在类型上面使用
    @Target({ ElementType.TYPE, ElementType.METHOD }) // 规定了自定义注解的使用范围是:可以在类型上面使用,也可以在方法上面使用
    @Retention(RetentionPolicy.RUNTIME) // 注解信息在运行时保留

    public @interface MyAnnotation {
    int age();

    String name();
    
    String schoolName() default "动力节点";
    

    }
    no2.@Retention定义了该Annotation被保留的时间长短:
    // (1)某些Annotation仅出现在源代码中,而被编译器丢弃;
    // (2)而另一些却被编译在class文件中;编译在class文件中的Annotation可能会被虚拟机忽略,运行时被忽略
    // (3)而另一些在class被装载时将被读取(请注意并不影响class的执行,因为Annotation与class在使用上是被分离的)。
    // 使用这个meta-Annotation可以对 Annotation的“生命周期”限制。
    // @Retention的取值是在RetentionPoicy这个枚举中规定的
    // 1.SOURCE:在源文件中有效(即源文件保留)
    // 2.CLASS:在class文件中有效(即class保留)
    // 3.RUNTIME:在运行时有效(即运行时保留,注意:只有注解信息在运行时保留,我们才能在运行时通过反射读取到注解信息)
    // 注解的保留范围,只能三选一

    no3.@Documented保存文件的

    no4.@Inherit父类中使用的注解可以被子类继承.

    自定义注解实际上就是一种类型而已,也就是引用类型(Java中除了8种基本类型之外,我们见到的任何类型都是引用类型)
    类型的作用:(1)声明变量;(2)声明方法的参数;(3)声明方法的返回类型;(4)强制类型转换
    因为我们在注解中声明了属性,所以在使用注解的时候必须要指明 属性值 ,多个属性之间没有顺序,多个属性之间通过逗号分隔
    4.能够通过反射机制读取注解吗?*

    package com.bjpowernode.annotationtest10;

    import java.lang.reflect.Field;

    public class ReflectTest {

    /**
     * 通过反射操作,获取类中携带的注解信息.根据读取到的信息生成数据库的建表语句
     * 
     * @return
     */
    public static String buildSql() {
    
    	// 准备数据库的建表语句
    	StringBuilder str = new StringBuilder("CREATE TABLE ");
    
    	// 获取Emp类对应的Class对象
    	Class claz = Emp.class;
    
    	// =============================================================
    	// 一.获取Emp类中携带的@Table注解,以此来获取表名信息
    
    	// (1)获取Emp类中携带的Table注解
    	Table table = (Table) claz.getAnnotation(Table.class);
          System.out.println(table);
    	// (2)获取Table注解中的的属性信息
    	String tableName = table.tableName();// 获取表名信息
            System.out.println(tableName);
    	// (3)把表名信息拼接到SQL语句中
    	str.append(tableName + " (");
    
    	// =============================================================
    	// 二:获取Emp类中携带的Column注解,来获取字段的相关信息
    
    	// (1)获取类中声明的所有的属性
    	Field[] fields = claz.getDeclaredFields();
    
    	// (2)遍历保存所有属性的Field的数组,取出每个属性
    	for (Field field : fields) {
    
    		// (3)判断属性中是否使用了Column注解
    		if (field.isAnnotationPresent(Column.class)) {
    			// (4)获取属性中使用的Column注解
    			Column column = field.getAnnotation(Column.class);
    
    			// (5)获取注解中携带的字段信息
    			String columnName = column.columnName(); // 获取字段名信息
    			String columnType = column.columnType(); // 获取字段类型信息
    			int columnLength = column.columnLength(); // 获取字段长度信息
    			String columnConstraint = column.columnConstraint(); // 获取字段约束信息
    
    			// (6)把字段的相关信息拼接到SQL语句中
    			if (columnName.equalsIgnoreCase("hiredate")) {
    				str.append(columnName + " " + columnType + " " + columnConstraint + ",");
    		  System.out.println(str);
    				 System.out.println();
    			}    else {
    				
    				str.append(columnName + " " + columnType + " (" + columnLength + ") " + columnConstraint + ",");
    				System.out.println(str);
    			}
    		}
    	}
    
    	// 去除SQL中最末尾的逗号,并且关闭SQL语句中的()
    	String sql = str.substring(0, str.length() -1) + ")";//截取字符串语句。
    	return sql;
    }
    
    public static void main(String[] args) {
    	String sql = buildSql();
     	System.out.println(sql);
    }
    

    }

    5.java中的Annotation/注释类型,它有什么用?*

    是为了在其他类中使用这个注释(使用注解来携带信息),这些携带信息可以在其他类的任何位置使用
    从某些方面来看,annotatiom就像是一个修饰符一样来使用 ,并用于包,类型,方法,构造方法,成员变量,参数,本地变量声明中。
    必须要和反射一起操作。【通过class 获取类的相关信息,通过class创建对象,通过class调用对象的方法和属性,这种操作称为反射操作。】

    要想执行反射操作,必须先获取指定类名的class。
    eg.String.class
    class.forname("字符串")
    String obj="Hello",Class claz = obj.getClass()
    
    
    
    6. 注解中声明属性的语法比较怪异,即像在Java类中声明属性,又像在Java类中声明方法(实际上:即是声明了属性,又是声明了方法)
      注解中声明属性的规范: 属性类型 属性名称 ();
      属性名称的规范:名词或名词性短语,第一个单词首字符小写,其余单词首字符大写
    
    
    
      在使用注解的时候,通过注解中的属性来携带信息
    

    因为我们在注解中声明了属性,所以在使用注解的时候必须要指明属性值,多个属性之间没有顺序,多个属性之间通过逗号分隔

    7.可以给注解中的属性提供缺省值
    // 我们可以在注解中声明属性.(在注解中通过属性来携带信息)
    
        public @interface MyAnnotation {
    // 注解中声明属性的语法比较怪异,即像在Java类中声明属性,又像在Java类中声明方法(实际上:即是声明了属性,又是声明了方法)
    // 注解中声明属性的规范: 属性类型 属性名称 ();
    // 属性名称的规范:名词或名词性短语,第一个单词首字符小写,其余单词首字符大写
    int age();
    
    String name();
    
    // 可以给注解中的属性提供缺省值
    String schoolName() default "动力节点";
    
    int  [] arr() ;
    
    8.如果注解中只有一个属性,并且属性名称是value,这样的话我们使用注解的时候,可以指明属性名称,也可以忽略属性名称
        
     
     @MyAnnotation(value = { "Hello", "World" })
           public class Main {
    
    @MyAnnotation({ "Hello", "World" })
    public static void main(String[] args) {
    
    }
    
    	package com.bjpowernode.annotation8;
    
             public @interface MyAnnotation {
           String[] value();
          }  
    

    9.方法重写要求访问权限不能降低,
    priority : private 私有的,访问权限最低
    default默认的
    protected 受保护的 父子关系中常用
    public 访问权限最高。

    也不能抛出比父类更多的异常。 exceotion
    IO exception
    file not found

    10.现实中的一个实体对应着一个数据库表;一个数据库表会对应着一个Java类;
    实体中的属性成为表中的字段;表中的字段对应着类中的属性

    和数据库表对应着的类称为JavaBean类,JavaBean的规范
    1.类中的属性私有化,并且提供公开的getter/settter()方法
    2.类中覆盖toString()方法 (为了输出对象做好了准备)
    3.类中覆盖hashCode()/equals()方法(覆盖hashCode()/equals()的目的是为了把JavaBean类的对象放到HashMap/HashSet中做好准备)
    4.类中提供公开的无参数的构造方法
    5.该类要实现Serialiazble接口,并且声明serialVersionUID(使用Eclipse工具生成的) 为序列化做好了准备

    我们要执行的功能,根据一个写好的JavaBean类,自动的生成数据库的建表语句(DDL)
    创建数据库表所需要的信息:
    (1)表名信息
    (2)字段的信息,包括 字段名称,字段类型,字段长度,字段约束

    我们如何来携带上面的建表所需要的信息呢?使用注解!
    1.为了在JavaBean类中携带表名信息,我们创建一个@Table的注解,这个注解在类型上面使用,因为一个JavaBean类对应一个表
    2.为了在JavaBean类中携带字段信息,我们创建一个@Column的注解,这个注解在类的属性中使用;因为类的属性对应着表中的字段

    注解在实际开发中的作用
    使用注解在类中携带信息,程序运行的时候通过反射操作获取到注解信息,然后根据获取到的信息生成数据库的建表语句

    程序中携带信息的方式
    1.通过注解来携带信息,然后通过反射来读取信息
    2.通过文件来携带信息,然后通过IO来读取信息

    展开全文
  • 本项目提供基于注解的方式,并内置了常见的脱敏方式,便于开发。 用户也可以基于自己的实际需要,自定义注解。 日志脱敏 为了金融交易的安全性,国家强制规定对于以下信息是要日志脱敏的: 用户名 手机号 邮箱 银行...
  • api-doc 文档生成工具 java开发,根据代码自动生成api接口文档工具,支持RESTful风格 预览版 该工具的优势 文档自动生成,减少文档维护的时间和成本 支持复杂的接口请求参数或响应参数,...Java开发时,使用注解把文
  • JAVA中十四种常见开发工具及其特点

    千次阅读 2020-04-28 20:22:37
    1、JDK (Java Development Kit)Java开发工具集 SUN的Java不仅提了一个丰富的语言和运行环境,而且还提了一个免费的Java开发工具集(JDK)。开发人员和最终用户可以利用这个工具来开发java程序。  JDK简单易学,...

    1、JDK (Java Development Kit)Java开发工具集

          SUN的Java不仅提了一个丰富的语言和运行环境,而且还提了一个免费的Java开发工具集(JDK)。开发人员和最终用户可以利用这个工具来开发java程序。

      JDK简单易学,可以通过任何文本编辑器(如:Windows 记事本、UltrEdit、Editplus、FrontPage以及dreamweaver等)编写Java源文件,然后在DOS状况下利通过javac命令将Java源程序编译成字节码,通过Java命令来执行编译后的Java文件,这能带给DOS时代程序员美好的回忆。Java 初学者一般都采用这种开发工具。
      从初学者角度来看,采用JDK开发Java程序能够很快理解程序中各部分代码之间的关系,有利于理解Java面向对象的设计思想。JDK的另一个显著特点是随着Java (J2EE、J2SE以及J2ME)版本的升级而升级。但它的缺点也是非常明显的就是从事大规模企业级Java应用开发非常困难,不能进行复杂的Java软件开发,也不利于团体协同开发。

    2、Java Workshop     

          Sun MicroSystems公司于推出了Java WorkShop 1.0,这是业界出现的第一个供Internet网使用的多平台开发工具,它可以满足各公司开发Internet和Intranet网应用软件的需要。Java WorkShop完全用Java语言编写,是当今市场上销售的第一个完全的Java开发环境,目前Java WorkShop的最性版本是3.0。Java Workshop的特点表现如下:

      1)结构易于创建:在创建平台中立的网格结构方面,Java Workshop比其他任何一种Java开发工具都要方便。

      2)可视化编程:Java Workshop的可视化编程特性是很基本的。Java Workshop允许程序员重新安排这些操作,甚至可以确定触发操作行为的过滤器。Java Workshop产生的模板带有许多注释,这对程序员是很有帮助的。

      此外,Java WorkShop支持JDK以及JavaBeans组件模型,API和语言特征增加了编译Java应用程序的灵活性。 Java WorkShop开发环境由于完全用Java写成,所以可移植性极好,以致于多个平台都能支持,目前Java WorkShop支持Solaris操作环境SPARC及Intel 版)、Windows95、WindowsNT、以及HP/Ux等平台。适合于初学者进行一些简单的Java编程。Java WorkShop的缺点是Java Workshop中的每一个可视化对象都迟早会用到网格布局,这种设计方法是许多人不习惯的;Java Workdshop的调色板是较差的,仅仅能满足绝大部分应用的基本要求。

    JAVA学习交流和资源分享,网站及路线图等其他问题,进入社区【点我进入】

    3NetBeans Sun Java Studio 5 

                                                         

          是开放源码的Java集成开发环境(IDE),适用于各种客户机和Web应用。Sun Java Studio是Sun公司最新发布的商用全功能Java IDE,支持Solaris、Linux和Windows平台,适于创建和部署2层Java Web应用和n层J2EE应用的企业开发人员使用。 
      NetBeans是业界第一款支持创新型Java开发的开放源码IDE。开发人员可以利用业界强大的开发工具来构建桌面、Web或移动应用。同时,通过NetBeans和开放的API的模块化结构,第三方能够非常轻松地扩展或集成NetBeans平台。 
      NetBeans主要针对一般Java软件的开发者,而Java One Studio5则主要针对企业做网络服务等应用的开发者。Sun不久还将推出Project Rave,其目标是帮助企业的开发者进行软件开发。

    NetBeans

         NetBeans 版本与其他开发工具相比,最大区别在于不仅能够开发各种台式机上的应用,而且可以用来开发网络服务方面的应用,可以开发基于J2ME的移动设备上的应用等。在NetBeans 3.5.1基础上,Sun开发出了Java One Studio5,为用户提供了一个更加先进的企业编程环境。在新的Java One Studio5里有一个应用框架,开发者可以利用这些模块快速开发自己在网络服务方面的各种应用程序。  

    4、Borland 的JBuilder 

         Jbuilder进入了Java集成开发环境的王国,它满足很多方面的应用,尤其是对于服务器方以及EJB开发者们来说。下面简单介绍一下Jbuilder的特点: 


      1)Jbuilder支持最新的Java技术,包括Applets、JSP/Servlets、JavaBean以及EJB(Enterprise JavaBeans)的应用。

      2)用户可以自动地生成基于后端数据库表的EJB Java类,Jbuilder同时还简化了EJB的自动部署功能.此外它还支持CORBA,相应的向导程序有助于用户全面地管理IDL(分布应用程序所必需的接口定义语言Interface Definition Language)和控制远程对象。

      3)Jbuilder支持各种应用服务器。Jbuilder与Inprise Application Server紧密集成,同时支持WebLogic Server,支持EJB 1.1和EJB 2.0,可以快速开发J2EE的电子商务应用。

      4)Jbuilder能用Servlet和JSP开发和调试动态Web 应用。

      5)利用Jbuilder可创建(没有专有代码和标记)纯Java2应用。由于Jbuilder是用纯Java语言编写的,其代码不含任何专属代码和标记,它支持最新的Java标准。

      6)Jbuilder拥有专业化的图形调试介面,支持远程调试和多线程调试,调试器支持各种JDK版本,包括J2ME/J2SE/J2EE。

      JBuilder环境开发程序方便,它是纯的Java 开发环境,适合企业的J2EE开发;缺点是往往一开始人们难于把握整个程序各部分之间的关系,对机器的硬件要求较高,比较吃内存,这时运行速度显得较慢。


    5、Oracle 的JDeveloper 

          Oracle9i JDeveloper(定为9.0版,最新为10g)为构建具有J2EE功能,XML和Web services的复杂的,多层的Java应用程序提供了一个完全集成的开发环境。它为运用Oracle9i数据库和应用服务器的开发人员提供特殊的功能和增强性能,除此以外,它也有资格成为用于多种用途Java开发的一个强大的工具。

      Oracle9i JDeveloper的主要特点如下:

      ① 具有UML(Unified Modeling Language,一体化建模语言)建模功能。可以将业务对象及e-business应用模型化。

      ② 配备有高速Java调试器(Debuger)、内置Profiling工具、提高代码质量的工具“CodeCoach”等。

      ③ 支持SOAP(Simple Object Access Protocol)“简单对象访问协议”、UDDI(Universal Description, Discovery and Integration)“统一描述、发现和集成协议”、WSDL(Web Services Description Language)“WEB服务描述语言”等Web服务标准。

      JDeveloper 不仅仅是很好的 Java 编程工具,而且是 Oracle Web 服务的延伸,支持 Apache SOAP,以及 9iAS ,可扩充的环境和 XML 和 WSDL 语言紧密相关。Oracle9i Jdeveloper完全利用Java编写,能够与以前的Oracle服务器软件以及其他厂商支持J2EE的应用服务器产品相兼容,而且在设计时着重针对Oracle9i,能够无缝化跨平台之间的应用开发,提供了业界第一个完整的、集成了J2EE和XML的开发环境,允许开发者快速开发可以通过Web、无线设备及语音界面访问的Web服务和交易应用,以往只能通过将传统Java编程技巧与最新模块化方式结合到一个单一集成的开发环境中之后才能完成J2EE应用开发生命周期管理的事实,从根本上得到改变。缺点就是对于初学者来说,较复杂,也比较难。

    6、IBM的Visual Age for Java 

          Visual Age for Java是一个非常成熟的开发工具,它的特性以于IT开发者和业余的Java编程人员来说都是非常用有用的。它提供对可视化编程的广泛支持,支持利用CICS连接遗传大型机应用,支持EJB的开发应用,支持与Websphere的集成开发,方便的bean创建和良好的快速应用开发(RAD)支持和无文件式的文件处理。

      IBM为建设Web站点所推出的WebSphere Studio Advanced Edition及其包含的VisualAge for Java Professional Edition软件已全面转向以Java为中心,这样,Java开发人员对WebSphere全套工具的感觉或许会好了许多。Studio所提供的工具有:Web站点管理、快速开发 JDBC页向导程序、HTML编辑器和HTML语法检查等。这确实是个不错的HTML站点页面编辑环境。Studio和VisualAge集成度很高,菜单中提供了在两种软件包之间快速移动代码的选项。这就让使用Studio的Web页面设计人员和使用VisualAge的Java程序员可以相互交换文件、协同工作。

      Visual Age for Java支持团队开发,内置的代码库可以自动地根据用户做出改动而修改程序代码,这样就可以很方便地将目前代码和早期版本做出比较。与Visual Age紧密结合的Websphere Studio本身并不提供源代码和版本管理的支持,它只是包含了一个内置文件锁定系统,当编辑项目的时候可以防止其他人对这些文件的错误修改,软件还支持诸如Microsoft Visual SourceSafe这样的第三方源代码控制系统。Visual Age for Java完全面向对象的程序设计思想使得开发程序非常快速、高效。你可以不编写任何代码就可以设计出一个典型的应用程序框架。Visual Age for Java作为IBM电子商务解决方案其中产品之一,可以无缝地与其他IBM产品,如WebSphere、DB2融合, 迅速完成从设计、开发到部署应用的整个过程。

      Visual Age for Java独特的管理文件方式使其集成外部工具非常困难,你无法让Visual Age for Java与其他工具一起联合开发应用。

    7、BEA 的 WebLogic Workshop 

          BEA WebLogic Workshop是一个统一、简化、可扩展的开发环境,使所有的开发人员都能在 BEA WebLogic Enterprise Platform之上构建基于标准的企业级应用,从而提高了开发部门的生产力水平,加快了价值的实现。

      WebLogic Workshop除了提供便捷的Web服务之外,它能够用于创建更多种类的应用。作为整个BEA WebLogic Platform的开发环境。不管是创建门户应用、编写工作流、还是创建Web应用,Workshop 8.1都可以帮助开发人员更快更好地完成。

      WebLogic Workshop的主要特点如下:

      ① 使 J2EE 开发切实可行,提高开发效率

      BEA WebLogic Workshop 使开发人员远离 J2EE 内在的复杂性,集中精力专注业务逻辑,无须操心单调乏味的基础结构代码。这种创新意味着,已被企业验证的 J2EE 的强大功能,最终被大多数不熟悉 Java 和 J2EE 的应用开发人员所掌握,从而使 IT 部门的工作效率提高一个数量级。

      可视化设计器以及直观的概念,如事件、属性和控件等,实现了基于事件的开发。Workshop 简化的程序设计模型,使开发人员不必掌握复杂的 J2EE API 和面向对象的程序设计原理。所有开发人员,包括 J2EE 专家和具有可视化和过程化语言技能的应用开发人员在内,都可以共同工作在 BEA WebLogic Enterprise Platform 之上。Workshop 的可视化开发环境,创建带有代码注释的标准 Java 文件,用来说明由运行时框架实施的企业级需求。J2EE 和其他高级开发人员,借助功能强大的代码编辑功能,可以访问 Java 源代码,从而弥补了可视化设计器的不足。

      ② 构建企业级应用

      通过在可伸缩、安全可靠的企业级架构上实施各种应用,BEA WebLogic Workshop 大大降低了开发风险。而且,所有应用的创建都使用标准的 J2EE 组件,既保护了您的技术投资,又保持了最大的灵活性。
    BEA WebLogic Workshop 运行框架,是统一整个架构的汇聚层,使单一、简化的程序设计模型扩展到所有的 BEA WebLogic Enterprise Platform 应用类型。通过解释设计时创建的注释代码,运行时框架可以实现必要的 J2EE 组件,并且提取出与 J2EE 应用开发有关的所有底层细节。

      ③ 降低 IT 复杂性

      BEA WebLogic Workshop 提供各种 Java 控件,使得与 IT 资源的连接更轻而易举。另外,在构建任何 BEA WebLogic Platform 的应用中,Java 控件不仅可扩展而且完全相同。这种强大、有效的方法能够:降低 IT 技术的复杂性,优化信息的可用性,推动包含"最佳业务方案"的可重用服务的开发,使开发人员能以更低的成本、更短的时间实现更大的产出。

      利用 BEA WebLogic Workshop,任何开发人员都能以最大的生产效率,构建各种 Web 服务、Web 应用、门户和集成项目。BEA WebLogic Workshop是BEA的产品战略核心,它帮助客户接触和利用面向服务架构(SOA)的强大功能。BEA Weblogic Workshop 8.1极大简化了当前实际企业集成环境中企业级应用和服务的构建,并成为全面支持关键企业级应用(如异步、真正松耦合和粗粒度消息传送等)的自然选择。它的缺点就是过于复杂,对于初学者来说,理解起来较为困难。

    8、WebGain 的Visual Cafe for Java 

           是只能在Symantec公司的Java虚拟机、Netscape公司的Java虚拟机和Microsoft虚拟机上工作的调试器。这对于开发者来讲是一个重要的特性,因为用户开发的Java代码中的许多软件bug就可能中会在某种特定的虚拟机上起作用。
      在修改后进行编译基继续进行调试时,Visual Cafe会自动将文件存盘,使用Visual Cafe创建的原生应用具有许多特点。除了明显的速度提高之外,Symantec使类库的二进制方式比正常的JDK小Visual Cafe为所指定的关系自动生成或更新必要的Java代码。利用Visual Cafe,用户可以从一个标准对象数据库中集合完整的Java应用程序和Applet,而不必再编写源代码。Visual Cafe还提供了一个扩充的源代码开发工具集。 
      Visual Cafe综合了Java软件的可视化源程序开发工具,它允许开发人员在可视化视图和源视图之间进行有效地转换。在可视化视图中进行的修改立即反映在源代码中。对源代码的改变自动更新可视化视图。
      Visual Cafe具有许多源文件方面的特性,如全局检索和替换。绝大多数Java开发工具的文献的问题在于简单地挨个介绍开发工具的每部分组件,但用户在开应用时还需要一个面向任务的手册,利用这个手册你可以不必知道工具每一部分的特定功能就可以开始创建自己的应用。Visual Cafe提供了非常全面的用户指南,它对最开始的安装到创建第一个Java应用和Applet都提供了全面的帮助,Visual Cafe将自动生成所指明关系的必要Java代码。Visual Cafe可以在Windows 95和Windows NT平台下运行,Symantec公司为Java开发工作提供一个在Macintosh操作系统下可以运行的RAD工具。Visual Cafe编译器速度很快,在国际化支持方面比较突出;缺点就是对于初学者来说,较复杂,也比较难。

    Visual Cafe

    9、Macromedia的JRUN 

              Macromedia公司的JRun是一个具有最广阔适用性的Java引擎,用于开发及实施由Java Servlets和JavaServer Pages编写的服务器端Java应用。JRun是第一个完全支持JSP 1.0 规格书的商业化产品,全球有超过80,000名开发人员使用JRun在他们已有的Web服务器上添加服务器端Java的功能。其中Web服务器包括了Microsoft IIS,Netscape Enterprise Server,Apache等。

      JRun是开发实施服务器端Java的先进引擎。如果我们希望在我们的Web应用中添加服务器端Java功能,那么JRun将成为我们的正确选择。 

      JRun目前有3个版本,它是第一个支持Java Server Pages(JSP)规格书1.0的商业化产品。JSP是一种强大的服务器端技术,它是用于创建复杂Web应用的一整套快速应用开发系统。JRun可以使我们开始开发并测试Java应用。它最多接受5个并发的连接并且包括全部Java Servlet API,支持JavaServer Pages(JSP),支持所有主要的Web servers和计算机平台。 JRun Pro能够在生产环境下承受大访问量的负载,帮助我们实施应用、服务或Web站点(包括内联网)。JRun Pro 支持无限量并发式连接运行多个Java虚拟机,包括多个并发的Java虚拟机(JVM)。提供一个远程管理applet以及一个远程可再分布式的管理applet。JRun Pro Unlimited包括了所有JRun Pro的功能,除次以外,还可以运行无限量的,并发的JVM。

      JRun依靠其内置的JRun Web Server可以单独运行。使用服务器端Java,用户可以开发出复杂的商业应用系统。最重要的一点是,由于servlets的平台独立性,以及更加简单的开发、更快速的实施、更经济的维护成本,它是CGI(Common Gateway Interface)或Perl scripts的极佳的替代产品。缺点就是对于初学者来说,较复杂,也比较难。

    10、JCreator 

          是一个Java程序开发工具,也是一个Java集成开发环境(IDE)。无论你是要开发Java应用程序或者网页上的Applet元件都难不倒它。在功能上与Sun公司所公布的JDK等文字模式开发工具相较之下来得容易,还允许使用者自订义操作窗口界面及无限Undo/Redo等功能。

      JCreator为用户提供了相当强大的功能,例如项目管理功能,项目模板功能,可个性化设置语法高亮属性、行数、类浏览器、标签文档、多功能编绎器,向导功能以及完全可自定义的用户界面。通过JCreator,我们不用激活主文档而直接编绎或运行我们的JAVA程序。

      JCreator能自动找到包含主函数的文件或包含Applet的Html文件,然后它会运行适当的工具。在JCreator中,我们可以通过一个批处理同时编绎多个项目。JCreator的设计接近Windows界面风格,用户对它的界面比较熟悉。其最大特点是与我们机器中所装的JDK完美结合,是其它任何一款IDE所不能比拟的。它是一种初学者很容易上手的java开发工具,缺点是只能进行简单的程序开发,不能进行企业J2EE的开发应用。

    JCreator 

    11、Microsoft VJ++ 

        Visual J++ 是Microsoft 公司推出的可视化的Java 语言集成开发环境(IDE),为Java 编程人员提供了一个新的开发环境,是一个相当出色的开发工具。无论集成性、编译速度、调试功能、还是易学易用性,都体现了Microsoft 的一惯风格。Visual J++ 具有下面的特点:

      1)Visual J++ 把Java 虚拟机(JVM)作为独立的操作系统组件放入Windows,使之从浏览器中独立出来。

      2)Microsoft 的应用基本类库(AFC,Application Foundation Class Library)对SUN 公司的JDK 作了扩展,使应用基本类库更加适合在Windows 下使用。

      3) Visual J++ 的调试器支持动态调试,包括单步执行、设置断点、观察变量数值等。

      4) Visual J++ 提供了一些程序向导(Wizards)和生成器(Builders),它们可以方便地帮助用户快速地生成Java 程序,帮助你在自己的工程中创建和修改文件。

      5) Visual J++ 界面友好,其代码编辑器具有智能感知、联机编译等功能,使程序编写十分方便。Visual J++ 中建立了Java 的WFC,这一新的应用程序框架能够直接访问Windows 应用程序接口(API),使你能够用Java 语言编写完全意义上的Windows 应用程序。

      6)Visual J++ 中表单设计器的快速应用开发特性使用WFC 创建基于表单的应用程序变得轻松、简单。通过WFC 可以方便地使用ActiveX 数据对象(ADO,ActiveX Data Objects)来检索数据和执行简单数据的绑定。通过在表单设计器中使用ActiveX 数据对象,可以快速地在表单中访问和显示数据。

      Visual J++能结合微软的一贯的编程风格,很方便进行Java 的应用开发,但它的移植性较差,不是纯的Java 开发环境。 

    12、Eclipse 

       Eclipse是一种可扩展的开放源代码IDE。2001年11月,IBM公司捐出价值4,000万美元的源代码组建了Eclipse联盟,并由该联盟负责这种工具的后续开发。集成开发环境(IDE)经常将其应用范围限定在“开发、构建和调试”的周期之中。为了帮助集成开发环境(IDE)克服目前的局限性,业界厂商合作创建了Eclipse平台。Eclipse允许在同一IDE中集成来自不同供应商的工具,并实现了工具之间的互操作性,从而显著改变了项目工作流程,使开发者可以专注在实际的嵌入式目标上。

      Eclipse框架的这种灵活性来源于其扩展点。它们是在XML中定义的已知接口,并充当插件的耦合点。扩展点的范围包括从用在常规表述过滤器中的简单字符串,到一个Java类的描述。任何Eclipse插件定义的扩展点都能够被其它插件使用,反之,任何Eclipse插件也可以遵从其它插件定义的扩展点。除了解由扩展点定义的接口外,插件不知道它们通过扩展点提供的服务将如何被使用。 

      利用Eclipse,我们可以将高级设计(也许是采用UML)与低级开发工具(如应用调试器等)结合在一起。如果这些互相补充的独立工具采用Eclipse扩展点彼此连接,那么当我们用调试器逐一检查应用时,UML对话框可以突出显示我们正在关注的器件。事实上,由于Eclipse并不了解开发语言,所以无论Java语言调试器、C/C++调试器还是汇编调试器都是有效的,并可以在相同的框架内同时瞄准不同的进程或节点。 
      Eclipse的最大特点是它能接受由Java开发者自己编写的开放源代码插件,这类似于微软公司的Visual Studio和Sun微系统公司的NetBeans平台。Eclipse为工具开发商提供了更好的灵活性,使他们能更好地控制自己的软件技术。Eclipse联盟已经宣布将在2004年中期发布其3.0版软件。这是一款非常受欢迎的java开发工具,这国内的用户越来越多,实际上实用它java开发人员是最多的。缺点就是较复杂,对初学者来说,理解起来比较困难。 

    13、Ant 

         Another Neat Tool(Ant)是一种基于Java的build工具。理论上来说,它有些类似于(Unix)C中的make ,但没有make的缺陷。因为Ant的原作者在多种(硬件)平台上开发软件时,无法忍受这些工具的限制和不便。类似于make的工具本质上是基于shell(语言)的:他们计算依赖关系,然后执行命令(这些命令与你在命令行敲的命令没太大区别)。这就意味着你可以很容易地通过使用OS特有的或编写新的(命令)程序扩展该工具;然而,这也意味着你将自己限制在了特定的OS,或特定的OS类型上,如Unix。Ant就不同了。与基于shell命令的扩展模式不同,Ant用Java的类来扩展。(用户)不必编写shell命令,配置文件是基于XML的,通过调用target树,就可执行各种task。每个task由实现了一个实现了特定Task接口的对象来运行。

      Ant支持一些可选task,一个可选task一般需要额外的库才能工作。可选task与Ant的内置task分开,单独打包。这个可选包可以从你下载Ant的同一个地方下载。ANT本身就是这样一个流程脚本引擎,用于自动化调用程序完成项目的编译,打包,测试等。除了基于JAVA是平台无关的外,脚本的格式是基于XML的,比make脚本来说还要好维护一些。Ant是Apache提供给Java开发人员的构建工具,它可以在Windows OS和Unix OS下运行,它不仅开放源码并且还是一个非常好用的工具。Ant是Apache Jakarta中一个很好用的Java开发工具,Ant配置文件采用XML文档编写,所以Java程序员对其语法相当熟悉,Ant是专用于Java项目平台,能够用纯Java来开发,它能够运行于Java安装的平台,即体现了它的跨平台功能。它的缺点显示执行结果只能是DOS字符界面,不能进行复杂的java程序开发。

     

    14、IntelliJ 

          Intellij IDEA是一款综合的Java 编程环境,被许多开发人员和行业专家誉为市场上最好的IDE。它提供了一系列最实用的的工具组合:智能编码辅助和自动控制,支持J2EE,Ant,JUnit和CVS集成,非平行的编码检查和创新的GUI设计器。IDEA把Java开发人员从一些耗时的常规工作中解放出来,显著地提高了开发效率。具有运行更快速,生成更好的代码;持续的重新设计和日常编码变得更加简易,与其它工具的完美集成;很高的性价比等特点。在4.0版本中支持Generics,BEA WebLogic集成,改良的CVS集成以及GUI设计器。

      IntelliJ IDEA能尽可能地促进程序员的编程速度。它包括了很多辅助的功能,并且与Java结合得相当好。不同的工具窗口围绕在主编程窗口周围,当鼠标点到时即可打开,无用时也可轻松关闭,使用户得到了最大化的有效屏幕范围。以技术为导向的IDEA集成了调试器,支持本地和远程的调试,即使我们需要修改一些设置上的东西使我们的工作顺利进展。另外,它还提供了通常的监视,分步调试以及手动设置断点功能,在这种断点模式下,我们可以自动地在断点之外设置现场访问,甚至可以浏览不同的变量的值。IDE支持多重的JVM设置,几个编译程序和Ant建造系统,并且,它使得设置多重的自定义的类途径变得简单。

      IntelliJ Idea是一个相对较新的Java IDE。它是Java开发环境中最为有用的一个。高度优化的IntelleJ Idea使普通任务变得相当容易,Idea支持很多整合功能,更重要的使它们设计的好容易使用。Idea支持XML中的代码实现,Idea同时还会校正XML,Idea支持JSP的结构。作用于普通Java代码的众多功能同样适用于JSP(比如整合功能),同时支持JSP调试;支持EJB,尽管它不包括对个别应用服务器的特殊支持。Idea支持Ant建立工具,不仅是运行目标它还支持编译与运行程序前后运行目标,另外也支持绑定键盘快捷键。在编辑一个Ant建立XML文件时,Idea还对组成Ant工程的XML部分提供支持。IntelliJ IDEA 被称为是最好的JAVA IDE开发平台,这套软件就是以其聪明的即时分析和方便的 refactoring 功能深获大家所喜爱。缺点是较复杂,对初学者来说,理解起来比较困难。
    小 结 

           现在常用的Java项目开发环境有:JBuilder、VisualAge for Java、Forte for Java, Visual Cafe、Eclipse、NetBeans IDE、JCreator +J2SDK、jdk+记事本、EditPlus+ J2SDK等等。一般开发J2EE项目时都需要安装各公司的应用服务器(中间件)和相应的开发工具,在使用这些开发工具之前,我们最好能熟知这些软件的优点和缺点,以便根据实际情况选择应用。编程工具只是工具,为了方便人们工作而开发的,各有特点,因此,选工具主要的依据自己将要从事的领域是什么,而不是盲目的认为那种工具好,那种工具不好。最后希望大家都能找到自己合适的java 开发工具。

    展开全文
  • Java开发工具之IntelliJ IDEA

    千次阅读 2018-05-24 01:24:02
    从去年开始到现在,由Jetbrains出品的一系列开发工具对于程序猿来说,可以说是一场盛宴、一场狂欢。甚至有许多的大公司开始普及式教学和使用,其原因归根于这些开发工具极大的提高了开发者的效率,“傻瓜式”的友好...

    从去年开始到现在,由Jetbrains出品的一系列开发工具对于程序猿来说,可以说是一场盛宴、一场狂欢。甚至有许多的大公司开始普及式教学和使用,其原因归根于这些开发工具极大的提高了开发者的效率,“傻瓜式”的友好提示更是受到了小白们的追捧和迷恋。

        - 智能提示

        - 代码提示

        - 基本设置

            - 界面字体

            - 代码字体

            - 自定义注释

        - debug调试

        - JDK配置


    下面,就让我们一探根源,IDEA究竟好在哪里?

    相比于轻便的、拆包即用的Eclipse,为什么大众越来越“弃他而去”。相信IDEA的智能化,已经通过十万种花式变法给予了答复。酷炫的界面对于像我这样的颜值控,更是不言而喻的想快点试试的赶脚。



    1、智能提示

    目前用的最多的一个快捷键,就是alt+enter(堪称神技),几乎大部分的代码提示、补全、修复(反正不会就按按看,都会有收获,233333)。而且,当你写的代码过于复杂,或者说有更好的方式能够代替你所写的代码,比如java8所拥有的lambda表达式,又或者说int与Integer之间的自动装箱,又或者说遍历数组等foreach语句,等等。都可以很好的使用智能提示做到快速、高效的编写代码。







    2、代码提示

    当输入一个字符或者想寻找一个方法,却不记得整个方法名时,可以只输入其中的几个字符就能寻找到你想要的方法进行输出提示,比如:




    在这里,我就不展开阐述IDEA的智能特性了,相信开始尝试使用它的汪友们,会很快感受到它的强大。下面就介绍一下IDEA的一些基本设置,方便开发者们更方便的去使用它。

    3、基本设置

    (1)字体设置

    打开界面的左上角,File - Settings


    Appearance & Behavior - Appearance (设置界面字体)


    Editor - Colors & Fonts - Font (设置程序字体)


    (2)编码设置

    File - Other Settings - Default Settings - Editor - File Encodings


    一般开发采用UTF-8,通用情况,可适用于国内和国外


    (3)自定义注释

    file -  setting - Editor - Filr and Code Templates - Includes - File Header

    a、在类上注释


    b、在方法上注释

    file - setting - Editor - LiveTemplates - Template Group - 添加一个






    接着就可以看到自定义的注释可以使用了。


    4、Debug调试技巧


    在行号旁边设置断点


    使用PostMan发送http请求,未用过的小伙伴,我将在后续的篇章中介绍此软件的应用


    请求发送之后会自动跳到断点处,并且在断点之前会有数据结果显示


    按F8 在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则不进入当前方法体内,跳到下一条执行语句。


    按F7在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则进入当前方法体内,如果该方法体还有方法,则会进入该内嵌的方法中 。


    继续按F7,则跳到StopWatch() 构造方法中。


    跳出该方法,可以按Shift+F8,在 Debug 模式下,跳回原来地方。


    这时我们按F8,会继续执行下一条语句。


    当我们执行到第二个断点处,如果想直接执行到第三个断点处,可以按F9。



    5、JDK配置

    在首页点击configure,找到project structure,打开。进入project目录,添加sdk,选择添加jdk,选择你安装jdk的目录即可。



    本文部分内容摘自clever_fan、学渣之路的文章进行整理归纳,在此鸣谢。

    -------------------------

    未完待续,敬请期待......

    有任何建议或问题,欢迎加微信一起学习交流,欢迎从事IT,热爱IT,喜欢深挖源代码的行业大牛加入,一起探讨。

    个人微信号:bboyHan



    展开全文
  • Java 注释处理器工具的 Gradle 插件。 用法 将插件添加到buildscript的dependencies并添加 Sonatype 的快照存储库以便能够下载它: buildscript { dependencies { repositories { maven { url " ...
  • java加密工具类 DESUtils

    2019-03-10 14:58:10
    des是java开发中比较常见的加密方式,多用于加密要求不是很严格的地方,其优点为算法速度比非对称加密的快,缺点为加密密钥和解密密钥为同一个。将加密方式封装成一个工具类,便于使用,可指定密钥或使用默认密钥,...
  • Java目录监视器源程序 9个目标文件 内容索引:JAVA源码,综合应用,目录监视 用JAVA开发的一个小型的目录监视系统,系统会每5秒自动扫描一次需要监视的目录,可以用来监视目录中文件大小及文件增减数目的变化。...
  • Java的常用开发工具

    万次阅读 多人点赞 2018-01-27 15:05:14
    Java开发人员的常用工具 ...要想全面了解java开发工具,我们首先需要先了解一下java程序的开发过程,通过这个过程我们能够了解到java开发都需要用到那些工具。 首先我们先了解完整项目开发过程,如图所示:
  • 6款 Java WEB应用开发工具(框架)

    万次阅读 2017-10-12 23:39:41
    1、项目名称:分布式敏捷开发系统架构 zheng项目简介: 基于 Spring + SpringMVC + Mybatis 分布式敏捷开发系统架构,提供整套公共微服务服务模块:集中权限管理(单点登录)、内容管理、支付中心、用户管理(支持第...
  • 上面一篇文章《java开发工具(1)你真的会用IDEA么?(上)》.我们说了Idea的Struture功能和Favorites功能。这一期,针对java开发人员,我想做javaWeb开发的人员基本都是用Spring框架把,所以今天我将向你介绍Idea的...
  • JWhich我最好的 Java 开发工具之一,由 Clarkware Consulting, Inc. 制作:找到类路径中的类在哪里我使用它例如找出所有 Eclipse 插件中给定类的位置 ListJar列出 .jar 中包含的类的简单方法 ClassSpy显示类的成员...
  • Java知识体系最强总结(2021版)

    万次阅读 多人点赞 2019-12-18 10:09:56
    本人从事Java开发已多年,平时有记录问题解决方案和总结知识点的习惯,整理了一些有关Java的知识体系,这不是最终版,会不定期的更新。也算是记录自己在从事编程工作的成长足迹,通过博客可以促进博主与阅读者的共同...
  • Java代码注释模板

    2017-09-18 16:10:22
    为便于规范各位开发人员代码、提高代码质量,研发中心需要启动代码评审...为了加快代码评审的速度,减少不必要的时间,可以加入一些代码评审的静态检查工具,另外需要为研发中心配置统一的编码模板和代码格式化模板。
  • JAVA常见十四种开发工具及其好处

    千次阅读 2018-12-25 15:36:50
    1、JDK (Java Development Kit)Java开发工具集 SUN的Java不仅提了一个丰富的语言和运行环境,而且还提了一个免费的Java开发工具集(JDK)。开发人员和最终用户可以利用这个工具来开发java程序。  JDK简单易学,可以...
  • NULL 博文链接:https://xiuzhi.iteye.com/blog/677695
  • java注解开发

    千次阅读 2017-12-22 13:27:15
    如果没有用来读取注解的方法和工作,那么注解也就不会比注释更有用处了。使用注解的过程中,很重要的一部分就是创建于使用注解处理器。Java SE5扩展了反射机制的API,以帮助程序员快速的构造自定义注解处理器。 ...
  • Java基础知识面试题(2020最新版)

    万次阅读 多人点赞 2020-02-19 12:11:27
    文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的...
  • Java工具

    千次阅读 2019-01-13 21:19:43
    本文类似于一个Java开发的“工具箱”,会记录一些Java开发者常用到的工具,例如:工具的一些环境配置、常用的技术网站等。本文不会一下子就有很多内容,会不断的完善。 一、JDK环境变量配置 Windows环境 1.首先...
  • 大眼仔(www.dayanzai.me)在这里提示的是,Java 开发工具包集成了一组功能强大的工具,无论其知识水平如何,它们都可以帮助程序员实现 Java 应用程序。尽管如此,JDK 是任何 Java 开发人员的重要基础工具。 ...
  • 大眼仔在这里提示的是,Java 开发工具包集成了一组功能强大的工具,无论其知识水平如何,它们都可以帮助程序员实现 Java 应用程序。尽管如此,JDK 是任何 Java 开发人员的重要基础工具。 Windows 系统下配置 Java ...
  • Translation插件主要是用来翻译工作的,我们学习源码时,遇到注释有不认识的单词时需粘贴到某某翻译查看,使用此插件在当前界面通过快捷键或鼠标右击的方式即可完成翻译工作中。
  • 集成开发环境 Eclipse是最有名也最广泛使用的Java集成开发环境(IDE),允许开发者结合语言支持和...IntelliJ为众多Java EE框架提供了针对框架的编码帮助和提升生产效率的功能,还有大多数应用服务器的部署工具
  • NULL 博文链接:https://lsz1023-126-com.iteye.com/blog/2048234
  • java bean生成工具

    2018-10-24 10:15:35
    很好用的一款javabean生成工具,只需要输入属性名称、类型、注释、自动生成带有注释java实体类

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 221,299
精华内容 88,519
关键字:

java开发工具可以翻译注释

java 订阅