SIP(集成对讲) : (OpenSIP \ FreePBX)
NPOI(操作Word等的)
--------------------------------------------------------------------------------
Java 2 标准版(J2SE): 去占领桌面
Java 2 移动版(J2ME): 去占领手机
Java 2 企业版(J2EE): 去占领服务器
--------------------------------------------------------------------------------
构建工具: Ant,Maven, Jekins
应用服务器: Tomcat,Jetty, Jboss, Websphere, weblogic
Web开发: Struts,Spring,Hibernate, myBatis
开发工具: Eclipse, Netbean,intellij idea, Jbuilder
--------------------------------------------------------------------------------
JDBC: Java 数据库连接, 没有数据库的支持怎么能叫企业级应用?
JNDI : Java 命名和目录接口, 通过一个名称就可以定位到一个数据源, 连jdbc连接都不用了
RMI: 远程方法调用, 让一个机器上的java 对象可以调用另外一个机器上的java 对象 , 你们不是要分布式吗?
JMS : Java 消息服务, 可以使用消息队列了, 这不是企业级应用非常需要的吗?
JTA: Java 事务管理, 支持分布式事务, 能在访问、更新多个数据库的时候,仍然保证事务, 还是分布式.
Java mail : 收发邮件也是必不可少的啊。
注: J2EE 后来改成了Java EE。
当然还有最最最重要的升级, 小码哥把java bean 变成了 Enterprise Java bean , 简称 EJB。
本地程序JavaFX
//父子关系:Stage(window)--->>Layout--->>Scene(javax.scene)--->>StackPane--->>Button
javafx.scene.layout.StackPane.getChildren().addAll(MapView.setMap(ArcGISMap(Basemap.createImagery)))
单元测试junit
//引入junit.jar包
@Test //注释为测试方法,其中可以用assert来判断a是否等于b
//右键运行junit
lucene 全文检索引擎工具包,
Elastic 的底层是开源库 Lucene(相当于另一种类型的数据库)。但是,你没法直接用 Lucene,必须自己写代码去调用它的接口。Elastic 是 Lucene 的封装,提供了 REST API 的操作接口,开箱即用。
Quartz 作业调度工具包(负责到相应的时间点,调用相应的Job来干活)
logbac k取代 log4j
ehcache 缓存机制可以缓解数据库的压力)如果是单个应用或者对缓存访问要求很高的应用,用ehcache。如果是大型系统,存在缓存共享、分布式部署、缓存内容很大的,建议用redis
Activiti 业务流程管理(BPM)工作流框架(比如请假的流程就是一步一步,而且要判断请多少天的情况什么的,代码会很乱,这时候就可以用工作流框架,甚至可以用插件直接画流程图生成代码,生成表,历史表什么的)
Orbeon 表单引擎(用于设计管理给组织部门个人多方使用和管理的表单)
SOA架构 (Service-Oriented Architecture 面向服务的架构)的核心位置的企业服务总线(Enterprise Service Bus,ESB)就是一个中间件。所以ESB是一种全新集成应用模式,他具有三个核心的重要功能:格式转换、协议转换路由转发。可以把微服务当做去除了ESB的SOA
SOA将软件按照功能设计成一个个服务,这些服务用标准的方式定义接口、并通过标准的协议进行调用
微服务 可以把微服务当做去除了ESB的SOA。指提供单个业务功能的服务(有自己的端口),可以在独立运行,并通过“轻量级设备与HTTP型API进行沟通”,类似进程概念,能够自行单独启动或销毁,拥有自己独立的数据库。
Jenkins 用于自动化各种任务,包括构建、测试和部署软件.Jenkins 支持各种运行方式,可通过系统包, Docker 或者通过一个独立的 Java 程序
Java SE版本 JDK版本 发布时间
Oak 1995-05-23 Oak(橡树)
Java 1.0 JDK1.0 1996-01-23
Java 1.1 JDK1.1 1997-02-18
J2SE 1.2 JDK1.2 1998-12-04 Playground(运动场
J2SE 1.3 JDK1.3 2000-05-08 Kestrel(美洲红隼)
J2SE 1.4 JDK1.4 2002-02-13 Merlin(灰背隼)
Java SE 5.0 JDK1.5 2004-09-29 Tiger(老虎)
Java SE 6 JDK1.6 2006-12-11 Mustang(野马)
Java SE 7 JDK1.7 2011-07-28 Dolphin(海豚)
Java SE 8 JDK1.8 2014-03-18 Spider(蜘蛛)
Java SE 9 JDK1.9 2017-09-21
Java SE 10 JDK10 2018-03-21
Java SE 11 JDK11 2018-09-25
Java SE 12 JDK12 2019-3-20
版本 | 发布日期 | 最终免费公开更新时间[3][4] | 最后延伸支持日期 |
---|---|---|---|
JDK Beta | 1995 | ? | ? |
JDK 1.0 | 1996 年 1 月 | ? | ? |
JDK 1.1 | 1997 年 2 月 | ? | ? |
J2SE 1.2 | 1998 年 12 月 | ? | ? |
J2SE 1.3 | 2000 年 5 月 | ? | ? |
J2SE 1.4 | 2002 年 2 月 | 2008 年 10 月 | 2013 年 2 月 |
J2SE 5.0 | 2004 年 9 月 | 2009 年 11 月 | 2015 年 4 月 |
Java SE 6 | 2006 年 12 月 | 2013 年 4 月 | 2018 年 12 月 |
Java SE 7 | 2011 年 7 月 | 2015 年 4 月 | 2022 年 7 月 |
Java SE 8 (LTS) | 2014 年 3 月 | Oracle 于 2019 年 1 月停止更新(商用) Oracle 于 2030 年 12 月停止更新(非商用) AdoptOpenJDK 于 2026 年 5 月或之后停止更新 Amazon Corretto 于 2026 年 5 月或之后停止更新 | 2030 年 12 月 |
Java SE 9 | 2017 年 9 月 | OpenJDK 于 2018 年 3 月停止更新 | 不适用 |
Java SE 10 | 2018 年 3 月 | OpenJDK 于 2018 年 9 月停止更新 | 不适用 |
Java SE 11 (LTS) | 2018 年 9 月 | AdoptOpenJDK 于 2024 年 10 月或之后停止更新 Amazon Corretto 于 2027 年 9 月或之后停止更新 | 2026 年 9 月 |
Java SE 12 | 2019 年 3 月 | OpenJDK 于 2019 年 9 月停止更新 | 不适用 |
Java SE 13 | 2019 年 9 月 | OpenJDK 于 2020 年 3 月停止更新 | 不适用 |
Java SE 14 | 2020 年 3 月 | OpenJDK 于 2020 年 9 月停止更新 | 不适用 |
Java SE 15 | 2020 年 9 月 | OpenJDK 于 2021 年 3 月停止更新 | 不适用 |
Java SE 16 | 2021 年 3 月 | OpenJDK 于 2021 年 9 月停止更新 | 不适用 |
Java SE 17 (LTS) | 2021 年 9 月 | 待定 | 待定 |
Java SE 18 | 2022年 3月 | OpenJDK 于 2022 年 9 月停止更新 | 不适用 |
格式: 旧版本 旧版本,仍被支持 当前版本 未来版本 |
正在使用的类文件格式的主要版本号。
https://stackoverflow.com/questions/9170832/list-of-java-class-file-format-major-version-numbers
Java SE 17 = 61 (0x3D hex), [需要引用]
Java SE 16 = 60 (0x3C hex),
Java SE 15 = 59 (0x3B hex),
Java SE 14 = 58 (0x3A hex),
Java SE 13 = 57 ( 0x39 hex),
Java SE 12 = 56 (0x38 hex),
Java SE 11 = 55 (0x37 hex),
Java SE 10 = 54 (0x36 hex), [3]
Java SE 9 = 53 (0x35 hex), [4]
Java SE 8 = 52(0x34 hex),
Java SE 7 = 51(0x33 hex),
Java SE 6.0 = 50(0x32 hex),
Java SE 5.0 = 49(0x31 hex),
JDK 1.4 = 48(0x30 hex),
JDK 1.3 = 47(0x2F 十六进制),
JDK 1.2 = 46(0x2E 十六进制),
JDK 1.1 = 45(0x2D 十六进制)。