JFox 3

来自开放百科 - 灰狐
(版本间的差异)
跳转到: 导航, 搜索
(MVC框架)
 
(未显示1个用户的7个中间版本)
第1行: 第1行:
[[Image:jfox3_arch.jpg|right|thumb|JFox3 架构]]
+
JFox 3 = 基于IoC的微内核 + Java EE 容器 + MVC框架
JFox 3 = Web Server(Tomcat/Jetty/Resin) + EJB 3 container + [[Spring]] + [[JavaServer Faces|JSF]]/[[Apache Struts|Struts]]/[[Apache Shale|Shale]] + [[Hibernate]]
+
  
 
我们将JFox 3定位为轻量的 Application Server + 集成的 Application Framework,来支持快速开发
 
我们将JFox 3定位为轻量的 Application Server + 集成的 Application Framework,来支持快速开发
第6行: 第5行:
 
JFox 自己的 Framework 将紧密耦合在 JFox AS 上的,但是用户也可以选择其它的 Framework,没有任何问题
 
JFox 自己的 Framework 将紧密耦合在 JFox AS 上的,但是用户也可以选择其它的 Framework,没有任何问题
  
我们在加入了一些 [[OSGi]] 的思想在 JFox 3 里面, 如果今后有 OSGi 的要求,我们可以考虑集成一个开源的OSGi 实现来解决这个问题
+
我们在加入了一些 [[OSGi]] 的思想在 JFox 3 里面, 如果今后有 OSGi 的要求,我们可以考虑集成一个开源的OSGi 实现来解决这个问题. [[Apache Felix]]是个选择方案, [[JOnAS]] 5 也采用Apache Felix作为其OSGi的基础
  
 
我们这次将给用户提供一个一揽子解决方案,应用很贴近他们的真实需求, 而且会比 Spring + JSF/Struts/Shale + Hibernate 更好用,更好管理
 
我们这次将给用户提供一个一揽子解决方案,应用很贴近他们的真实需求, 而且会比 Spring + JSF/Struts/Shale + Hibernate 更好用,更好管理
第12行: 第11行:
 
此外, 我们重新构建了 Petstore, 通过一个更加完善的 Petstore 来演示基于 JFox 3 的应用
 
此外, 我们重新构建了 Petstore, 通过一个更加完善的 Petstore 来演示基于 JFox 3 的应用
  
