JAVA网页设计Servlet 3.0公然预览版激发争辩仓酷云
而学习JAVA我觉得最应该避免的就是:只学习,不思考,只记忆,不实践!JSR-315公布了Servlet3.0标准的公然预览版,同时在GlassFish代码分支上供应了参考完成。此次公布激发了人们关于专家组(ExpertGroup)为下一代ServletAPI和全部JavaEE6平台做出的各类选择的争辩。ServletAPI一向处于风口浪尖,从早期草稿入手下手,JSR315专家组努力于在相似便利开辟、插件性等范畴完美和进步该标准,其首脑之一RajivMordani,如许说道:
[*]便利开辟(EaseofDevelopment):在初期草案中,我们增加了一些注解,同意你像POJO一样写Servlet。可是在专家组的多少次会商和社区反应以后,我们决意删除像@GET,@POST如许的办法层注解,保存doGet、doPos办法和扩大HttpServlet类。可是,那些重定名以更无效利用的最顶层注解仍旧存在。@WebServlet用于声明一个servlet,@ServletFilter声明过滤器,@WebServletContextListener定义ServletContextListener。除这些注解,像@Resource这类自Servlet2.5就一向撑持的注解则坚持稳定。
[*]可拔出性:构建于servlet之上的Web框架在开辟职员中很受接待,个中良多人提出了林林总总的成绩。为了更好地撑持框架便于开辟职员编写web使用,我们在servlet3.0标准中增加一些体例以匡助开辟职员依据本身情形利用和办理框架。
[*]异步处置:这是我们在servlet3.0标准中变更最年夜的部分。在初期草案中,我们停息、从头入手下手、断定了我们界说的语义。可是,在这以后,专家组关于怎样办理异步处置的各类用例举行了大批的会商,标准中做出的修正如今也能够办理各类成绩。
RoyVanRijn表达了他关于初期草案中呈现的一些特征的担心:
我更偏向于完整不利用针对GET/POST办法的注解,可是我发明JavaEE6标准倡始利用相似的注解,JSR-315的编写者“别无选择”(糟的托言)。我在本文中表达的概念已发给了JSR构造,但至今没有回应。
我也找不到一位成员给出缘故原由、注释、廓清等等。比来JavaEE6标准公布公然预览版,个中包括了对Servlet3.0标准的援用,以是这会成为JavaEE6的一部分。可是我恳请他们花工夫从头思索关于注解的决意。
跟着标准公然预览版的公布,来自Webtide的GregWilkins以为该标准十分糟,是反面谐的专家组和出缺陷的流程的产品。他的次要概念包含:
[*]它代表了API计划上的一次头脑实行,不存眷完成的庞大性、试用可行性和社区反应。
[*]请求测试完成的哀求被回绝了。
[*]没有公然的大概公道的机制来搜集来自社区的需乞降可贵的社区征询。
[*]一些含混的需求(好比包装的异步哀求)在较晚时分包括出去,没有效例和用户需求。
[*]写的十分糟,就像年夜多半JCP文档一样。
[*]一些新的特征引发了平安隐患,并大概招致部署迟缓。
[*]异步servlet的倡议被改动了,与初期草案分歧。最后的办法是JettyContinuations的了局,从2008年3月便可在Jetty-7pre-release中试用,已在良多框架和使用中测试过,包含ometd、DWR、JSF和BlazeDS。
Greg总结说:
我信任在如今的预览版中有分明的毛病,这些缺点已多的让人很简单就能够发明。当我从专家组收到关于这些成绩的撑持信息时,我没法确信标准首脑的正当身份,我大概由于过于严峻而没法失掉匡助了。
Rajiv对Greg的回复中指出:
[*]在GlassFish中有相干完成。
[*]他从没看到过Greg的哀求。
[*]假如不喜好新功效,能够克制利用。
[*]没有分明的证据标明部署会变慢。
[*]异步servlet增添的体例更被社区所喜好,他援用了专家组的邮件。
Rajiv也提到了来自RedHat的BillBurke写的一篇博文,个中他品评了Jetty6中的异步servlet完成。
随后,GregWilkins公布他努力于Servlet3.0异步servlet的一个完成,他在博客上枚举了一些修改/扩大和与专家组的延续会商。个中包含:
[*]新的异步分发器范例(ASYNCDispatcherType),用于分发异步哀求。
[*]当哀求分发时,isAsyncStarted()办法为false。
[*]假如getReader()大概getOutputStream()已被挪用,则挪用startAsync()大概startAsync(request.response)时会抛出IllegalStateException非常。这能够把异步处置器限定到复杂的情况下。
[*]假如经由过程startAsync(request,response)启动异步形式,在AsyncContext上利用任何forward(...)办法城市有IllegalStateException非常。这制止了分发包装器的庞大,但同意异步处置器利用包装器。
[*]forward(path)和forward(context,path)办法还没有完成。
代码能够从Jetty分支和servlet-api分支中失掉。
Grep谈到了异步servlet的事变:
固然还必要更多测试,可是这个代码已完成了基础的异步举动,不必要很庞大的从头分发哀求大概前递办法。我信任这代表了3.0的公道折衷计划。在我们从3.0的复杂子集里取得履历以后,假如必要更多的特征,能够增加到3.1中。
检察英文原文:Servlet3.0PublicReviewSparksaDebate
本文出自:http://www.infoq.com/cn/news/2008/12/servlet3_debate
那这个对象有什么意义?现在很多用javabean的人就不能保证对象有完整的意义,不成熟的使用模式等导致代码疯狂增长,调试维护的时间要得多得多。在说性能之前,先说说你这个比较的来历。据说微软为了证明。net网页编程比java好。 我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。 另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。 Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台 你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢? 接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。 《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。 一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从 是一种使用者不需花费很多时间学习的语言 象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。 让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。 在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。 设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧 不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。 不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。 是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能 当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢? Java 编程语言的风格十分接近C、C++语言。 那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧! 如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。
页:
[1]