當前位置:首頁 » 網頁前端 » web設計博客系統
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

web設計博客系統

發布時間: 2023-08-14 14:18:05

⑴ 如何進行文章分類和標簽的資料庫設計

幾乎在所有web項目中,都涉及文章分類和標簽的設計,應該說這是一個比較常見、典型的案例

站長並不保證我的思路就是最好的,只是分享出來大家一起交流一下,互相促進與提高

我們假設的開發項目是一個博客系統,最核心的部分就是與文章相關的,那麼我們今天討論如何設計博客系統的文章分類和標簽

1、首先,分類和標簽都是要和具體的文章相關聯的,當然也可能一些文章既沒有分類也沒有標簽,這一點是大家在寫查詢的時候容易疏忽的地方

因為我們的第一感覺就是,在查詢文章列表的時候關聯分類表,查出所有的文章和分類,對應關系一般是文章表的分類id對應分類表的id,使用where子句進行限定

這里就存在一個問題了,由於使用了where子句,那麼只能查詢有分類的文章,而沒有分類的文章就查詢不到了

這時候怎麼辦?應該使用連接查詢,leftjoin,這要沒有分類的文章,在文章分類id那一欄會顯示null

通常我們只使用leftjoin,而很少使用rightjoin

2、一般,一篇文章最好只對應一個分類,當然如果你想要對應多個分類也可以

但站長並不提倡,文章在多個分類中重復會給人很不專業的感覺,即使有些文章可能確實設計到多方面的內容,那麼你應就其中的側重點來分類

而標簽就不一樣了,一篇文章可能有多個標簽

這就意味著我們無法靠一個sql語句既查出所有文章的分類和標簽,又做到查詢結果中的文章id不重復

通常我們需要把查詢出來的結果直接循環出來,那麼這個結果一般是二維數組,第二維的都存儲了唯一一篇文章的相關信息

但是,標簽和文章是多對一的關系,多個標簽對應一篇文章,如果你只用一條sql語句的話,那麼我們查詢出來的結果,當然也是多行,這不符合我們目標數據的要求

應此,需要在查詢完文章和分類之後,在前面結果的基礎上再查詢一次文章標簽,把兩次的結果結合起來,存在數組中,這是對應文章列表頁面的查詢方法

對於具體文章頁面,可以分兩次查詢

好了,還沒有給出具體的資料庫設計,就先說了如何查詢結果,相信大家也看煩了,下面就舉例說明:一、文章表:post,欄位如下:id【唯一標識】,aid【作者id】,title【標題】,content【內容】,cid【分類id】二、分類表,category,欄位如下:id【唯一標識,與post表的cid關聯】,name【分類名】三、標簽表,tag,欄位如下:id【唯一標識】,name【標簽名】四、標簽與文章對應關系表,tag_,欄位如下:id【唯一標識】,postid【文章id,與post表的id關聯】,tagid【標簽id,tag表的id關聯】有朋友可能會問:為什麼要單獨用一個表來存儲文章與標簽圓伍睜的對應關系,為什麼不可以直接在tag表中增加一個文章id欄位呢,比如:tag表:id,postid,name這樣做的話,並不是不可以,但是,由於一篇文章對應多個標簽,所以name欄位的值橘陪會出現很多重復,比如一篇文章,假設文章id為1,有2個標簽,php和mysql,那麼在tag表會這樣存儲:id:1,postid:1,name:phpid2,postid:1,name:mysql另一篇文章,假設id為2,有2個標簽,也是php和mysql,那麼在tag表中它會這樣存儲:id:3,postid:2,name:phpid4,postid:2,name:mysql大家很快就發現了問題,這樣的設計name欄位也就是標簽的名稱在同一張表中可能會大量橘歲重復

但是這樣設計的好處是,如果你要查詢一個標簽下有多少篇文章,只要單獨查這個表就可以了,比如要查詢含有php標簽的文章有多少篇,只需要selectcount(name)??fromtagwherename=』php』,就可以查出來

