1. J2EE实际上是一组规范(新手对规范这个词可能云里雾里的,没有办法,JAVA概念太多了,大部分概念慢慢就会理解),没错,J2EE这个概念并不是某种技术,而是一堆规范(实现意义上可以说是一堆技术)组成的,在老手的嘴里它是一堆概念。J2EE规范有的是标准的,有的不是标准的。标准的含义就是被SUN公司JDK体现与兼容,成为业界遵循的准则。比如,Servlet,当它成为标准规范以后,就会在JDK里得到支持和体现,中间件开发商就会去实现它,我们就要按照这种标准开发应用。还有Struts,它是开源组织Apache开发的规范,不是标准的,但以后可能会成为标准。所以,合格的J2EE程序员,不仅是掌握了多少JAVA的编写规范,而是掌握了多少J2EE开发平台的规范(包括标准和非标准的)。

2. 各种中间件是一种规范。

中间件的意义在于,它已经实现了每个应用都需要的底层基础部分。比如,WebLogic和Jboss,它已经提供了应用容器,和Servlet,JDBC,JNDI,JMS和 WebService等接口。开发者在这个基础上,可以很容易而且可以很好去实现这些功能,从而使开发者集中经历,去解决应用的业务逻辑。通常,业务逻辑是千变万化的,但是底层实现却有迹可循,中间件开发商承担了底层实现的责任。目前,绝大部分应用都是基于现成的中间开发的,作为j2ee程序员,掌握主流的中间件是基本的职业要求之一。

3. 各种框架也是一种规范。

中间件使开发者从底层实现中解放出来,基于框架的开发使开发者从程序基本架构中解放出来,从而更彻底的将精力转到业务逻辑领域。也许某天,程序设计和构架就是那么回事,框架一上就ok,开发者的主要任务已经彻底转到业务逻辑领域。所以,以后出色的开发者,是那些对业务能透彻领悟的人,程序构架则由建模行家担当。但是,基于框架开发,不是忽略框架,因为大部分业务逻辑的实现,都是基于框架的。而且,当现有的框架不能满足需求时候,还需要扩展框架甚至被迫另外开发框架。J2EE程序员,熟悉主流的框架也是职业要求,最好还要知道各框架的优劣和特性。

4. 各种设计模式和设计思想也是一种规范。

这是一种更高级更抽象的规范,甚至是一种思维层次上的规范,有时候只能意会不能言传。有人曾经问一位得道高僧,禅是什么?高僧回答说,禅就是打柴挑水。如果把写程序比作出家当和尚,学习和实践设计模式就是打柴挑水。学习设计模式,你就可以站在巨人的肩上,吸收前人现成的优秀的开发经验。JDK都在不断实践这种抽象规范。

正是这些标准和非标准的规范,促进了JAVA应用的发展和繁荣。随着业界的发展,还将有各种开发规范诞生,这些规范只是JAVA程序某一中原则的优秀实现而已,只要我们深谙JAVA(面向对象)的开发思想,就能做到不变应万变,融会贯通各种新规范,新标准。

学习J2EE,也许就是学习这些现成的规范,不过这已经够了,如果想在J2EE方面有所建树,需要你的创造性劳动。

原文链接:认识J2EE规范或标准以及J2EE和JEE有什么不同?

