shenang博客技术文档


理论不懂就实践,实践不会就学理论!

posts - 35,comments - 55,trackbacks - 0
 

1、Apache POI

  Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程式对Microsoft Office格式档案读和写的功能。

  结构:

  HSSF - 提供读写Microsoft Excel格式档案的功能。

  XSSF - 提供读写Microsoft Excel OOXML格式档案的功能。

  HWPF - 提供读写Microsoft Word格式档案的功能。

  HSLF - 提供读写Microsoft PowerPoint格式档案的功能。

HDGF - 提供读写Microsoft Visio格式档案的功能。

2OSCache

1OSCache是什么?
     OSCache标记库由OpenSymphony设计,它是一种开创性的缓存方案,它提供了在现有JSP页面之内实现内存缓存的功能。OSCache是个一个被广泛采用的高性能的J2EE缓存框架,OSCache还能应用于任何Java应用程序的普通的缓存解决方案。
2OSCache的特点
    (1) 缓存任何对象:你可以不受限制的缓存部分jsp页面或HTTP请求,任何java对象都可以缓存。
    (2) 拥有全面的API:OSCache API允许你通过编程的方式来控制所有的OSCache特性。
    (3) 永久缓存:缓存能被配置写入硬盘,因此允许在应用服务器的多次生命周期间缓存创建开销昂贵的数据。
    (4) 支持集群:集群缓存数据能被单个的进行参数配置,不需要修改代码。
    (5) 缓存过期:你可以有最大限度的控制缓存对象的过期,包括可插入式的刷新策略(如果默认性能不能满足需要时)。

3、Servlet

Servlet是一种独立于平台和协议的服务器端的Java应用程序,可以生成动态的Web页面。它担当Web浏览器或其他HTTP客户程序发出请求,与HTTP服务器上的数据库或应用程序之间的中间层。

Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机

4、spring

Spring是一个开源框架,它由Rod Johnson创建。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。

• 目的:解决企业应用开发的复杂性

• 功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能

• 范围:任何Java应用

简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。

■轻量——从大小与开销两方面而言Spring都是轻量的。完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。并且Spring所需的处理开销也是微不足道的。此外,Spring是非侵入式的:典型地,Spring应用中的对象不依赖于Spring的特定类。

■控制反转——Spring通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。

■面向切面——Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务()管理)进行内聚性的开发。应用对象只实现它们应该做的——完成业务逻辑——仅此而已。它们并不负责(甚至是意识)其它的系统级关注点,例如日志或事务支持。

■容器——Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建——基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例——以及它们是如何相互关联的。然而,Spring不应该被混同于传统的重量级的EJB容器,它们经常是庞大与笨重的,难以使用。

■框架——Spring可以将简单的组件配置、组合成为复杂的应用。在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。

所有Spring的这些特征使你能够编写更干净、更可管理、并且更易于测试的代码。它们也为Spring中的各种模块提供了基础支持。

5、Struts 2

   Struts 2框架作为Struts 1.X框架的替代技术,相对Struts 1.X来说,有着本质上的改变, Struts 2框架是从WebWork框架发展而来的。Struts 1.X已经成为Java Web开发中应用最广泛的MVC框架,被广大的程序员所接受。随着Web技术的发展,Struts 1.X越来越难以适应,主要体现在支持视图技术单一、难于测试性、庞大的配置文件和大量的ActionForm类,给项目开发的管理维护带来了困难。

   Struts 2框架技术整合了Struts 1.X和WebWork的优点,Struts 2框架最大的特点就是其简单性,引入了OGNL表达式和值栈的概念,可以使开发者使用简单的代码实现复杂的数据访问;Action实现类就是一个标准的Java类(POJO),这使得测试工作变得简单。同时Struts 2框架取消了ActionForm,支持多种返回类型和Ajax技术,简化了同其他技术的整合。从Apache官方的宣传来看,Struts 2不久将会替代Struts 1.X

本贴来自天极网群乐社区--http://q.yesky.com/group/review-17524285.html

6、tiles
  Tiles使得struts在页面的处理方面多了一种选择。并且更容易实现代码的重用。Tiles增加了layout的概念,其实就是把一个页面划分为几块。通常的来说一个页面大概可以划分为如下几块:
  head页面头部:存放一个运用的公共信息:logo等,如果是网站可能是最上面的一块。
  menu页面菜单:放置一个运用中需要使用的菜单,或者在每一个页面都使用的连接。
  footer页面尾部:如版权信息等。
  body页面主题内容:每个页面相对独立的内容。
  如果按上面的划分那对每一个页面我们只要写body里面的内容,其他的就可以共享重用。
  如果大多数页面的布局基本相同我们甚至可以使用一个jsp文件根据不同的参数调用不同的body。

7、JUnit

JUnit是由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework)。Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。Junit是一套框架,继承TestCase类,就可以用Junit进行自动测试了

8、ibatis or hibernate

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用。

   实际上IBATIS与HIBERNATE一样也是一种ORM框架,只不过把OO的东西直接转化到DB中,而是映射成SQL,然后开发人员再对其进行处理,这样对不同的数据库可灵活的调整,这样性能上会有一定的提高。

9、FCKeditor

FCKeditor文本编辑程序(共享软件)为用户提供在线的文档编辑服务,其具有与微软office软件一样的功能,与之不同的是FCKeditor不需要用户安装任何形式的客户端,FCKeditor程序非常精简但功能强大,因此而受到广大应用者的青睐。在博客日益兴盛的web2.0时代FCKeditor已经开始走向普通人的视线。

10、DRW

