忙里偷閑
一直想寫一個blog程序
架子打起來了,用struts1.2+hibernate
如何為用戶的url做轉向,比如
http://www.tkk7.com/liuspring,怎樣轉向屬于liuspring的文章、留言、評論啊等等,簡單的說就是liuspring的頁面,
這個問題可把我難住了(功力太淺),于是google上搜開源的blog系統,看他們的源碼,首先下的
roller,費了好大勁把系統配起來了,運行起來那個高興,接下來暈了,新版本是
struts2,還沒研究過,看了一下好像struts2能很容易實現我要的,可是我用的是1.x啊,接著搜,
Pebble,
blojsom ,
DLOG4J ,
myblog,都試用了,其中
blojsom使用了一個servlet,在里面解析URI,比如請求的地址是/blog/spring/,那么就被解析成/blogView.do?go=spring,以這個地址轉向,從而被struts的控制器接收。
這里得用(并且redirectURL必須是相對路徑,用完整路徑好像還不行,在我這報404錯誤)
1
httpServletRequest.getRequestDispatcher(redirectURL.toString())
2
.forward((ServletRequest)httpServletRequest, (ServletResponse)httpServletResponse);
不能用
1
httpServletResponse.sendRedirect(redirectURL.toString());
因為這樣是使IE重定向,請求的URL也隨之改變,這個圈兒就轉不下去了。
又建立了一個過濾器,用以判斷session中的用戶是否是當前訪問的博客的管理員,比如訪問/blog/spring/,判斷session中保存的用戶是否是spring,然后往request,setAttribute中放一個標示,標示是否具有管理員權限,在jsp頁面中獲取這個參數以決定是否顯示后臺管理連接。
到這里,最基本,最撓頭的問題暫時解決了,感覺肯定有更加方便、更加精妙、更加簡單的方法,只是功力還沒涉到那么深,哪位博友看到了不勝賜教,接下來還要攻克的,如何產生靜態html頁面,如何rss......