认识J2EE规范或标准以及J2EE和JEE有什么不同?的更多相关文章

  1. J2EE规范 - 13种规范

    J2EE是由SUN提出的用于简化开发企业级应用程序的一系列规范的组合,J2EE基于中间层集成的框架的方式为应用开发提供了一个统一的开发平台.基于容器管理.组件化的模型为企业建立一个高可用性,高可靠性可 ...

  2. J2EE规范

    J2EE是由SUN提出的用于简化开发企业级应用程序的一系列规范的组合,J2EE基于中间层集成的框架的方式为应用开发提供了一个统一的开发平台.基于容器管理.组件化的模型为企业建立一个高可用性,高可靠性可 ...

  3. 以EJB谈J2EE规范

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/xiaoduishenghuogo/article/details/24800703 接触J2EE的时 ...

  4. 【J2EE】在项目中理解J2EE规范

             J2EE平台由一整套服务(Service),应用程序接口(API)和协议构成,它对开发企业级应用提供了功能支持.13个核心技术各自是JDBC, JNDI, EJB, RMI, JSP ...

  5. python代码规范与标准库参考

    python代码规范与标准库参考 python代码规范参考文献: http://www.runoob.com/w3cnote/google-python-styleguide.html https:/ ...

  6. Atitit 我们的devops战略与规划 规范 推荐标准

    Atitit 我们的devops战略与规划 规范 推荐标准 1. Vm容器化1 2. 热部署tomcat+jrebel 或者resin1 3. 增量更新与差异更新1 4. 补丁提取与应用2 为了方便提 ...

  7. J2EE规范标准

    J2EE是一个很大的平台体系,提供了很多服务.程序接口.协议等.这么庞大的体系必须要由一系列的标准进行规范,不然将会一片混乱.通过这些规范好的接口来开发程序将会使程序更加强壮.更加有生命力.总的来说, ...

  8. Java基础之J2EE规范

    什么是J2EE? 在企业级应用中,都有一些通用企业需求模块,如数据库连接,邮件服务,事务处理等.既然很多企业级应用都需要这些模块,一些大公司便开发了自己的通用模块服务,即中间件.这样一来,就避免了重复 ...

  9. J2EE规范总结

    概述 J2ee是我们步入java学习的一个開始.它将开启这趟奇幻之旅,Java是一种简单的,跨平台的,面向对象的,分布式的.解释的.健壮的安全的.结构的中立的,可移植的.性能非常优异的多线程的,动态的 ...

随机推荐

  1. 每日英语:Bosses May Use Social Media to Discriminate Against Job Seekers

    Many companies regularly look up job applicants online as part of the hiring process. A new study su ...

  2. 2017-04-26 ios ipv6那些事(已完美解决)

    2017-04-26 ios ipv6那些事(已完美解决)   工作单位性质属于外包公司,每天都有几十的app要提交上传至应用市场,于2017年3月份接到ios工程师反馈 Guideline 2.1 ...

  3. 【Linux技术】ubuntu常用命令

    查看软件xxx安装内容:dpkg -L xxx查找软件库中的软件:apt-cache search 正则表达式查找软件库中的软件:aptitude search 软件包查找文件属于哪个包:dpkg - ...

  4. Maven mvn install 本地jar添加到maven仓库中

    最近在使用支付宝.财付通这样的第三方支付,在使用支付宝过程中需要引入官方SDK方便开发,使用以下命令来将本地的jar装载到maven仓库中. 这里有几点需要注意点,我使用Windows10时,使用po ...

  5. java 多线程12 : 无锁 实现CAS原子性操作----原子类

    由于java 多线程11:volatile关键字该文讲道可以使用不带锁的情况也就是无锁使变量变成可见,这里就理解下如何在无锁的情况对线程变量进行CAS原子性及可见性操作 我们知道,在并发的环境下,要实 ...

  6. Python的可视化包 – Matplotlib 2D图表(点图和线图,.柱状或饼状类型的图),3D图表(曲面图,散点图和柱状图)

    Python的可视化包 – Matplotlib Matplotlib是Python中最常用的可视化工具之一,可以非常方便地创建海量类型地2D图表和一些基本的3D图表.Matplotlib最早是为了可 ...

  7. Java Web项目中使用Freemarker生成Word文档

    Web项目中生成Word文档的操作屡见不鲜.基于Java的解决方式也是非常多的,包含使用Jacob.Apache POI.Java2Word.iText等各种方式,事实上在从Office 2003開始 ...

  8. Quartz Scheduler Calendar日历的使用

    Quartz Calendar 日历的使用 quartz引擎为我们提供了日历的功能,让我们可以自己定义一个时间段,可以控制触发器在这个时间段内触发或者不触发,比如可以设置节假日,工作时间早8晚5等等. ...

  9. IoCopyCurrentIrpStackLocationToNext与IoSetCompletionRoutine的深入理解

    1.IoCopyCurrentIrpStackLocationToNext是拷贝本层的IO_STACK_LOCATION 到下一层.在楚狂人的驱动教程中说:如果对irp完成之后的事情有兴趣,并打算在完 ...

  10. map-reduce 优化

    map阶段优化 参数:io.sort.mb(default 100) 当map task开始运算,并产生中间数据时,其产生的中间结果并非直接就简单的写入磁盘. 而是会利用到了内存buffer来进行已经 ...