DWR是Direct Web Remoting 的缩写。

   DWR(Direct Web Remoting)是一个WEB远程调用框架.利用这个框架可以让AJAX开发变得很简单.

   DWR 是一个开放源码的使用 Apache 许可协议的解决方案,它包含服务器端 Java 库、一个 DWR servlet 以及 JavaScript 库。虽然 DWR不是 Java 平台上唯一可用的 Ajax-RPC 工具包,但是它是最成熟的,而且提供了许多有用的功能。
从最简单的角度来说,DWR是一个引擎,可以把服务器端 Java 对象的方法公开给 JavaScript 代码。使用 DWR可以有效地从应用程序代码中把 Ajax 的全部请求-响应循环消除掉。这意味着客户端代码再也不需要直接处理 XMLHttpRequest 对象或者服务器的响应。不再需要编写对象的序列化代码或者使用第三方工具才能把对象变成 XML。甚至不再需要编写 servlet 代码把 Ajax 请求调整成对 Java 域对象的调用。
DWR 是作为 Web 应用程序中的 servlet 部署的。把它看作一个黑盒子,这个 servlet 有两个主要作用:首先,对于公开的每个类,DWR动态地生成包含在 Web 页面中的 JavaScript。生成的 JavaScript 包含存根函数,代表 Java 类上的对应方法并在幕后执行 XMLHttpRequest。这些请求被发送给 DWR,这时它的第二个作用就是把请求翻译成服务器端 Java 对象上的方法调用并把方法的返回值放在 servlet 响应中发送回客户端,编码成 JavaScript。DWR还提供了帮助执行常见的用户界面任务的 JavaScript 工具函数。

11、DBCP

DBCP是apache下面的一个开源的数据库连接池,和tomcat自己配置的连接池实现是同一性质的东西.

12、axis

全称:Apache EXtensible Interaction System 阿帕奇可扩展交互系统
  Axis本质上就是一个SOAP引擎,提供创建服务器端、客户端和网关SOAP操作的基本框架。Axis目前版本是为Java编写的,不过为C++的版本正在开发中。但Axis并不完全是一个SOAP引擎,它还包括:
  是一个独立的SOAP服务器。
  是一个嵌入Servlet引擎(例如Tomcat)的服务器。
  支持WSDL。
  提供转化WSDL为Java类的工具。
  提供例子程序。
  提供TCP/IP数据包监视工具。
  apache wsAxis是第三代Apache SOAP,从2000年起,SOAP v2开发小组开始讨论如何让Axis更加灵活、可配置,以及能够处理SOAP和来自W3C的各种XML标准。通过不断地讨论和代码编写,Axis目前取得了如下成果:
  速度提高。 Axis通过基于事件的SAX对XML文档进行处理,从而在速度和效率上比Apache SOAP有所提高。
  灵活性提高。
  稳定性提高。
  提供面向组件的部署。
  提供一个简洁的传输抽象框架。其核心引擎完全于传输方式独立。从而使基于何种协议传输的选择更加灵活。
  支持WSDL。包括到处WSDL和客户代理生成等。
  在目前发行1.1版本中有什么东西?
  SOAP1.1/1.2引擎。
  灵活的配置和部署系统。
  支持及时自动生成SOAP服务(JWS)。
  支持所有的基本数据类型,为自定义串行操作提供类型映射系统。
  JavaBean的自动串行操作,包括将自定义属性类型映射到XML的属性和元素。
  RPC和基于消息的SOAP服务提供者。
  从部署好的服务自动生成WSDL。
  WSDL2Java工具可以从WSDL描述文件中产生相应的客户和服务器端SOAP操作框架。
  初步提供安全扩展,能够与Servlet2.2安全集成。
  通过HTTP Cookie和与传输无关的SOAP头信息提供会话跟踪。
  初步支持带附件的SOAP消息。
  在EJB方面提供把EJB作为Web服务的访问途经。
  基于Servlet的HTTP传输。
  基于JMS的传输。
  独立的服务器(但需要HTTP 服务器和Servlet容器支持)。
  提供客户端、服务器端相关应用程序的样例。
  Axis的运行需要如下组件包
  axis.jar
  jaxrpc.jar
  saaj.jar
  commons-logging.jar
  commons-discovery.jar
  wsdl4j.jar
  符合JAXP-1.1的XML处理器。
  Axis的安装和使用

简单的说:

apache项目组的webservice服务器,把它放入tomcat下,就能实现webservice发布

上面的你都听说了吗?可能有些没有,这并不重要,重要的是,它们都不是绝对的,同样的WEB产品,实现的方法很多,采用的技术很多,有比这更多更好的技术展现。列举这些,只是作为一个代表,开发一个WEB产品,要大概用一些什么样技术,当然,这只是一部份,如还有其它的xml,html,js相关等等.

技术是无穷的,学习是无止境的````````````.

posted on 2009-04-27 10:40 重庆理工小子 阅读(2123) 评论(4)  编辑  收藏 所属分类: JAVA基础

FeedBack:
# re: 开发一个WEB产品可能用到的技术
2009-04-27 12:17 | koumei
为什么不关心数据库呢?不同的数据库,管理和开发的方式会略有诧异。你总得要创建个数据库才可以hibernate的拔?  回复  更多评论
  
# re: 开发一个WEB产品可能用到的技术
2009-04-27 16:05 | UP
呵呵,同意哈!
忽略了!  回复  更多评论
  
# re: 开发一个WEB产品可能用到的技术[未登录]
2009-04-28 00:52 | frank
10、DRW => DWR

  回复  更多评论
  
# re: 开发一个WEB产品可能用到的技术
2009-04-28 12:46 | UP
@frank
笔误!呵呵!你说得对!呵呵!只是标题错了!
本篇文章价值对老手不大,对新手可以给我们一个学习方向!  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: