该帖已经被评为隐藏帖
|
|
---|---|
作者 | 正文 |
发表时间:2010-11-08
最后修改:2010-11-08
SimpleFramework 是构造符合标准的Web框架,用组合化配置化方式解决Web应用问题,基于Intercepting-Filter和MVC2模式采用Java 技术实现的Web应用级框架。
SimpleFramework 的核心理念 SimpleFramework贯穿始终的核心理念:组件应用,业务积累。
1) 业务组件化:应用或模块级可复用的组件化封装。 2) 可持续积累:应用资源及业务组件的可持续积累。 3) 组件化开发:开箱即用和全程覆盖的配置化组件。 4) HTTP原生态:保留HTML/HTTP及请求/响应的原生态。 5) 无码AJAX应用:少用或不用Javascript的AJAX应用。 6) 资源继承:对既有应用资源的有效整合及平滑迁移。 7) 有效补充:对现有Web框架或技术的非侵入式补充。 8) 开放架构:开放及随需扩展的组件体系架构。 9) 无缝兼容:对现有Web及新技术的无缝兼容。 10) 简单实用:支持一体化Web应用开发过程。
SimpleFramework处理流程 了解处理流程将有利于有效地使用本框架,其中包含如下步骤:
(1) 拦截响应中HTML。 (2) 组件XML元数据解析。 (3) 业务Handle类执行。 (4) 组件代码生成及渲染。 (5) 复合HTML生成及响应。
安装 SimpleFramework
安装前确认 Java 的版本必须是 5.0 或者更新的版本,下载 SimpleFrame框架: http://simpleframework.googlecode.com/files/HelloWorld_Demo.zip. 目前最新版是 3.0.1 ,下载后直接导入eclipse,部署到tomcat 6 或者以上就可以正常工作了。 更多细节,请参考: http://www.simpleframework.net/simple/main/doc/d1/d.jsp?a=1.2 接下来创建一个新的应用程序
更多详情,以word 附件完全上传,全程体验组件开发不到5分钟(该编辑器不支持发布更多内容....)。
先贴出效果图,下面详细提出实现该功能的代码。
这是更都的业务组件,在simpleFramework 中调用方式非常简单,实施企业应用应用只需要关注业务,配置 组件的xml 和 业务代码编写。
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-11-08
应用示例:
(1) JSP页面 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <div id="demoGroupTablePager"> </div> |
|
返回顶楼 | |
发表时间:2010-11-08
(2) 组件XML声明 <?xml version="1.0" encoding="UTF-8"?> <page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="/xsd/default/simple.xsd"> <components> <groupTablePager name="demoGroupTablePager" containerId="demoGroupTablePager" handleClass="net.simpleframework.example.MyTablePagerHandle" groupColumn="k1"> <columns> <column columnName="k1" /> <column columnName="k2" separator="true" style="text-align: center;width: 120px;" headerStyle="width: 120px;" /> <column columnName="k3" separator="true" style="text-align: center;width: 120px;" headerStyle="width: 120px;" /> <column columnName="k4" separator="true" style="text-align: center;width: 120px;" headerStyle="width: 120px;" /> </columns> <jsRowClick> alert($Actions['demoGroupTablePager'].rowData(item, 1)); </jsRowClick> </groupTablePager> </components> </page> |
|
返回顶楼 | |
发表时间:2010-11-08
(3) 业务类MyTablePagerHandle代码段 public class MyTablePagerHandle extends AbstractTablePagerHandle { @Override public Object getBeanProperty(final ComponentParameter compParameter, final String beanProperty) throws Exception { if ("title".equals(beanProperty)) { final StringBuilder sb = new StringBuilder(); sb.append("<a style=\"margin-left: 4px;\" onclick=\"$Actions['") .append(compParameter.componentBean.getName()) .append("'].exportFile(null, false);\">导出</a>"); return sb.toString(); } return super.getBeanProperty(compParameter, beanProperty); } @SuppressWarnings({ "rawtypes", "unchecked" }) @Override public IDataObjectQuery<?> createDataObjectQuery(final ComponentParameter compParameter) throws Exception { final List data = new ArrayList(); final java.util.Random r = new java.util.Random(); for (int i = 0; i < 1000; i++) { final Map row = new HashMap(); row.put("k1", "Group By " + r.nextInt(6)); row.put("k2", "k2_" + i); row.put("k3", "k3_" + i); row.put("k4", "测试_" + i); data.add(row); } return new ListDataObjectQuery(data); } } |
|
返回顶楼 | |
发表时间:2010-11-08
结论:
通过上面三步的操作,就可以完成 http://dl.iteye.com/upload/attachment/344775/45446a5d-39d8-3edd-ac41-b67592878409.bmp 出现的效果。 入门结束,不到5分钟左右吧,轻松创建Web应用系统,SimpleFramework 提供95%以上的基础组件,通过配置就可以完成开发! |
|
返回顶楼 | |
发表时间:2010-11-08
总算把帖子发表了,但是效果不够美观。
|
|
返回顶楼 | |
发表时间:2010-11-08
本人 只是通过自己的实践,把开发与调试过程贴出与大家交流,目的是想与大家一起尽快上手simple。
|
|
返回顶楼 | |
发表时间:2010-11-08
zcb001 写道 学习,搜藏一下
大家一起交流使用心得才是比较愉快的事情。 |
|
返回顶楼 | |
发表时间:2010-11-08
补充一下,原生态的页面展现技术做UI比较舒适,果然很 simple.
|
|
返回顶楼 | |
浏览 2668 次