主页面静态化实现方案用什么好?

二零一九是猪年 发布于 2010/08/15 23:46
阅读 1K+
收藏 3

普通的ssh项目,自己做的struts2 hibernate3 spring2

web.xml中welcome-file-list 指定的是index.action,action中做了数据库的遍历和和velocity模板的静态页面生成(生成每个模块的html页面,例如热门商品,最新通告),然后用ssi技术将每个模块的静态页面包含到index.html,最后用oscache记住主页面url地址缓存减少其他用户与数据库的交互。

这样的实现方式有问题吗?主页面的静态生成如何实现?做一个类似门户的静态化主页面应该怎么实现,不管是不是高人们留个言讨论一下吧,顺便帮小弟解决一下心中疑惑,第一次做类似门户的网站。

加载中
0
二零一九是猪年
二零一九是猪年

红薯老大,上班啦,起床啦。请帮我分析一下

0
红薯
红薯

可直接引用 Squid 来做页面的缓存啊

0
alexhaifeng
alexhaifeng

利用velocity模版是一个很不错的静态文件生成工具,我们的网站就是采用的这种方式,你可以看看鉴于不发布公告信息我就不说我们网站的名字了。不过在IT垂直领域几乎是最大的了,也就是这种方式是可以的。

0
jobell
jobell

用struts2直接采用freemarker做模板,然后直接用freemarker生成静态页面!

0
zhuzhangsuo
zhuzhangsuo

web.xml中welcome-file-list 指定的是index.action,action中做了数据库的遍历和和velocity模板的静态页面生成

为什么要这样做呢?welcome-file-list好像不是做这个用的

另外,“最后用oscache记住主页面url地址缓存”    也不明白是什么

0
二零一九是猪年
二零一九是猪年

引用来自#5楼“joliny”的帖子

用struts2直接采用freemarker做模板,然后直接用freemarker生成静态页面!

我倒是用过freemarker,感觉上和velocity相似的模板,甚至有人说freemarker比velocity强大很多,这个没有具体测试过,不敢妄言,但是freemaker最让我头疼的是null的处理。

0
二零一九是猪年
二零一九是猪年

引用来自#3楼“红薯”的帖子

可直接引用 Squid 来做页面的缓存啊

老大的简易当然要虚心接受了,呵呵,先搜索一下看看这个技术。

0
二零一九是猪年
二零一九是猪年

引用来自#6楼“zhuzhangsuo”的帖子

web.xml中welcome-file-list 指定的是index.action,action中做了数据库的遍历和和velocity模板的静态页面生成

为什么要这样做呢?welcome-file-list好像不是做这个用的

另外,“最后用oscache记住主页面url地址缓存”    也不明白是什么

第一个,如果web.xml中welcome-file-list,是进入默认页面的也就是index.jsp页面,但是index.jsp的数据我是从struts的action通过数据库取出来的,然后jsp页面是c标签遍历,如果不先进actioin那么index.jsp页面数据不就成null了?请教一下你的理解!呵呵

第二个,其实最后用oscache是想实现门户网站的缓存技术,因为用java所以有一个oscache框架可以缓存url。后续的人就不用和数据库交互了。

0
二零一九是猪年
二零一九是猪年

我现在头疼的是第一次做类似门户的网站,如果每次都menu.action?menuid=手机,menu.action?menuid=电脑,这样和数据库交互太多了,数据库瓶颈问题肯定会遇到,就拿主页面来说。

1,web.xml-->welcome-file-list-->index.action-->(获取热门产品,最新产品)-->数据库-->返回index.jsp,用c标签遍历,那这样数据库交互太多了,所以考虑用oscache,缓存当前的url地址。

2,就是index页面中的公用部分的考虑,没有用jsp:include技术,用了ssi,在1里面的获取最新产品或者获取热门产品的时候会用velocity生成html静态页面,然后用ssi导入进来到主页面。

现在,用的东西多了(velocity,ssi,oscache)思路乱七八糟的,不知道怎么滤清我的思???我的描述完毕,或许你也听乱了吧?呵呵,帮我顺一下思路即可!谢谢!

0
zhuzhangsuo
zhuzhangsuo

这是前台的还是后台的,如果前台的话,每次访问都重新生成一遍?

如果静态了,url就是固定的了,可以在生成链接时候直接发布这个url就行了,还需要动态吗

返回顶部
顶部