天天看點

使用IntelliJ IDEA開發SpringMVC網站(五)部落格文章管理

摘要

通過對部落格文章的管理,實作外鍵操作。

目錄[-]

<a href="#OSC_h3_1">八、部落格文章管理</a>

<a href="#OSC_h4_2">1、檢視文章</a>

<a href="#OSC_h4_3">2、添加部落格       </a>

<a href="#OSC_h4_4">3、檢視博文詳情</a>

<a href="#OSC_h4_5">4、修改部落格内容</a>

<a href="#OSC_h4_6">5、删除部落格文章</a>

<a href="#OSC_h3_7">九、尾聲        </a>

<a href="#OSC_h4_8">1、如何部署</a>

<a href="#OSC_h4_9">2、進一步的學習</a>

<a href="#OSC_h4_10">3、ENDING</a>

注:在閱讀本文前,請先閱讀:

<a href="http://my.oschina.net/gaussik/blog/385697">使用IntelliJ IDEA開發SpringMVC網站(一)開發環境</a>

<a href="http://my.oschina.net/gaussik/blog/513353">使用IntelliJ IDEA開發SpringMVC網站(二)架構配置</a>

<a href="http://my.oschina.net/gaussik/blog/513444">使用IntelliJ IDEA開發SpringMVC網站(三)資料庫配置</a>

<a href="http://my.oschina.net/gaussik/blog/513614" target="_blank">使用IntelliJ IDEA開發SpringMVC網站(四)使用者管理</a>

        部落格的管理與使用者的管理有許多的相似之處,但是另外多了外鍵的操作,下面做簡單的說明。

        檢視文章的操作相對簡單。首先在com.gaussic.repository中添加BlogRepository,方法與UserRepository類似:

        在com.gaussic.controller中添加一個BlogController類,并添加以下方法(當然也可以寫在MainController中,在較大型的項目開發中,最好對各類的操作進行一個區分,以增強代碼的可讀性):

        接下來,在pages/admin目錄下建立blogs.jsp檔案:

        先不要急着運作代碼,我們來看看blogs.jsp與users.jsp有何不同。

        注意到,在檢視博文作者的時候,使用了如下代碼:

使用IntelliJ IDEA開發SpringMVC網站(五)部落格文章管理

 當然,現在資料庫中是沒有資料的,不用着急,我們先實作博文的添加功能。回到BlogController,添加addBlog的GET和POST操作:

       接下來,在pages/admin目錄下建立addBlog.jsp檔案:

      講解:

        (1)首先在作者一欄使用了選擇框,通過select來選擇該博文的作者,注意到select标簽的id和name都是userByUserId.id(id可以不同,但name必須如此),也就是說,需要通過blog的外鍵來定位到所需要選擇的作者。而在其選項組中,使用user.id來進行指派,這樣,就能把blog和user表相關聯,是不是很友善呢?

        說了真麼多,我們來重新開機一下Tomcat,點選部落格管理界面的添加按鈕,添加以下内容:

使用IntelliJ IDEA開發SpringMVC網站(五)部落格文章管理

      注意Author是一個select選框,如下圖所示,(如果選項很少效果不太好的話,請自行到使用者管理界面多添加幾個使用者再來):

使用IntelliJ IDEA開發SpringMVC網站(五)部落格文章管理

       點選送出,系統重新跳轉到了部落格管理界面,這裡已經顯示出了所添加的部落格清單:

使用IntelliJ IDEA開發SpringMVC網站(五)部落格文章管理

       有了前面的基礎,這個就很好實作了,不多說,趁熱打鐵,在BlogController中添加如下方法:

       在pages/admin目錄下建立檔案blogDetail.jsp:

        注意:在輸出日期的時候使用了fmt标簽,請在頂部引入fmt标簽。

        現在重新開機伺服器,進入部落格管理頁面,點選剛才添加的博文的詳情按鈕,檢視該博文的詳情:

使用IntelliJ IDEA開發SpringMVC網站(五)部落格文章管理

      寫完了增加和檢視的操作,現在實作修改的操作,内容依舊與使用者操作類似。首先,在BlogRepository中添加如下代碼:

          接下來,在BlogController中添加修改博文的GET和POST方法:

        建立updateBlog.jsp頁面:

       注:感謝某位同學的指出,這裡pubDate的輸出如圖下圖所示:  

       重新開機伺服器,進入修改部落格頁面,做出一定的修改:

使用IntelliJ IDEA開發SpringMVC網站(五)部落格文章管理

        點選送出, 傳回部落格清單頁面,可以檢視修改。

使用IntelliJ IDEA開發SpringMVC網站(五)部落格文章管理

       删除部落格的實作非常簡單,在BlogController下加入以下方法:

      重新開機伺服器,随便添加一篇新的文章,然後删除之:

使用IntelliJ IDEA開發SpringMVC網站(五)部落格文章管理

       點選删除按鈕,删除第二篇文章,将傳回部落格管理界面:

使用IntelliJ IDEA開發SpringMVC網站(五)部落格文章管理

        這樣,整個部落格的增删改查操作就完成了,而這一系列的文章也即将接近尾聲。還有許多的細節是可以優化的,SpringMVC還有許多優化代碼的小技巧,能讓你在開發時加省力,這一點是要在我們的學習和使用中去探索和思考的,特别作為一個WEB開發人員,探索和思考的能力是寶貴的。

        在此,還有一些小的事情需要交代,讓我一一道來。

        在項目的目錄下,IntelliJ IDEA生成了一個target檔案夾,如下圖所示:

使用IntelliJ IDEA開發SpringMVC網站(五)部落格文章管理