运用J2EE+XML开发网站自动生成系统

运用J2EE+XML开发网站自动生成系统

这是本人做了近一年的项目,网站自动生成系统目前做得比较好的有Miva(miva.com) 和bapth.com
前者主要侧重于商店和购物车功能,成为虚拟主机提供商预装软件之一,但是其缺点是
界面变化少,但其强大的功能已经掩盖了界面的不足。

Bapth.com的网站自动生成则做得比较深入,有多级菜单,任意调整菜单,将页面划分为具体
功能的页面,供用户选择,如有图片页面 有论坛页面 有普通文本页面等等,这个思路已经
开始将网站内容和网站结构划分开来。

本人开发的网站自动生成系统吸取了上面两种系统的优点,同时提供不受限制的模板界面选择;
可以加载功能页面 如购物车 论坛等。

主要思路是这样:
将网站分解成几个重要的对象,如网站结构 页 和菜单, 网站结构由EJB控制,页和菜单在创建站点时
生成简单的对象,然后将这两个对象串行化保存成XML文件;模板界面主要是从这两个对象中获取数据,
由于将数据和显示完全分开,因此模板可以是任何形式的设计;用户如果要修改页面数据,可以激活页和
菜单这两个对象,修改后再串行化保存。

目前该系统以基本完成,正在做前台Jsp方面的细节工作。

[该贴被admin于2009-02-21 13:33修改过]

我要是也能做一个就好了

斑竹能不能指点一下啊,即使不能做,也对整个流程详细了解一
下啊
这都需要那些方面的内容啊


在这个系统中,创建站点的页面及其菜单比较复杂,我使用了Builder模式,Builder模式是把创建过程和部件创建分开。
非常适合我这个系统:
首先,创建过程复杂:第一次建立站点时初始化页面按钮和用户增加新的页面按钮收是两个不同的过程,虽然他们也用到的部件是一样的,但是加工顺序不一样。
这样在pageBuilder中封装的是部件,而在PageDirector中就有两个加工瓶装办法。
这个模式让我的站点建立过程非常清楚,但是带来问题是需要相当的refactor工作。

做这个项目我是采用类似XP的方法,起初大概规划一下,就无意识的完成规划的功能,然后测试,稳定后继续添加功能,等项目完成2/3后,会发现Jsp中开始沉淀大量Java代码,这时我意识到应该refactor了。

同时我也真正搞清楚,建立一个站点需要那些具体步骤,分析这些步骤,合并成主要几个大步骤,这时我决定refactor到Builder模式,将这些主要步骤封装在PageDirector中。

refactoring花费我不少时间和精力,在整个项目进行过程中,我认为有两个是最费心思和精力的,一个是系统分析规划,第二个是refactoring,整理自己的代码,如同自己和自己打架,是非常耗精力的。

但是在和自己搏斗后,会发现自己好像找出一条真正反映这个系统本质的线索,这让我非常高兴,因为我有一个经验,如果你开发出代码越贴近系统运行本质,你的代码可靠性就越强,而且似乎很完美对称,因为你的代码反映了这个事物的本质,所以经得住测试和各种调用。

~{D\6`OjO8=iI\Ub7=Cf5DWJAOBp#?MxIOSPUb7=CfWJAOBp#?6TAK~}bapth.com~{:COq2;D\=xBp#?~}

怎么回事?乱码 你的浏览器和操作系统情况?

不好意思!
我对你开发的这套系统非常感兴趣。只是想你提供这方面更多的资料。

多谢关注,我有空会写出来,我感觉这个项目涉及了目前java中基本所有最新的领域,而且一旦框架定好后,再增加Jive 或shoppingcart功能,增加JMS 邮件列表等,这样一个功能齐全的网站就能很快自动打包生成出来。

数据结构与sql如何自动生成?

是否做个open source的版本, :)

我也赞成楼上兄弟的想法,但要完全open也不太好,banq可以适当收取的费用。

数据库和sql都可以自动完成的,这不是问题,问题是网站系统和论坛系统或购物车系统之间如何接口,这个接口要具备拓展灵活性。

目前我在靠它吃饭。现在我还还没到自产Open source的境界,只能拿来别人的Open Source

能不能给个url让小弟见识见识,谢谢。

你好banq,我想请教一下,你怎样把对象序列化成xml格式.以及再还原回来,可以吗?

说白了,用castor,呵呵

jdk14也提供一个xmlEncoder完成类似的作用