不好的地方是,如果要查詢所有標簽的集合,使用這種設計需要使用groupbyname語句來去除重復的行

如果用之前的那種,只需要select*fromtag就可以了

一時之間,好像不太好取捨

這兩種設計都會有數據冢余,第一種tag_表中,存在tagid欄位的重復;而這兩種設計又都有各自的好處

那麼我們到底該怎麼選擇呢?站長也說不好,所以無法為大家下結論

但是站長在研究wordpress數據結構的時候,發現wp是採用的單獨建表存儲文章與標簽對應關系的方式

⑵ web系統設計(web系統)

您好,我就為大家解答關於web系統設計,web系統相信很多小夥伴還不知道,現在讓我們一起來看看吧!1、Web應用程序是一種可以通過Web訪問的...

您好,我就為大家解答關於web系統設計,web系統相信很多小夥伴還不知道,現在讓我們一起來看看吧!

1、Web應用程序是一種可以通過Web訪問的應用程序。

2、Web應用程序的一個最大好處是用戶很容易訪問應用程序。

3、用戶只需要有瀏覽器即可,不需要再安裝其他軟體。

4、一個Web應用程序是由完成特定任務的各種Web組件(web components)構成的並通過Web將服務展示給外界。

5、在實際應用中,Web應用程序是由多個Servlet、JSP頁面、HTML文件以及圖像文件等組成。

6、所有這些組件相互協調為用戶提供一組完整的服務。

7、(2)web設計博客系統擴展閱讀:應用程序有兩種模式C/S、B/S。

8、C/S是客戶端/伺服器端程序,也就是說這類程序一般獨立運行。

9、而B/S就是瀏覽器端/伺服器端應用程序,這類應用程序一般藉助IE等瀏覽器來運行。

10、WEB應用程序一般是B/S模式。

11、Web應用程序首先是「應用程序」,和用標準的程序語言,如C、C++等編寫出來的程序沒有什麼本質上的不同。

12、然而Web應用程序又有自己獨特的地方,就是它是基於Web的,而不是採用傳統方法運行的。

13、換句話說,它是典型的瀏覽器/伺服器架構的產物。

14、參考資料來源:網路-Web應用程序參考資料來源:網路-WEB伺服器。

⑶ 求一個javaweb做的博客系統源碼。。。

你可以自己下載:www.websbook.com/code/code/index_jsp_blog.html

⑷ 如何用django開發一個簡易個人Blog-Python

設計並實現一個基於Python的個人博客系統, 需要完成如下功能

  • 完成個人博客系統的設計和開發

  • 用戶可以通過個人博客系統,發布最新的日誌

  • 運用所學專業理論及實踐,分析解決遇到的問題以提高自己的動手、思考及解決問題的能力

  • 主要模塊如下

  • 文章管理模塊:主要功能是管理員系統管理員登入後,瀏覽查看文章,刪除不好的文章等功能

  • 標簽管理模塊:主要功能是管理員系統管理員登入後,瀏覽查看相冊,刪除相冊等功能

  • 文章、標簽瀏覽模塊:主要功能是遊客進入系統後。可以瀏覽文章列表,可以按標簽查看文章

  • 評論系統模塊, 遊客可以發表查看別人的評論

安裝與使用

項目採用Django框架進行開發, Django是一個用於快速web開發的優異方案(幾乎沒有之一), 獲取源碼後可以按照如下方式來運行代碼

  • 新建mysql資料庫, 將資料庫sql文件導入

  • 修改源碼包中的 csworkblog/settings.py 文件, 將DATABASES這個變數里的內容改一下, 這個就是你本地的資料庫url和用戶名密碼, 其中NAME為你的database名稱

  • 進入源碼包, 打開cmd, 運行命令 python manager.py runserver 就能啟動服務, 埠為8000

  • http://localhost:8000/admin 為後台管理界面, 管理員用戶名密碼為 admin 123456, 可以進行文章管理標簽管理評論管理

界面還是比較好看的, 項目截圖源碼下載地址 cs-work.com/p/21031