Java Web,是用Java技术来解决相关web互联网领域的技术总和。web包括:web服务器和web客户端两部分。Java在客户端的应用有java applet,不过使用得很少,Java在服务器端的应用非常的丰富,比如Servlet,JSP和第三方框架等等。Java技术对Web领域的发展注入 了强大的动力。
中文名
java web
包    括
web服务器和web客户端
应    用
Servlet,JSP
优    点
上手快速并且相对容易
主要框架
使用Servlet或者Filter拦截请求

主要框架

编辑

Java的Web框架虽然各不相同,但基本也都是遵循特定的路数的:使用Servlet或者Filter拦截请求,使用MVC的思想设计架构,使用约定,XML或 Annotation实现配置,运用Java面向对象的特点,面向对象实现请求和响应的流程,支持Jsp,Freemarker,Velocity等视图。

JSP优点:

Java EE标准,这意味着有很大的市场需求和更多的工作机会
上手快速并且相对容易
有大量可用的组件库

JSP缺点:

大量的JSP标签
对REST和安全支持不好
没有一个统一的实现。既有SUN的实现,又有Apache的实现——MyFaces。

Spring MVC优点:

对Spring MVC覆盖绑定(overriding binding)、验证(validation)等提供生命周期管理
与许多表示层技术/框架无缝集成:JSP/JSTL、Tiles、Velocity、FreeMarker、Excel、XSL、PDF 等
便于测试——归功于IoC

Spring MVC缺点:

大量的XML配置文件
太过灵活——没有公共的父控制器
没有内置的Ajax支持

Stripes优点:

不需要书写XML配置文件
良好的学习文档
社区成员很热心

Stripes缺点:

社区比较小
不如其他的项目活跃
ActionBean里面的URL是硬编码的

Struts 2优点:

架构简单——易于扩展
标记库很容易利用FreeMarker或者Velocity来定制
基于控制器或
者基于页面的导航

Struts 2缺点:

文档组织得很差
对新特征过分关注

Tapestry优点:

一旦学会它,将极大地提高生产率
HTML模板——对页面设计师非常有利
每出一个新版本,都会有大量的创新

Tapestry缺点:

文档过于概念性,不够实用
学习曲线陡峭
发行周期长——每年都有较大的升级

Wicket优点:

对Java开发者有利(不是Web开发者)
页面和显示绑定紧密
社区活跃——有来自创建者的支持

Wicket缺点:

HTML模板和Java代码紧挨着
需要对OO有较好的理解
Wicket逻辑——什么都用Java搞定

关于Java

编辑

詹姆斯·戈士林博士以“Java技术之父”闻名于世。
他是Java技术的创始人, 作为Sun研究院院士,他亲手设计了Java语言,完成了Java技术的原始编译器和虚拟机。在他的带领下,Java现已成为互联网的标准编程模式以及分 布式企业级应用的事实标准,其跨平台的技术优势为网络计算带来了划时代的变革。戈士林博士积极致力于软件开发工具的研究,以使软件开发工具的功能更强大, 更容易为开发人员所使用,确保应用、服务开发的迅速完成。
Java技术是Sun公司在1995年5月正式推出的。20多年 来,Java已从编程语言发展成为全球第一大通用开发平台。Java技术已为计算机行业主要公司所采纳,同时也被越来越多的国际技术标准化组织所接受。 1999年,Sun推出了以Java 2平台为核心的J2EE、J2SE和J2ME三大平台。随着三大平台的迅速推进,在世界上形成了一股巨大的Java应用浪潮。同时,Java技术还引发了一场无法停止的大变革,为整个Java社团带来了巨大的潮水般的商业机会。[1] 
Java技术及其应用将有更大的发展。据IDC预计,自2001年起的其 后5年内,采用Java的IT产品的价值将翻番,在2006年将达到4.53亿美元,年增长率为14.9%。截止到2003年5月,注册Java Developer Connection (JDC)的Java开发商超过300万人,对JRE(Java运行环境)的下载达7,200万次。Sun在JavaOne 2003大会上确定的目标是,在3~5年内使Java技术开发商从今天的300万发展到1,000万,以支持Java技术这一全球领先技术平台的显赫地 位。[1] 

最新文章

  1. Hadoop单机模式安装-(2)安装Ubuntu虚拟机
  2. [Java 基础] 并发队列ConcurrentLinkedQueue和阻塞队列LinkedBlockingQueue用法
  3. java.util.zip对zip文件解压
  4. 【开源项目9】ImageLoaderConfiguration详解
  5. 【转】System.DateTime.Now.ToString()的一些用法
  6. [CODEVS1220]数字三角形
  7. maya 操作自我整理(一)
  8. python之requests模块
  9. UVa 10653 - Bombs! NO they are Mines!!
  10. swift 协议传值的实现
  11. CodeForces 456A
  12. Python学习笔记(七)
  13. hdu1496 打表
  14. 集成学习-Adaboost
  15. 使用Chrome浏览器访问谷歌和维基百科
  16. (7)Jquery1.8.3快速入门_内容过滤选择器
  17. [日常] Go语言圣经-并发的非阻塞缓存
  18. Object_C初始化方法, 遍历构造器
  19. 自定义annotation-----转载
  20. app.module.ts说明

热门文章

  1. 学习apache commons lang3的源代码 (1):前言和R
  2. 第一篇:动态防火墙firewalld和静态防火墙iptables
  3. AC日记——[Sdoi2008]Cave 洞穴勘测 bzoj 2049
  4. Codeforces 651 B. Beautiful Paintings
  5. HDU 多校1.12
  6. 3、Flask实战第3天:url_for使用
  7. DataNucleus(通过jpa和jdo接口访问多中数据源)
  8. 洛谷 P1852 [国家集训队] 跳跳棋
  9. 【动态规划】【记忆化搜索】CODEVS 3409 搬运礼物 CodeVS原创
  10. inline-block 前世今生(转)