简单java开源代码 java 开源 快速开发平台

什么是java开源项目?谁能简单地给我讲一下!目的?过程?成果?用途?Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称 。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力简单java开源代码:跨平台、动态的Web、Internet计算 。从此简单java开源代码,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet 。另一方面,Java技术也不断更新 。
Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface、简称API)构成 。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分 。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行 。现在Java平台已经嵌入了几乎所有的操作系统 。这样Java程序可以只编译一次 , 就可以在各种系统中运行 。Java应用编程接口已经从1.1x版发展到1.2版 。目前常用的Java平台基于Java1.4,最近版本为Java1.7 。
Java分为三个体系J2SE(Java2 Standard Edition),J2EE(Java 2 Platform,Enterprise Edition) , J2ME(Java 2 Micro Edition) 。
[编辑本段]Java语言特点
Java是一种简单的,面向对象的,分布式的 , 解释型的,健壮安全的,结构中立的,可移植的 , 性能优异、多线程的动态语言 。
当1995年SUN推出Java语言之后,全世界的目光都被这个神奇的语言所吸引 。那么Java到底有何神奇之处呢?
Java语言其实最早诞生于1991年,起初被称为OAK语言,是SUN公司为一些消费性电子产品而设计的一个通用环境 。他们最初的目的只是为了开发一种独立于平台的软件技术,而且在网络出现之前,OAK可以说是默默无闻,甚至差点夭折 。但是,网络的出现改变了OAK的命运 。
在Java出现以前,Internet上的信息内容都是一些乏味死板的HTML文档 。这对于那些迷恋于WEB浏览的人们来说简直不可容忍 。他们迫切希望能在WEB中看到一些交互式的内容,开发人员也极希望能够在WEB上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障 。对于用户的这种要求,传统的编程语言显得无能为力 。SUN的工程师敏锐地察觉到了这一点,从1994年起,他们开始将OAK技术应用于WEB上,并且开发出了HotJava的第一个版本 。当SUN公司1995年正式以Java这个名字推出的时候 , 几乎所有的WEB开发人员都心生感叹:噢 , 这正是我想要的!于是Java成了一颗耀眼的明星,丑小鸭一下了变成了白天鹅 。
[编辑本段]Java主要特性
1、Java语言是简单的 。Java语言的语法与C语言和C语言很接近,使得大多数程序员很容易学习和使用Java 。另一方面,Java丢弃了C中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换 。特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧 。
2、Java语言是一个面向对象的 。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements) 。Java语言全面支持动态绑定,而C语言只对虚函数使用动态绑定 。总之 , Java语言是一个纯的面向对象程序设计语言 。
3、Java语言是分布式的 。Java语言支持Internet应用的开发 , 在基本的Java应用编程接口中有一个网络应用编程接口(java.net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、 ServerSocket等 。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段 。
4、Java语言是健壮的 。Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证 。对指针的丢弃是Java的明智选择 。Java的安全检查机制使得Java更具健壮性 。
5、Java语言是安全的 。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击 。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵 。
6、Java语言是体系结构中立的 。Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件), 然后可以在实现这个Java平台的任何系统中运行 。这种途径适合于异构的网络环境和软件的分发 。
7、Java语言是可移植的 。这种可移植性来源于体系结构中立性 , 另外,Java还严格规定了各个基本数据类型的长度 。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的 。
8、Java语言是解释型的 。如前所述,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行 。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中 。
9、Java是高性能的 。与那些解释型的高级脚本语言相比,Java的确是高性能的 。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C。
10、Java语言是多线程的 。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建 。通常有两种方法来创建线程:其一,使用型构为Thread(Runnable) 的构造子将一个实现了Runnable接口的对象包装成一个线程 , 其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程 。值得注意的是Thread类已经实现了Runnable接口 , 因此 , 任何一个线程均有它的run方法 , 而run方法中包含了线程所要运行的代码 。线程的活动由一组方法来控制 。Java语言支持多个线程的同时执行 , 并提供多线程之间的同步机制(关键字为synchronized) 。
11、Java语言是动态的 。Java语言的设计目标之一是适应于动态变化的环境 。Java程序需要的类能够动态地被载入到运行环境 , 也可以通过网络来载入所需要的类 。这也有利于软件的升级 。另外 , Java中的类有一个运行时刻的表示 , 能进行运行时刻的类型检查 。
Java语言的优良特性使得Java应用具有无比的健壮性和可靠性 , 这也减少了应用系统的维护费用 。Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本 。Java的编译一次 , 到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式 。特别是Java企业应用编程接口(Java Enterprise APIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库 。
[编辑本段]Java相关技术
1、JDBC(Java Database Connectivity)提供连接各种关系数据库的统一接口 。
2、EJB(Enterprise JavaBeans)使得开发者方便地创建、部署和管理跨平台的基于组件的企业应用 。
3、Java RMI(Java Remote Method Invocation)用来开发分布式Java应用程序 。一个Java对象的方法能被远程Java虚拟机调用 。这样 , 远程方法激活可以发生在对等的两端,也可以发生在客户端和服务器之间,只要双方的应用程序都是用Java写的 。
4、Java IDL(Java Interface Definition Language) 提供与CORBA(Common Object Request Broker Architecture)的无缝的互操作性 。这使得Java能集成异构的商务信息资源 。
5、JNDI(Java Naming and Directory Interface)提供从Java平台到的统一的无缝的连接 。这个接口屏蔽了企业网络所使用的各种命名和目录服务 。
6、JMAPI(Java Management API)为异构网络上系统、网络和服务管理的开发提供一整套丰富的对象和方法 。
7、JMS(Java Message Service)提供企业消息服务,如可靠的消息队列、发布和订阅通信、以及有关推拉(Push/Pull)技术的各个方面 。
8、JTS(Java transaction Service)提供存取事务处理资源的开放标准,这些事务处理资源包括事务处理应用程序、事务处理管理及监控 。
【简单java开源代码 java 开源 快速开发平台】在Java技术中,值得关注的还有JavaBeans , 它是一个开放的标准的组件体系结构,它独立于平台,但使用Java语言 。一个JavaBean是一个满足JavaBeans规范的Java类,通常定义了一个现实世界的事物或概念 。一个JavaBean的主要特征包括属性、方法和事件 。通常 , 在一个支持JavaBeans规范的开发环境(如Sun Java Studio 和IBM VisualAge for Java)中,可以可视地操作JavaBean,也可以使用JavaBean构造出新的JavaBean 。JavaBean的优势还在于Java带来的可移植性 。现在,EJB (Enterprise JavaBeans) 将JavaBean概念扩展到Java服务端组件体系结构,这个模型支持多层的分布式对象应用 。除了JavaBeans,典型的组件体系结构还有DCOM和CORBA,关于这些组件体系结构的深入讨论超出了本书的范围 。
[编辑本段]Java开源项目
Spring Framework
Spring 是一个解决了许多在J2EE开发中常见的问题的强大框架 。Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯 。Spring的架构基础是基于使用JavaBean属性的 Inversion of Control容器 。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的 。Spring提供了唯一的数据访问抽象 , 包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误 。Spring的数据访问架构还集成了 Hibernate和其他O/R mapping解决方案 。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型 。Spring提供了一个用标准Java语言编写的AOP框架 , 它给POJOs提供了声明式的事务管理和其他企业事务--如果你需要--还能实现你自己的 aspects 。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务 。Spring还提供了可以和IoC容器集成的强大而灵活的MVC Web框架 。.
WebWork
WebWork 是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EE Web框架 。WebWork目前最新版本是2.1,现在的WebWork2.x前身是Rickard Oberg开发的WebWork,但现在WebWork已经被拆分成了Xwork1和WebWork2两个项目 。Xwork简洁、灵活功能强大,它是一个标准的Command模式实现,并且完全从web层脱离出来 。Xwork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性验证 , 类型转换,强大的表达式语言(OGNL – the Object Graph Notation Language),IoC(Inversion of Control倒置控制)容器等 。WebWork2建立在Xwork之上,处理HTTP的响应和请求 。WebWork2使用ServletDispatcher将HTTP请求的变成 Action(业务层Action类), session(会话)application(应用程序)范围的映射,request请求参数映射 。WebWork2支持多视图表示,视图部分可以使用 JSP, Velocity, FreeMarker, JasperReports,XML等 。在WebWork2.2中添加了对AJAX的支持,这支持是构建在DWR与Dojo这两个框架的基础之上.
Struts
Struts 是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的 。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速 , 在过去的一年中颇受关注 。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式 , 极大的节省了时间,所以说Struts是一个非常不错的应用框架 。
Hibernate
Hibernate 是一个开放源代码的对象关系映射框架 , 它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库 。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用 , 最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任 。Eclipse平台下的Hibernate辅助开发工具:
Quartz
Quartz 是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用 。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的日程序表 。Jobs可以做成标准的Java组件或 EJBs 。Quartz的最新版本为Quartz 1.5.0 。
Velocity
Velocity 是一个基于java的模板引擎(template engine) 。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象 。当Velocity应用于web开发时 , 界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只关注页面的显示效果,而由java程序开发人员关注业务逻辑编码 。Velocity将java代码从web页面中分离出来,这样为web站点的长期维护提供了便利,同时也为我们在JSP和PHP之外又提供了一种可选的方案 。Velocity的能力远不止web站点开发这个领域 , 例如 , 它可以从模板(template)产生SQL和PostScript、XML,它也可以被当作一个独立工具来产生源代码和报告,或者作为其他系统的集成组件使用 。Velocity也可以为Turbine web开发架构提供模板服务(template service) 。Velocity Turbine提供一个模板服务的方式允许一个web应用以一个真正的MVC模型进行开发 。
IBATIS
使用ibatis 提供的ORM机制,对业务逻辑实现人员而言,面对的是纯粹的Java对象,这一层与通过Hibernate 实现ORM 而言基本一致,而对于具体的数据操作 , Hibernate 会自动生成SQL 语句 , 而ibatis 则要求开发者编写具体的SQL 语句 。相对Hibernate等 “全自动”ORM机制而言,ibatis 以SQL开发的工作量和数据库移植性上的让步,为系统设计提供了更大的自由空间 。作为“全自动”ORM 实现的一种有益补充,ibatis 的出现显 得别具意义 。
Compiere ERPCRM
Compiere ERPCRM为全球范围内的中小型企业提供综合型解决方案 , 覆盖从客户管理、供应链到财务管理的全部领域,支持多组织、多币种、多会计模式、多成本计算、多语种、多税制等国际化特性 。易于安装、易于实施、易于使用 。只需要短短几个小时,您就可以使用申购-采购-发票-付款、报价-订单-发票-收款、产品与定价、资产管理、客户关系、供应商关系、员工关系、经营业绩分析等强大功能了 。
Roller Weblogger
这个weblogging 设计得比较精巧 , 源代码是很好的学习资料 。它支持weblogging应有的特性如:评论功能,所见即所得HTML编辑,TrackBack,提供页面模板,RSS syndication , blogroll管理和提供一个XML-RPC 接口 。
Eclipse
Eclipse平台是IBM向开发源码社区捐赠的开发框架,它之所以出名并不是因为IBM宣称投入开发的资金总数 —4千万美元,而是因为如此巨大的投入所带来的成果:一个成熟的、精心设计的以及可扩展的体系结构 。
NetBeans
NetBeans IDE 是一个为软件开发者提供的自由、开源的集成开发环境 。您可以从中获得您所需要的所有工具,用 Java、C/C甚至是 Ruby 来创建专业的桌面应用程序、企业应用程序、web 和移动应用程序 。此 IDE 可以在多种平台上运行 , 包括 Windows、Linux、Mac OS X 以及 Solaris简单java开源代码;它易于安装且非常方便使用 。
XPlanner
XPlanner 一个基于Web的XP团队计划和跟踪工具 。XP独特的开发概念如iteration、user stories等 , XPlanner都提供了相对应的的管理工具,XPlanner支持XP开发流程,并解决利用XP思想来开发项目所碰到的问题 。XPlanner特点包括:简单的模型规划,虚拟笔记卡(Virtual note cards),iterations、user stories与工作记录的追踪 , 未完成stories将自动迭代,工作时间追踪,生成团队效率,个人工时报表,SOAP界面支持 。
HSQLDB
HSQLDB(Hypersonic SQL)是纯Java开发的关系型数据库,并提供JDBC驱动存取数据 。支持ANSI-92 标准 SQL语法 。而且他占的空间很小 。大约只有160K,拥有快速的数据库引擎 。
Liferay
代表了完整的J2EE应用,使用了Web、EJB以及JMS等技术 , 特别是其前台界面部分使用Struts 框架技术,基于XML的portlet配置文件可以自由地动态扩展,使用了Web Services来支持一些远程信息的获取,使用 Apahce Lucene实现全文检索功能 。
JetSpeed
Jetspeed 是一个开放源代码的企业信息门户(EIP)的实现,使用的技术是Java和XML 。用户可以使用浏览器,支持WAP协议的手机或者其它的设备访问Jetspeed架设的信息门户获取信息 。Jetspeed扮演着信息集中器的角色 , 它能够把信息集中起来并且很容易地提供给用户 。
JOnAS
JOnAS 是一个开放源代码的J2EE实现 , 在ObjectWeb协会中开发 。整合了Tomcat或Jetty成为它的Web容器,以确保符合Servlet 2.3和JSP 1.2规范 。JOnAS服务器依赖或实现以下的Java API:JCA、JDBC、JTA 、JMS、JMX、JNDI、JAAS、JavaMail。
JFox3.0
JFox 是 Open Source Java EE Application Server,致力于提供轻量级的Java EE应用服务器,从3.0开始,JFox提供了一个支持模块化的MVC框架,以简化EJB以及Web应用的开发! 如果您正在寻找一个简单、轻量、高效、完善的Java EE开发平台 , 那么JFox正是您需要的 。
[编辑本段]Java版本历史
1995年5月23日,Java语言诞生
1996年1月,第一个JDK-JDK1.0诞生
1996年4月,10个最主要的操作系统供应商申明将在其产品中嵌入JAVA技术
1996年9月,约8.3万个网页应用了JAVA技术来制作
1997年2月18日 , JDK1.1发布
1997年4月2日 , JavaOne会议召开,参与者逾一万人,创当时全球同类会议规模之纪录
1997年9月 , JavaDeveloperConnection社区成员超过十万
1998年2月,JDK1.1被下载超过2,000,000次
1998年12月8日,JAVA2企业平台J2EE发布
1999年6月,SUN公司发布Java的三个版本:标准版(J2SE)、企业版(J2EE)和微型版(J2ME)
2000年5月8日,JDK1.3发布
2000年5月29日,JDK1.4发布
2001年6月5日,NOKIA宣布,到2003年将出售1亿部支持Java的手机
2001年9月24日,J2EE1.3发布
2002年2月26日,J2SE1.4发布,自此Java的计算能力有了大幅提升
2004年9月30日18:00PM , J2SE1.5发布,成为Java语言发展史上的又一里程碑 。为了表示该版本的重要性,J2SE1.5更名为Java SE 5.0
2005年6月,JavaOne大会召开,SUN公司公开Java SE 6 。此时,Java的各种版本已经更名,以取消其中的数字“2”:J2EE更名为Java EE,J2SE更名为Java SE,J2ME更名为Java ME
2006年12月,SUN公司发布JRE6.0
目前JDK7.0已经在研发中,已经有测试版在可以下载使用
[编辑本段]Java与Internet
我们知道,早先的www仅可以传送文本和图片,Java的出现实现了互动的页面 , 是一次伟大的革命 。
Java并不是为Internet、www而设计的,它也可以用来编写独立的应用程序 。Java是一种面向对象语言 , Java语言类似于C语言,所以已熟练掌握C语言的编程人员 , 再学习Java语言就容易得多!Java程序需要编译,它被放置在Internet服务器上,当用户访问服务器时,Java程序被下载到本地的用户机上,由浏览器解释运行 。实际上有两种Java程序:一种Java应用程序是一个完整的程序,如Web浏览器 。另一种Java小应用程序是运行于Web浏览器中的一个程序 。
Java程序和它的浏览器HotJava,提供了可让你的浏览器运行程序的方法 。你能从你的浏览器里直接播放声音,你还能播放页面里的动画 , Java还能告诉你的浏览器怎样处理新的类型文件 。当我们能在2400 baud线上传输视频图象时,HotJava将能显示这些视频 。
[编辑本段]Java与电子商务
电子商务是当今的热门话题 , 然而传统的编程语言难以胜任电子商务系统 , 电子商务要求程序代码具有基本的要求:安全、可靠、同时要求能与运行于不同平台的机器的全世界客户开展业务 。Java以其强安全性、平台无关性、硬件结构无关性、语言简洁同时面向对象,在网络编程语言中占据无可比拟的优势,成为实现电子商务系统的首选语言 。
[编辑本段]Java的八大基本数据类型及其包装类
原始类型 包装类
short Short
int Integer
long Long
float Float
double Double
byte Byte
char Character
boolean Boolean
[编辑本段]第一个JAVA程序HelloWorld
//文件名 HelloWorld.java
//声明一个类
public class HelloWorld {
//声明一个方法
public static void main(String[] args){
//输出
System.out.println("hello world!");
}
}
如何阅读 Java 开源代码准备好环境,比如安装好Eclipse,IDEA等你喜欢的集成开发环境
准备好Maven环境
创建一个项目,把你要研究的开源项目pom引入进来
使用maven把源代码下载下来
写一个简单的例子使用开源代码
分析从启动开始,断点调试,看看调用了哪些方法,每个方法是怎么实现的
所有方法都断点了一遍,你在这个过程中实际上已经了解了开源代码是怎么实现具体功能的了
java开源框架的源代码怎么读?Java开源框架的源代码怎么读?说读开源框架的源代码对自己写程序很有帮助的,我不知道从那里下手
找一个你熟悉的项目,下回来源码 , 然后单步跟踪一遍,前题有一定基?。?至少会单步跟踪调试对ide也得熟悉些,项目别选太大的 , 像apache里面的项目都还可以 。一开始还是比较艰难的,时间长了就好了 。
如同你看不懂高手过招一样 。
还是一步一步的来吧 。
先看一些基础知识,写一些东西,然后重点看自己用到的 , 或者即将用到的部分 , 这样提高效果会更好 。
开始的时候是把源代码关联,有不明白的地方可以ctrl直接过去看 。之后有一些积攒之后 , 可以去看开源项目中的闪亮的地方,比如Spring中的IOC 。然后参照自己去实现一个简单的DEMO , 之中可以参考一些资料 。个人理解这样会比较快速的将一个项目中的一部分较为深入的了解 。毕竟一个成熟的开源项目技术的积攒及范围都比较大 。完全了解没有必要也没有可能 。
我读Spring的经验 。
首先要搞清它大体的处理步骤,然后再去详细看每个类的具体内容 。读代码,最忌从一开始就企图详细理解一个大工程的所有细节 。先看大匡,然后再逐步掌握自己感兴趣的细节 。
读代码的时候可以把框架的代码读取到IDE的工程中去 ,
例如,用Eclipse读代码,方便得很 。
或者在开发中设定classpath时,把代码也带上 ,
个人认为 , 多看例如JDK、Spring这样优秀的代码,对于掌握Java编程的精髓很有帮助 。
初学者也不例外!
其实框架就是DB访问,画面显示,资源管理 。
首先要知道你的框架的特点,也就是他的侧重点 。
我看源代码喜欢全局搜索,一直找到Java自带的基础类 。一条先走到黑 。嗬嗬,挺笨的
不过建议先会用,熟练用,在研读 。会快一些,少走弯路
不管是在校的学生还是刚参加工作的 , 都要从基础开始,把一些经典的基础问题搞明白了之后再去研究框架,其实感觉框架要先明白框架的总体,有时候不明白框架甚至看着源代码都不知道属于哪一类,引入也会产生问题,之后在去看源代码 。最主要的是光看不行,要亲手做一下,即使是最简单的程序也要亲手做 , 如果是人家的程序照着手动敲一遍也会有很大的收获的
对于开源项目 , 我觉得从如下方面着手比较好:
2.了解整体项目的技术架构
3.熟悉它用的技术与知识面,并逐个掌握
4.从单个模块着手,调试代码,熟悉基基本的流程与业务
5.在不修改其源码的基础上做一些扩展开发的工作,为我所用6.修改并优化其代码
java有什么常用开源的框架?java常用开源框架如下:\x0d\x0a1.Spring Framework 【Java开源JEE框架】\x0d\x0a\x0d\x0aSpring是一个解决了许多在J2EE开发中常见的问题的强大框架 。Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯 。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器 。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的 。\x0d\x0a\x0d\x0a2.WebWork 【Java开源Web开发框架】\x0d\x0a\x0d\x0aWebWork是由OpenSymphony组织开发的,致力于组件化和代码重用的拉出式MVC模式J2EE Web框架 。\x0d\x0a\x0d\x0a3.Struts 【Java开源Web开发框架】\x0d\x0a\x0d\x0aStruts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的 。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速 , 在过去的一年中颇受关注 。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中\x0d\x0a\x0d\x0a4.Hibernate 【Java开源持久层框架】\x0d\x0a\x0d\x0aHibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装 , 使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库 。Hibernate可以应用在任何使用JDBC的场合\x0d\x0a\x0d\x0a5.Quartz 【Java开源调度框架】\x0d\x0a\x0d\x0aQuartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用 。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的日程序表 。\x0d\x0a\x0d\x0a6.Velocity 【Java开源模板引擎】\x0d\x0a\x0d\x0aVelocity是一个基于java的模板引擎(template engine) 。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象 。当Velocity应用于web开发时,界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说 , 页面设计人员可以只关注页面的显示效果,而由java程序开发人员关注业务逻辑编码 。Velocity将java代码从web页面中分离出来,这样为web站点的长期维护提供了便利,同时也为我们在JSP和PHP之外又提供了一种可选的方案 。\x0d\x0a\x0d\x0a7.IBATIS 【Java开源持久层框架】\x0d\x0a\x0d\x0a使用ibatis 提供的ORM机制,对业务逻辑实现人员而言,面对的是纯粹的Java对象 , 这一层与通过Hibernate 实现ORM 而言基本一致 , 而对于具体的数据操作 , Hibernate 会自动生成SQL 语句,而ibatis 则要求开发者编写具体的SQL 语句 。相对Hibernate等 “全自动”ORM机制而言,ibatis 以SQL开发的工作量和数据库移植性上的让步 , 为系统 设计提供了更大的自由空间 。作为“全自动”ORM 实现的一种有益补充,ibatis 的出现显 得别具意义 。
介绍几个JAVA的AOP框架开源项目基于Java简单java开源代码的简单、动态、轻量级、强大简单java开源代码的AOP框架 。既强大又简单简单java开源代码,有助于更容易简单java开源代码的集成AOP到新的或已存在的项目中 。
AspectWerkz 主要特性:
1. 运行时和加载时字节码修正:你可以在运行时或编译时轻松的改造任何(旧)应用程序或除简单java开源代码了rt.jar以外的外部类库
2. 支持join point模型
3. 支持Annotation:匹配JavaDoc和JSR-175 , 支持用户自定义Annotation
4. 支持部署多个Aspect定义文件到部署的应用程序(WEB-INF/aop.xml、META-INF/aop.xml)
5. Introduction/内类型声明(也称Mixin),也就是具有添加接口和实现到已存在的类中的能力
6. Annotation定义:定义Aspect使用的运行时Annotation(为JSR-175准备)
7. XML定义:定义Aspect使用的XML;XML可以用来精炼、改写和解析Annotation定义
8. 插件式Aspect管理器能够和IoC框架(如Spring或PicoContainer)一起工作
9. 四种不同的Advice和Introduction部署模型(范围):perJVM(单模式)、 perClass、perInstance 和perThread
10. Advice和Introduction能够动态部署、反部署或重新部署
11. 高性能,使用JIT编译
12. 使用Fine-grained模式语言选择join point
13. 所有Advice能够和所有的join point和各种混合类型的pointcut
14. 脱机变换(可以用作后处理器)
15. Aspect、Advice和Introduction使用POJO编码
16. 目标类可以是正规的POJO,也就是不需要接口
17. 支持通过定义传递参数给Advice和定义可重用的Advice堆栈
18. 元数据被加到类中
19. 简单的用法和配置
AspectWerkz在Eclipse下的辅助开发插件→
更多AspectWerkz信息
JBoss AOP
JBoss 4.0带了一个AOP框架 。这个框架和JBoss应用服务器紧密地结合 , 但是你也能够在你的应用中 , 单独的运行它 。
更多JBoss AOP信息
Nanning
一个虽然简单但也是一个java开源的AOP框架 。名字以中文的拼音拼写就是广西的南宁 。
更多Nanning信息
JAC
JAC (Java Aspect Components)是一个应用服务器 。它为Java2平台、用于Java开发的企业开发环境(J2EE)、和基于Web的分布式应用 , 提供开放式资源的又一个选择(在GNU次常规公共许可证下发布) 。JAC包括统一模型语言(UML)IDE , 该UML IDE模块化应用商业逻辑并且自动生成和编译纯商业逻辑Java类 。这些类 , 在JAC容器内执行,可从一组技术和/或商业的横切关系(crosscutting concerns)[1] 如数据持久性、认证、配置文件管理、访问权限检测、演示、和负载平衡中无缝地受益 。基于面向方面编程技术(AOP)的JAC将这些关系( concerns)[2]从应用程序的核心商业逻辑中分离出来 。
更多JAC信息
DynamicAspects
DynamicAspects能够让你使用java编写的面向切面的程序设计,它使用在Sun JDK 1.5中介绍的"instrumentation"与"agent",Aspects能够软件各模块之间的关系在运行期安装与使用 。
更多DynamicAspects信息
dynaop
dynaop框架使用一个基于运行时的编程机制将AOP代码插入对象中,而不是返回一个具有特征代码的对象 。AOP将是面向对象设计(OO)的一个新的领域 。
更多dynaop信息
CAESAR
CAESAR是一个新的与Java兼容的AOP语言 。所有java程序多能使用CAESAR 。
更多CAESAR信息
PROSE
PROSE是一个动态编排(weaving)工具(允许在运行期插入或抽取aspects) 。PROSE aspects是规则的Java对象能够被发送到或从网络上的计算机接收 。签名可被用于保证它们的完整性 。一旦一个aspect插入到JVM中,任何事件的发生将影响在相应aspect advice执行的结果 。假如一个aspect从JVM中撤消,aspect代码将被丢弃并且相应的拦截也将不会再发生 。PROSE aspects是规则的Java对象能够被发送到或从网络上的计算机接收 。签名可被用于保证它们的完整性 。一旦一个aspect插入到JVM中,任何事件的发生将影响在相应aspect advice执行的结果 。假如一个aspect从JVM中撤消,aspect代码将被丢弃并且相应的拦截也将不会再发生 。下图是PROSE的体系结构图:
更多PROSE信息
FastAOP
FastAOP是一个高性能AOP框架 。最初开发该框架是为了支持对大型J2EE应用程序进行性能剖析和监测 。它几乎不占用运行时间 。FastAOP已经在Websphere和Jboss应用服务器上得到成功测试 。
更多FastAOP信息
Plastic
Plastic是一个构建在ASM 3.3之上的AOP工具包 。支持类的基本加载和实例化 。引进新的属性 。不需要使用反射就能够访问私有属性和方法 。重写属性访问权限 。注入属性 。Method advice(在调用现在方法之后/之前执行一些逻辑) 。DIV class=date收录时间:2011-05-25 15:25:03/DIV
更多Plastic信息
java开源的其它Quartz 【Java开源 Job调度】
Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用 。Quartz可以用来创建简单或为运行十个,百个 , 甚至是好几万个Jobs这样复杂的日程序表 。Jobs可以做成标准的Java组件或 EJBs 。Quartz的最新版本为Quartz 1.5.0 。
Velocity 【Java开源 模板引擎】
Velocity是一个基于java的模板引擎(template engine) 。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象 。当Velocity应用于web开发时,界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点 , 也就是说,页面设计人员可以只关注页面的显示效果,而由java程序开发人员关注业务逻辑编码 。Velocity将java代码从web页面中分离出来,这样为web站点的长期维护提供简单java开源代码了便利,同时也为简单java开源代码我们在JSP和PHP之外又提供了一种可选的方案 。Velocity的能力远不止web站点开发这个领域,例如,它可以从模板(template)产生SQL和PostScript、XML , 它也可以被当作一个独立工具来产生源代码和报告,或者作为其他系统的集成组件使用 。Velocity也可以为Turbine web开发架构提供模板服务(template service) 。Velocity Turbine提供一个模板服务的方式允许一个web应用以一个真正的MVC模型进行开发 。【VeloEclipse :Velocity在Eclipse平台下的一个辅助开发插件】
Roller Weblogger 【Java开源 Blog博客】
这个weblogging 设计得比较精巧,源代码是很好的学习资料 。它支持weblogging应有的特性如:评论功能,所见即所得HTML编辑,TrackBack , 提供页面模板,RSS syndication,blogroll管理和提供一个XML-RPC 接口 。
XPlanner 【Java开源 项目管理】
XPlanner 一个基于Web的XP团队计划和跟踪工具 。XP独特的开发概念如iteration、user stories等,XPlanner都提供了相对应的的管理工具,XPlanner支持XP开发流程 , 并解决利用XP思想来开发项目所碰到的问题 。XPlanner特点包括:简单的模型规划,虚拟笔记卡(Virtual note cards),iterations、user stories与工作记录的追踪,未完成stories将自动迭代 , 工作时间追踪,生成团队效率,个人工时报表,SOAP界面支持 。
JOnAS 【Java开源 J2EE服务器】
JOnAS是一个开放源代码的J2EE实现,在ObjectWeb协会中开发 。整合了Tomcat或Jetty成为它的Web容器,以确保符合Servlet 2.3和JSP 1.2规范 。JOnAS服务器依赖或实现以下的Java API:JCA、JDBC、JTA 、JMS、JMX、JNDI、JAAS、JavaMail。
FreeMarker 【Java开源 模板引擎】
FreeMarker允许Java servlet保持图形设计同应用程序逻辑的分离,这是通过在模板中密封HTML完成的 。模板用servlet提供的数据动态地生成 HTML 。模板语言是强大的直观的,编译器速度快,输出接近静态HTML页面的速度 。
【FreeMarker Eclipse Plugin与FreeMarker IDE:Eclipse平台下的辅助开发工具】
Lucene 【Java开源 全文检索】
Apache Lucene是一个开放源程序的搜寻器引擎,利用它可以轻易地为Java软件加入全文搜寻功能 。Lucene的最主要工作是替文件的每一个字作索引,索引让搜寻的效率比传统的逐字比较大大提高,Lucen提供一组解读,过滤,分析文件,编排和使用索引的API,它的强大之处除了高效和简单外,是最重要的是使使用者可以随时应自己需要自订其功能 。
Beanshell 【Java开源 动态语言】
Beanshell是用Java写成的,一个小型的、免费的、可以下载的、嵌入式的Java源代码解释器,具有对象脚本语言特性 。BeanShell执行标准Java语句和表达式,另外包括一些脚本命令和语法 。它将脚本化对象看作简单闭包方法(simple method closure)来支持 , 就如同在Perl和JavaScript中的一样 。它具有以下的一些特点:使用Java反射API以提供Java语句和表达式的实时解释执行;可以透明地访问任何Java对象和API;可以在命令行模式、控制台模式、小程序模式和远程线程服务器模式等四种模式下面运行;与在应用程序中一样,可以在小程序中(Applet)正常运行(无需编译器或者类装载器);非常精简的解释器jar文件大小为175k
Big Two 【Java开源 Java游戏】
采用Java开发的中国式纸牌升级游戏 。源码下载
JBoss SSO Framework 【Java开源 身份认证管理】
JBoss SSO Framework是一个组件集能够很容易集成到现有的web应用中提供单一登录功能.该框架已经能够支持一些重要的SSO标准如SAML 。整个系统包括以下组件:
1.联合服务器(Federation Server)– 一个联合服务器用于为放置在不同安全域(security domain)中的web应用程序安全地传播Federation Token 。
2.Token编排框架(Token Marshalling Framework)– 这是一组灵活的/可插件的Java API用来marshal/unmarshal一个Federation Token 。该系统默认提供一个SAML兼容的编排器(Marshaller)。
3.身份管管理框架(Identity Management Framework)–这是一组灵活的/可插件的Java API用来连接中中央身份存储库(Identity Store) 。该系统默认提供一个Provider来连接基于LDAP的身份存储库 。
JawFlow 【Java开源 开源工作流】
JawFlow是一个部分遵循WfMC规范 , 采用JMX技术开发的工作流引擎 。它能够解析XPDL , 并能够用Java或BSF支持的脚本语言来自定义行为 。
rails-asyncweb 【Java开源 Web服务器】
用于JRuby on Rails的一个快速Http服务器 。
jBatchEngine 【Java开源 Job调度】
jBatchEngine是一个采用Java开发的批任务spooler 。jBatchEngine与其它以时间为驱动的Job调度引擎不同之处在于它是以事件以驱动,可用于启动任何批处理程序 。jBatchEngine可以安装成一个Windows Service或一个Unix Daemon 。
Gant 【Java开源 项目构建】
Gant是一个基于Ant的构建工具,它采用Groovy脚本代替XML来编写构建逻辑 。Gant完全依赖于Ant task来做真正的事情,所以你如果用Ant实现构建,但不喜欢用XML构建文件,Gant是一个不错的选择 。
Jaxmao 【Java开源 Web服务器】
Tomcat是开源的JSP/Servlet服务器 。多年的开发使Tomcat已越来越完善,被越来越多的网站采用 。Jaxmao(中文版Tomcat)项目的任务是为Tomcat提供一个友好的中文界面,推广Tomcat在中文JSP/Serlet 开发者中的使用 。
Metanotion BlockFile 【Java开源 DBMS数据库】
BlockFile一个100%纯Java,轻量级,单个文件嵌入式数据库 。它的功能介于SQLite与BerkeleyDB之间 。专门为PDA和Mobile应用程序而开发 。
JRuleEngine 【Java开源 规则引擎】
JRuleEngine基于JSR94规范的java规则引擎 。
JBasic 【Java开源 动态语言】
JBasic是一个完全采用Java开发的BASIC语言解释器 。JBasic可运行在大部分Unix系统(包括Mac OS X),Windows command shell,或VMS DCL command line 。
jSoapServer 【Java开源 Web Service】
jSoapServer这个Java类包可以集成到Java应用程序中为外部程序提供一个SOAP接口 。jSoapServer是一个独立的SOAP服务器,因此不需要让Java程序运行在像Tomcat这样的容器中 。
Artistic Style 【Java开源 代码优化】
Artistic Style是一个C,C,C#和Java源代码缩排/格式化/美化工具 。
JLoom 【Java开源 模板引擎】
JLoom是一个采用类似于JSP语法的模板引擎 。参数可以是任何Java类型,甚至是泛型(generic) 。JLoom还提供一个Eclipse插件来辅助开发 。
Liquid lookfeel 【Java开源 Swing外观】
基于Mosfet Liquid KDE 3.x主题的Swing外观 。
MicroNova YUZU 【Java开源 JSP标签】
MicroNova YUZU开源基于EL的JSP标签库 。这是一个增强的JSTL(兼容JSP1.2与JSP 2.0) 。
关于简单java开源代码和java 开源 快速开发平台的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读