我這兩天剛好完成了這樣一個類似的系統,希望和大家探討探討jsp實現的技術。
新浪 sohu這樣的系統應該是類似的,就是後台動態生成前台的html頁面,不管後台用什麼工具。
因為公司逼下來,要做這樣的新聞系統,沒有辦法,連著做了兩天,總算搞定了,很快就會發布到公司主頁上面
當然我只做了一個後台管理的東西,用jsp+javabean來動態生成html文件
我是這樣實現的
1、首先要一個寫好的htm文件模板,後台用Writer對象來寫文件,然後幾個需要替換的地方如新聞標題、新聞內容直接根據輸入的來替換,文件名字就用日期如2000-12-18-1.htm類似的;
2、文件上傳用jspsmartupload組件,主要用來傳新聞圖片,然後將生成的圖片路徑替換模板中的img src標簽;
3、數據庫中同時保存文件標題、文件名、日期等信息,新聞內容等其他的信息就沒有必要保留了;
4、前台調用直接從數據庫中取XXX.htm文件名、文件標題就行了;
另外還用了幾個小技巧,因為jspsmartupload組件不支持文件上傳重新命名,所以我設了一個臨時的目錄存放上傳的圖片文件,然後寫了一個方法將文件通過IO操作拷貝到指定的目錄下,當然名字也換成了和htm文件對應的名字。這樣是為了防止文件以多名字相同了,一般都以日期或者自動增加變量等方式來命名。
初步測試了一下,速度還比較快,因為新聞都是靜態的htm文件。
苦干了兩天,今晚總算可以稍微休息一下了:)
如果大家也用jsp做過類似的系統,歡迎一起交流了。