JAVA 的多事之秋

作者:张桂权

正当JAVA的狂热者在为JAVA的10年盛事欢呼的时候,JAVA的世界传出一个让人“窒息”的声音。Sun应用服务器前任CTO,Peter Yared提出了这样的看法——“随着IT经理人逐渐对Java的开发时间与成本感到倦怠,Java/J2EE可能将失去未来的开源技术市场。“
 
   这样的消息已经不止一次的传到我们的耳边了。然而,这却是一个例外。这是一个不合时宜的消息,因为他现在受雇于LAMP新创公司ActiveGrid,该公司同时又是J2EE的一个市场竞争者。JAVA尤其是J2EE,EJB技术就那么糟糕,以至于足以IT界将其抛弃?

JAVA已经艰难的做过了10的发展了,应该说其中的好多技术,比如J2EE,EJB等都趋向于成熟了。因为其中的跨平台以及WEB业务与逻辑之间的相对独立等特性,JAVA技术给人们带来了好多的财富和商业的发展机会。JAVA却是是一门很经典的技术。然而,自从Rod Johnson的Expert One-on-One J2EE Design without EJB一书发表以来,我们就定到了好多关于JAVA高级应用技术的语言。我还记得《 程序员杂志》曾经在一期中专题的讨论过这个问题。好多人都认为EJB是一种没有必要的技术,J2EE也是快要过时的技术,所以我们没有什么反展的美好前景。这不得不让我们失望。我也是一名JAVA的技术爱好者。虽然对这一方面的技术不是特别的了解,当时我认为从市场的实际情况和开源社去的表现,我们还是有希望的。JAVA语言体系不可能因为一两个人的评论(或语言)而濒临崩溃的。一切都需要市场的裁决。

然而,让我们欣慰的是”美国当地时间8月8日,Java企业版(Java EE,即以前的J2EE)第5版总体技术规范(JSR-244,http://jcp.org/en/jsr/detail?id=244)通过了JCP执行委员会的公开审查投票。“,这更加证明我们是有信心的,有希望的。Java EE 5最重要的新增特性包括Java持久化API(即EJB 3 entity bean)、JSF、JSTL等。这无疑是一次革命,他将给我们带来更多的挑战和机遇。从最近JAVA开源世界的一些动态(比如,IBM的开源项目ECLIPSE项目以及相关开发组建的开源等)里我们也可看到我们希望的局面。

拥抱JAVA,拥抱我们的明天 !

JAVA 的多事之秋相关推荐

  1. 内存泄漏java例子_一次线上Java应用内存泄漏分析实例

    由于JVM的内存管理采用GC垃圾自动回收机制,这使得Java程序员在编程的时候确实可以从内存管理中释放出来,但这也引发了另外一个大问题,一旦Java应用出现内存泄漏的时候,常常让人措手不及,陷入无从下 ...

  2. java 内存泄漏样例_一次线上Java应用内存泄漏分析实例

    由于JVM的内存管理采用GC垃圾自动回收机制,这使得Java程序员在编程的时候确实可以从内存管理中释放出来,但这也引发了另外一个大问题,一旦Java应用出现内存泄漏的时候,常常让人措手不及,陷入无从下 ...

  3. Java 调用构造器一定产生新对象吗

    搞Java开发三年多了,工作换了几份.目前又到了一个多事之秋,估计马上又要换工作了.目前有点闲,写写技术博客. 言归正传,最近对一个问题有点疑惑,就是调用构造器会不会一定产生新对象,如果一定会,那么一 ...

  4. springboot实现SSE服务端主动向客户端推送数据,java服务端向客户端推送数据,kotlin模拟客户端向服务端推送数据

    SSE服务端推送 服务器向浏览器推送信息,除了 WebSocket,还有一种方法:Server-Sent Events(以下简称 SSE).本文介绍它的用法. 在很多业务场景中,会涉及到服务端向客户端 ...

  5. Java 获取当前时间之后的第一个周几,java获取当前日期的下一个周几

    Java 获取当前时间之后的第一个周几,java获取当前日期的下一个周几 //获得入参的日期 Calendar cd = Calendar.getInstance(); cd.setTime(date ...

  6. 在k8s中使用gradle构建java web项目镜像Dockerfile

    在k8s中使用gradle构建java web项目镜像Dockerfile FROM gradle:6-jdk8 AS build COPY --chown=gradle:gradle . /home ...

  7. Java | kotlin 手动注入bean,解决lateinit property loginService has not been initialized异常

    kotlin.UninitializedPropertyAccessException: lateinit property loginService has not been initialized ...

  8. SpringBoot项目使用nacos,kotlin使用nacos,java项目使用nacos,gradle项目使用nacos,maven项目使用nacos

    SpringBoot项目使用nacos kotlin demo见Gitte 一.引入依赖 提示:这里推荐使用2.2.3版本,springboot与nacos的依赖需要版本相同,否则会报错. maven ...

  9. OpenAPI使用(swagger3),Kotlin使用swagger3,Java使用swagger3,gradle、Maven使用swagger3

    OpenAPI使用(swagger3) demo见Gitte 一.背景及名词解释 OpenAPI是规范的正式名称.规范的开发工作于2015年启动,当时SmartBear(负责Swagger工具开发的公 ...

最新文章

  1. 5 分钟入门 Google 最强NLP模型:BERT
  2. 'eval' is null or not an object
  3. 定义/赋值数组、 expect预期交互
  4. 专家周 |360精确搜索VS今日头条精准推荐算法
  5. 语言解析ssl包_HPSocket v5.0.1:支持 IPv6 及多 SSL 证书
  6. XCTF WEB webshell
  7. IDEA出现错误:找不到或无法加载主类 io.renren.RenrenApplication
  8. Jenkins搭建Nodejs自动化测试
  9. SAP License:SAP概念辨识
  10. 机器学习:用正规方程法求解线性回归
  11. Default process group has not been initialized, please make sure to call init_process_group
  12. 深入阅读Mina源码(3) —— Mina之IOAdapter(二)
  13. es5创建对象与继承
  14. [转载]Badboy使用教程
  15. Linux 安装ifconfig命令
  16. GoJS 去水印方法
  17. 造成笔记本电池损耗的主要原因
  18. 少儿计算机基础知识,学会这三个小知识,轻松入门少儿编程
  19. Java实现家谱家族管理系统,图形化家谱家族树,单机应用程序
  20. swift php 类型判断,Swift 5.1 新特性:透明类型关键字 some

热门文章

  1. 乱弹火影世界,影射现实生活
  2. 5G 3GPP USIM Tuak算法code
  3. Thinkpad笔记本电池的寿命延长与TPfancontrol共存的方法
  4. SAP成本核算表中基值的理解
  5. 一颗树为另一棵树的子树
  6. 【Html + Js + CSS——电流壁纸(源码+特效)】
  7. Hystrix中文开发手册-Hystrix简介(Home)
  8. 浅谈网站黑链检测和清除的方法
  9. 大葱炒鸡蛋_百度百科
  10. cached in the local repository的解决办法