==JFox 3 特性==
+
==特性==
*1. 重新设计的 IoC 容器,融入 OSGi 模块化思想
+
JFox 3.0在以前版本的基础上进行较大的重构和改进,在尽可能兼容EJB 3规范的同时,保持JFox一直以来坚持轻量、简单、高效、实用的目标。
*2. 改为嵌入式架构,能够嵌入到任何 Java Web Server
+
*1.重新设计的 IoC 微内核,融入 OSGi 模块化思想
*3. 支持 EJB3, JPA
+
*2.设计成嵌入式架构,能够和任何 Java Web Server集成部署
*4. 采用JOTM提供事务处理
+
*3.支持 EJB3,JPA规范,支持容器内和容器外两种方式运行EJB和JPA组件
*5. 采用 XAPool 提供 XA DataSource
+
*4.支持EJB发布成Web Service
*6. 增加 MVC 框架,支持多模块,自动Form Mapping, Validator, 支持直接在Action中注入EJB,并支持JSP/Velocity/Freemarker,满足快开发需要
+
*5.采用JOTM(http://jotm.objectweb.org/)提供事务处理,支持两阶段提交(2PC)
*7. 提供 Manager 管理模块,可以查看各种运行时属性
+
*6.采用 XAPool(http://forge.objectweb.org/projects/xapool/) 提供 XA DataSource,支持智能连接池管理
*8. 根据JFox EJB3, JPA, MVC 特色完全重写 JPetstore
+
*7.内置 MVC 框架,实现自动Form Mapping,Validator,Uploading等功能,支持JSP/Velocity/Freemarker页面引擎,并支持直接在Action中注入EJB
 +
*8.支持多应用模块部署,让中大型应用充分享受模块化开发的带来的优势
 +
*9.提供 Manager 管理模块,可以查看和管理各种运行时参数
 +
*10.提供根据 JFox 特色重写的 Petstore 应用模块
 +
==标准==
 +
JFox 3支持标准如下:
 +
*支持EJB 规范 3.0
 +
*支持 JPA 规范 1.0
 +
*支持JMS 规范1.1
 +
*支持JNDI 规范1.2
 +
*支持JDBC规范3.0
 +
*支持JTA规范1.1
 +
*支持Servlet规范2.5
 +
*支持JSP规范2.1
 +
==架构==
 +
[[Image:jfox3-arch.jpg|right|thumb|JFox 3 Architecture]]
 +
JFox 包含了3个部分:
 +
===基于IoC的微内核===
 +
包含在 org.jfox.framework 中, 包含了三个重要的概念: Framework、Module 、Component
 +
 
 +
*Framework用来负责启动以及停止内核,同时它也管理整个微内核的资源,以及负责出发和传递事件。
 +
 
 +
*Module是模块,一个模块用来完成一个领域的问题,模块拥有封闭性,通过发布接口和其它模块进行交互,模块有自己个独立的ClassLoader,类加载器的加载路径为:conf, classes,WEB-INF/classes,lib,WEB-INF/lib。Framework会根据web.xml中的MODULES_DIR配置加载多个模块,Framework将本身也加载为一个模块,模块名为__SYSTEM_MODULE__。我们可以将一个应用模块做一个Module发布到JFox应用服务器中。
 +
 
 +
*Component 即为一个组件,用来实现一个特定的功能,组件被实现为Java类,它们都从org.jfox.frameowkr.component.Component继承而来,组件总是被加载在一个模块中。
 +
 
 +
尤其要注意 Module 和 Component的区别
 +
===Java EE容器===
 +
JFox 3提供支持EJB3和JPA组件的Java EE容器,包括服务组件有:JNDI,EJB Container,JTA Transaction Manager,JMS Message Service,JPA Container,DataSource。
 +
===MVC框架===
 +
JFox 提供MVC框架,它直接建立在JFox 微内核之上, 有了MVC,JFox应用服务器为企业应用开发提供了IoC + MVC + O/R Mapping + EJB3的整套开发平台,以满足企业开发对快速化、模块化的需要。
 +
 
 +
JFox MVC使用模板引擎(Apache Velocity/FreeMarker)来输出HTML
 +
 
 +
目前, JFox MVC仅支持将jsp作为模板使用.
 +
 
 +
在JFox MVC中, Action可以使用@EJB来注入EJB,@Resource从JNDI中注入资源,和在EJB中使用完全一样,这大大简化了Action对EJB容器资源的访问。
 +
 
 +
可以说,JFox MVC is EJB3 ready!
 +
 
 +
[[category:huihoo]]
 +
[[category:java]]
 +
[[category:JFox]]

2015年12月14日 (一) 06:24的最后版本

JFox 3 = 基于IoC的微内核 + Java EE 容器 + MVC框架

我们将JFox 3定位为轻量的 Application Server + 集成的 Application Framework,来支持快速开发

JFox 自己的 Framework 将紧密耦合在 JFox AS 上的,但是用户也可以选择其它的 Framework,没有任何问题

我们在加入了一些 OSGi 的思想在 JFox 3 里面, 如果今后有 OSGi 的要求,我们可以考虑集成一个开源的OSGi 实现来解决这个问题. Apache Felix是个选择方案, JOnAS 5 也采用Apache Felix作为其OSGi的基础

我们这次将给用户提供一个一揽子解决方案,应用很贴近他们的真实需求, 而且会比 Spring + JSF/Struts/Shale + Hibernate 更好用,更好管理

此外, 我们重新构建了 Petstore, 通过一个更加完善的 Petstore 来演示基于 JFox 3 的应用

目录

[编辑] 特性

JFox 3.0在以前版本的基础上进行较大的重构和改进,在尽可能兼容EJB 3规范的同时,保持JFox一直以来坚持轻量、简单、高效、实用的目标。

  • 1.重新设计的 IoC 微内核,融入 OSGi 模块化思想
  • 2.设计成嵌入式架构,能够和任何 Java Web Server集成部署
  • 3.支持 EJB3,JPA规范,支持容器内和容器外两种方式运行EJB和JPA组件
  • 4.支持EJB发布成Web Service
  • 5.采用JOTM(http://jotm.objectweb.org/)提供事务处理,支持两阶段提交(2PC)
  • 6.采用 XAPool(http://forge.objectweb.org/projects/xapool/) 提供 XA DataSource,支持智能连接池管理
  • 7.内置 MVC 框架,实现自动Form Mapping,Validator,Uploading等功能,支持JSP/Velocity/Freemarker页面引擎,并支持直接在Action中注入EJB
  • 8.支持多应用模块部署,让中大型应用充分享受模块化开发的带来的优势
  • 9.提供 Manager 管理模块,可以查看和管理各种运行时参数
  • 10.提供根据 JFox 特色重写的 Petstore 应用模块

[编辑] 标准

JFox 3支持标准如下:

  • 支持EJB 规范 3.0
  • 支持 JPA 规范 1.0
  • 支持JMS 规范1.1
  • 支持JNDI 规范1.2
  • 支持JDBC规范3.0
  • 支持JTA规范1.1
  • 支持Servlet规范2.5
  • 支持JSP规范2.1

[编辑] 架构

JFox 3 Architecture

JFox 包含了3个部分:

[编辑] 基于IoC的微内核

包含在 org.jfox.framework 中, 包含了三个重要的概念: Framework、Module 、Component

  • Framework用来负责启动以及停止内核,同时它也管理整个微内核的资源,以及负责出发和传递事件。
  • Module是模块,一个模块用来完成一个领域的问题,模块拥有封闭性,通过发布接口和其它模块进行交互,模块有自己个独立的ClassLoader,类加载器的加载路径为:conf, classes,WEB-INF/classes,lib,WEB-INF/lib。Framework会根据web.xml中的MODULES_DIR配置加载多个模块,Framework将本身也加载为一个模块,模块名为__SYSTEM_MODULE__。我们可以将一个应用模块做一个Module发布到JFox应用服务器中。
  • Component 即为一个组件,用来实现一个特定的功能,组件被实现为Java类,它们都从org.jfox.frameowkr.component.Component继承而来,组件总是被加载在一个模块中。

尤其要注意 Module 和 Component的区别

[编辑] Java EE容器

JFox 3提供支持EJB3和JPA组件的Java EE容器,包括服务组件有:JNDI,EJB Container,JTA Transaction Manager,JMS Message Service,JPA Container,DataSource。

[编辑] MVC框架

JFox 提供MVC框架,它直接建立在JFox 微内核之上, 有了MVC,JFox应用服务器为企业应用开发提供了IoC + MVC + O/R Mapping + EJB3的整套开发平台,以满足企业开发对快速化、模块化的需要。

JFox MVC使用模板引擎(Apache Velocity/FreeMarker)来输出HTML

目前, JFox MVC仅支持将jsp作为模板使用.

在JFox MVC中, Action可以使用@EJB来注入EJB,@Resource从JNDI中注入资源,和在EJB中使用完全一样,这大大简化了Action对EJB容器资源的访问。

可以说,JFox MVC is EJB3 ready!

分享您的观点
个人工具
名字空间

变换
操作
导航
工具箱