Web美食分享平臺的系統-計算機畢業設計源碼45429

基于Web美食分享平臺的系統設計與實現

摘 要

本研究基于Spring Boot框架,設計并實現了一個Web美食分享平臺,旨在為用戶提供一個交流分享美食體驗的社區平臺。該平臺涵蓋了用戶注冊登錄、美食制作方法分享發布、點贊評論互動等功能模塊,致力于促進美食文化的傳播和交流。

通過Web美食分享平臺的設計與實現,用戶可以注冊登錄平臺,發布自己的美食制作經驗,與他人互動交流。采用Spring Boot框架,系統具有高效的響應速度和穩定性,為用戶提供流暢的使用體驗。

基于Spring Boot框架的Web美食分享平臺的設計與實現,將為美食愛好者搭建一個便捷、互動性強的分享平臺,豐富用戶的美食生活,促進美食文化的傳承和交流。該平臺的應用有助于推動美食產業的發展,為用戶提供更多美食探索和交流的機會,具有重要的社會和文化意義。

關鍵詞:美食分享平臺;Springboot框架;MySQL數據庫;

Abstract

Based on Spring Boot framework, this research designs and implements a Web food sharing platform, aiming to provide a community platform for users to exchange and share food experience. The platform covers functional modules such as user registration and login, sharing and publishing of food production methods, and interaction of likes and comments, and is committed to promoting the dissemination and exchange of food culture.

Through the design and implementation of the Web food sharing platform, users can register and log in to the platform, publish their own food production experience, and interact with others. Using Spring Boot framework, the system has efficient response speed and stability, and provides smooth user experience.

The design and implementation of Web food sharing platform based on Spring Boot framework will build a convenient and interactive sharing platform for food lovers, enrich users' food life, and promote the inheritance and exchange of food culture. The application of the platform helps to promote the development of the food industry and provides users with more opportunities for food exploration and communication, which has important social and cultural significance.

Keywords:?Food sharing platform; Springboot framework; MySQL database;

目錄

基于Web美食分享平臺的系統設計與實現

摘 要

Abstract

第1章 緒論

1.1 研究背景

1.2 選題意義

1.3 課題研究現狀

1.4 論文組成結構

第2章 開發工具及相關技術介紹

2.1 開發技術說明

2.2 MVVM模式

2.3 B/S結構

2.4 SpringBoot框架介紹

2.5 Mysql數據庫

第3章 系統分析

3.1 可行性分析

3.1.1 經濟可行性

3.1.2 技術可行性

3.1.3 操作可行性

3.2性能分析

3.3系統操作流程

3.3.1用戶登錄流程

3.3.2信息添加流程

3.3.3信息刪除流程

第4章 系統設計

4.1系統架構設計

4.2開發流程設計

4.3數據庫設計

4.3.2數據表

第5章系統實現

5.1普通用戶功能模塊

5.2管理員功能模塊

第六章系統測試

6.1測試目的

6.2測試方案設計

6.2.1 測試策略

6.2.2 測試分析

6.3?測試結果

第七章 總結與展望

參考文獻

?????????致謝

  1. 緒論
    1. 研究背景

隨著社交網絡和數字化技術的快速發展,人們對美食分享和交流的需求日益增加。傳統的美食分享方式受限于時間和空間,難以實現大范圍的交流和分享。基于Web的美食分享平臺的設計與實現,旨在打破傳統的限制,提供一個開放、便捷的美食交流平臺,促進用戶間的美食互動和文化交流。

美食作為人們日常生活中不可或缺的一部分,已成為社交和文化交流的重要載體。然而,現有的美食分享平臺普遍存在著信息碎片化、內容質量參差不齊的問題,缺乏專業性和互動性。基于Web的美食分享平臺的研究與實現,旨在解決當前美食分享平臺存在的問題,提供一個更加專業、便捷的美食交流平臺,豐富用戶的美食生活體驗。

通過建立基于Web的美食分享平臺,可以為廣大美食愛好者提供一個交流互動的平臺,促進美食文化的傳播和共享。結合Web技術的優勢,實現美食愛好者間的實時互動和內容分享,推動美食產業的發展,促進美食文化的繁榮。基于此背景,開展基于Web的美食分享平臺的設計與實現具有重要的現實意義和推動作用。

    1. 選題意義

開發基于Web的美食分享平臺具有重要意義。隨著人們生活水平的提高和對美食文化的關注度增加,建立一個專業、便捷的美食分享平臺能夠滿足用戶日益增長的美食需求,促進美食文化的傳播和交流,豐富用戶的生活體驗。

通過建立基于Web的美食分享平臺,可以為美食愛好者提供一個互動交流的平臺,激發用戶分享美食經驗、探索美食文化的熱情。該平臺不僅可以促進用戶間的信息交流和互動,還有助于挖掘和傳承地方美食文化,推動美食產業的發展和推廣。

基于Web的美食分享平臺的設計與實現,將為美食產業與文化交流帶來新的機遇和挑戰。通過構建一個專業、便捷的美食分享平臺,可以激發用戶對美食的熱愛和探索欲望,促進美食產業的創新發展,為美食文化的傳承和發展注入新的活力。

    1. 課題研究現狀

目前,基于Web的美食分享平臺已成為研究和開發的熱點領域。國內外許多互聯網平臺和社交應用已推出了各類美食分享功能,如美食圖片上傳、食譜分享、餐廳點評等,為用戶提供了豐富的美食交流平臺。然而,現有平臺普遍存在信息質量參差不齊、交互性不足等問題,需要進一步完善和優化。

在國際研究中,一些美食分享平臺注重用戶體驗和社交互動功能的設計,通過引入用戶生成內容(UGC)和社交分享機制,促進用戶間的互動和交流。國內研究則更注重美食文化的傳承和地方特色的展示,倡導健康飲食理念和文化傳統的傳播,為用戶提供更加豐富多元的美食體驗。

基于Web的美食分享平臺的研究現狀顯示出多樣化的發展趨勢,涵蓋了技術創新、用戶體驗和文化傳承等方面。未來的研究可以進一步探討如何整合大數據分析等技術手段,提升平臺的個性化推薦和用戶互動體驗,推動美食分享平臺向更加智能化、個性化的方向發展。

    1. 論文組成結構

根據市場調研得到的信息數據,結合國內外前沿研究,利用相關系統開發和設計方法,最終設計出美食分享平臺。

本文共有七章,如下所示。

第一章概述了美食分享平臺的研究目的和意義;精煉地總結了國內外在內的領域研究情況和未來的研究趨勢,最后給出了論文的組成結構。

第二章簡要概述了本文所用的開發技術和工具。

第三章簡要對系統各業務流程進行需求分析、可行性分析。

第四章對美食分享平臺進行設計。

第五章對美食分享平臺進行實現,并貼出相關頁面截圖,語言描述出具體功能實現的操作方法。

第六章對美食分享平臺采用測試用例的方式來對一些主要功能模塊測試,最后得出測試結果。

第七章總結全文并對未來的研究做出展望。

  1. 開發工具及相關技術介紹
    1. 開發技術說明

本系統前端部分基于MVVM模式進行開發,采用B/S模式,后端部分基于Java的SPringboot框架進行開發。

前端部分:前端框架采用了比較流行的漸進式JavaScript框架Vue.js。使用Vue-Router和Vuex實現動態路由和全局狀態管理,Ajax實現前后端通信,Element UI組件庫使頁面快速成型,項目前端通過柵格布局實現響應式,可適應PC端、平板端、手機端等不同屏幕大小尺寸的完美布局展示。

后端部分:采用ssm作為開發框架,同時集成MyBatis、Redis等相關技術。

    1. MVVM模式

MVVM模式是常用的開發模式,主要是在代碼實現上將其分為M層、V層和C層。

視圖(View)代表用戶交互界面,一個 Web 應用就可能有很多的界面,在 MVVM?模式中,視圖僅僅處理的只有數據采集、處理,還有用戶的請求, 并不包括業務流程的處理,業務流程由模型(Model)來處理。

模型(Model)就是業務流程/狀態的處理及業務規則的制定。模型處理業務流程的過程其它層是無法看見了的,它就像黑箱子,在接受視圖請求的數據之后,然后返回最終的處理結果。MVVM?最主要的核心就是業務模型的設計,一個典型的應用例子就是目前流行的 EJB 模型,它從應用技術實現的角度對模型做了進一步的劃分,以便充分利用現有的組件,但是它不能作為應用設計模型的框架。

控制器(Controller)可以理解為接收用戶的請求,然后視圖和模型匹配在一起,一起再完成用戶請求。它有非常明顯的作用在劃分控制層上,可以很清晰地告訴你,它就是一個分發器,選擇什么樣的模型、視圖,可以完成用戶的什么樣的請求。控制層不做所有的數據處理,比如說:用戶點擊一個連接,控制層接受到請求之后,并不處理業務信息,它只是向模型傳遞用戶的信息,同時告訴模型做什么,然后選擇符合需求的視圖返回給用戶。

    1. B/S結構

B/S(Browser/Server)比前身架構更為省事的架構。它借助Web server完成數據的傳遞交流。只需要下載瀏覽器作為客戶端,那么工作就達到“瘦身”效果, 不需要考慮不停裝軟件的問題。

    1. ?SpringBoot框架介紹

Spring框架是Java平臺上的一種開源應用框架,提供具有控制反轉特性的容器。SpringBoot基于Spring4.0設計,不僅繼承了Spring框架原有的優秀特性,而且還通過簡化配置來進一步簡化了Spring應用的整個搭建和開發過程。另外SpringBoot通過集成大量的框架使得依賴包的版本沖突,以及引用的不穩定性等問題得到了很好的解決。
??SpringBoot所具備的特征有:可以創建獨立的Spring應用程序,并且基于其Maven或Gradle插件,可以創建可執行的JARs和WARs;內嵌Tomcat或Jetty等Servlet容器;提供自動配置的“starter”項目對象模型(POMS)以簡化Maven配置;盡可能自動配置Spring容器;提供準備好的特性,如指標、健康檢查和外部化配置;絕對沒有代碼生成,不需要XML配置。

    1. Mysql數據庫

Mysql 經過多次的更新,功能層面已經非常的豐富和完善了,從Mysql4版本到5版本進行了比較大的更新,在商業的實際使用中取得了很好的實際應用效果。最新版本的Mysql支持對信息的壓縮,同時還能進行加密能更好的滿足對信息安全性的需求。同時經過系統的多次更新,數據庫自身的鏡像功能也得到了很大的增強,運行的流暢度和易用性方面有了不小的進步,驅動的使用和創建也更加的高效快捷。最大的變動還是進行了空間信息的顯示優化,能更加方便的在應用地圖上進行坐標的標注和運算。強大的備份功能也保證了用戶使用的過程會更加安心,同時支持的Office特性還支持用戶的自行安裝和使用。在信息的顯示形式上也進行了不小的更新,增加了兩個非常使用的顯示區,一個是信息區,對表格和文字進行了分類處理,界面的顯示更加清爽和具體。第二是儀表的信息控件,能在儀表信息區進行信息的顯示,同時還能進行多個信息的比對,為用戶的實際使用帶來了很大的便捷。

針對本文中設計的高校自習室座位管理系統在實際的實現過程中,最終選擇Mysql數據庫的主要原因在于在企業的應用系統應用及開發的過程中會存在大量的數據庫比較頻繁的操作,而且數據的安全性要求也是非常的高。綜合這些因素,最終選擇安全性系數比較高的Mysql來對高校自習室座位管理系統后臺數據進行存儲操作。

  1. 系統分析
    1. 可行性分析

本系統將在經濟、技術、操作這三個角度上進行可行性分析。

      1. 經濟可行性

整個系統從設計到開發以及測試過程嚴謹步驟齊全,所有工作任務全部由本人完成,并未獲取外部技術支持,節約了一切服務成本開銷以及人工成本,在硬件方面,為節約成本使用一臺二手移動工作站作為項目部署服務器以及數據庫服務器,成本在一萬元一下,真個網絡部署也是由本人獨立完成不涉及到其他人工費用,整個開發過程本著低成本,低消耗的原則。

      1. 技術可行性

技術可行性分析的目的是確認該系統能否利用現有技術實現,并評估開發效率和完成情況。技術的可行性是指在當前的技術條件下,計算機軟件和硬件的開發是否能夠滿足發展的要求。因為該系統的開發基于Java語言,所以開發該系統所需的軟件和硬件條件可以在普通計算機上滿足。因為它占用的內存相對較少,所以用Mysql數據庫開發和設計軟件理論上沒有問題,因為它占用的內存太少。上述技術可以有效地保證系統的成功和高效開發。

      1. 操作可行性

美食分享平臺的使用界面簡單易于操作,采用常見的界面窗口來登錄界面,通過電腦進行訪問操作,用戶只要平時使用過電腦都能進行訪問操作。此系統的開發采用Java技術開發,人性化和完善化是B/S結構開發比較顯要的特點使得用戶操作相比較其他更加簡潔方便。易操作、易管理、交互性好在本系統操作上體現得淋漓盡致。

3.2性能分析

對于性能分析,與傳統的管理方式相比,傳統的管理方式是使用人工通過用紙和筆進行數據信息的統計和管理,并且這種方式對于存儲和查找某一數據信息都比較麻煩,隨著計算機網絡的到來,這種傳統的方法很難適應當下社會的發展,不僅降低人們的辦事效率,而且還需要很多的人力和物力,對于使用的時間和所要花費的費用都是比較高的,為了降低成本費用,提高用戶的工作效率,進行開發一套基于計算機和網絡技術的美食分享平臺。

美食分享平臺的開發設計時一個獨立的系統,以流行數據庫進行數據的存儲開發,主要是為了實現美食分享平臺的用戶角色及相對應的功能模塊,讓美食分享平臺的管理不會存在管理差異、低效率,而是跟傳統的管理信息恰好相反,美食分享平臺的實現可以節約資源,并且對于業務的處理速度也提高,速度快、效率高,功能性強大。

3.3系統操作流程

3.3.1用戶登錄流程

對于系統的安全性的第一關,就是用戶想要進入系統,必須通過登錄窗口,輸入自己的登錄信息才可以進行登錄,用戶輸入的信息準確無誤后才可以進入到操作系統界面,進行功能模塊的相對應操作,如果用戶輸入的信息不正確,則窗口出現提示框,用戶登錄失敗,返回到第一步進行重新輸入,如圖3-1所示。

圖3-1登錄操作流程圖

3.3.2信息添加流程

對于美食分享平臺,需要隨時添加所需要的數據信息,對于用戶添加信息,需要根據添加界面,根據選框的內容進行填寫所要添加的數據信息,信息輸入完成后判斷數據信息是否符合要求,符合要求則添加完成,用戶所添加的信息不符合要求,則需要返回到第一步,重新輸入數據信息,再進行判斷操作,如圖3-2所示。

圖3-2 信息添加流程圖

3.3.3信息刪除流程

不管是哪個用戶角色進入到不通的系統操作界面,都可以進行不同的信息內容的操作功能,對用系統數據信息的刪除,用戶一旦將信息刪除,那么該刪除的數據信息將無法恢復,所以用戶在對數據刪除事,一定判斷刪除的內容是否是確定要刪除的,確定無誤后選擇確定刪除操作,如圖3-3所示。

圖3-3?信息刪除流程圖

  1. 系統設計

4.1系統架構設計

美食分享平臺的系統項目的概述設計分析,主要是美食分享平臺信息的具體分析,進行數據庫的是設計,數據采用mysql數據庫,并且對于系統的設計采用比較人性化的操作設計,對于系統出現的錯誤信息可以及時做出處理及反饋。

基于美食分享平臺的設計基于現有的功能,可以實現管理員:系統用戶、美食信息管理、制作方法管理、菜品分類管理、系統管理、公告信息管理、資源管理等詳細的了解及統計分析。根據系統功能需求建立的模塊關系圖如下圖:

圖4-1管理員功能模塊圖

基于美食分享平臺的設計現有的功能,可以實現普通用戶功能:首頁、公告信息、菜系文化、美食信息、制作方法、個人中心等詳細的了解及統計分析;根據系統功能需求建立的模塊關系圖如下圖:

圖4-2用戶功能模塊圖??????????????

4.2開發流程設計

美食分享平臺的開發對管理模塊和系統使用的數據庫進行分析,編寫代開發,規劃和操作是構建信息管理應用程序的必要三步曲,它決定了系統是否能夠真正實現預設功能以及是否可以在成功設計后實施。在開發過程中,每個階段必須嚴格按照線性順序進行開發,并且在相應階段生成的每個工作都可以通過技術進行驗證和檢查。確保一個階段完成后是正確的,不會造成下一階段拖拽現象,使系統完成設計功能后得到保證。

從美食分享平臺的成功開發經驗來看,上述方法效果最為明顯,最大程度地降低了系統開發的復雜性。如圖4-2所示。

圖4-2開發系統流程圖

4.3數據庫設計

數據庫是信息系統的基礎和核心。數據庫設計的好壞直接影響到信息系統開發的成敗。創建數據庫表首先確定實體的屬性和實體之間的關系。根據關系創建一個數據表。4.3.1實體ER圖

數據庫是整個軟件編程中最重要的一個步驟,對于數據庫問題主要是判定數據庫的數量和結構公式的創建。展示系統使用的是Mysql進行對數據庫進行管理,進行保證數據的安全性、穩定性等。

概念模型的設計是為了抽象真實世界的信息,并對信息世界進行建模。它是數據庫設計的強大工具。數據庫概念模型設計可以通過E-R圖描述現實世界的概念模型。系統的E-R圖顯示了系統中實體之間的鏈接。而且Mysql數據庫是自我保護能力比較強的數據庫,下圖是美食分享平臺總E-R關系圖:

圖4-4系統E-R關系圖

這些功能可以充分滿足美食分享平臺的需求。此系統功能較為全面如下圖系統功能結構如圖4-5所示。

圖4-5系統功能結構圖

4.3.2數據表

我們可以根據數據結構的詳細分析要求,我們根據輸入和輸出數據量的要求進行分析,確定什么表,結構之間的關系,我們可以驗證,調整和完善,查詢和瀏覽過程,可以實現數據庫,以使用戶對數據和功能有更多要求。

基于系統使用的數據庫管理系統的特點,對數據庫的概念模型進行了轉換和構建。但是,這個系統只需要充分考慮美食分享平臺的功能,而且組織比較清晰。

表access_token (登陸訪問時長)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

token_id

int

10

0

N

Y

臨時訪問牌ID

2

token

varchar

64

0

Y

N

臨時訪問牌

3

info

text

65535

0

Y

N

4

maxage

int

10

0

N

N

2

最大壽命:默認2小時

5

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

創建時間:

6

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間:

7

user_id

int

10

0

N

N

0

用戶編號:

表article (文章:用于內容管理系統的文章)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

article_id

mediumint

8

0

N

Y

文章id:[0,8388607]

2

title

varchar

125

0

N

Y

標題:[0,125]用于文章和html的title標簽中

3

type

varchar

64

0

N

N

0

文章分類:[0,1000]用來搜索指定類型的文章

4

hits

int

10

0

N

N

0

點擊數:[0,1000000000]訪問這篇文章的人次

5

praise_len

int

10

0

N

N

0

點贊數

6

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

創建時間:

7

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間:

8

source

varchar

255

0

Y

N

來源:[0,255]文章的出處

9

url

varchar

255

0

Y

N

來源地址:[0,255]用于跳轉到發布該文章的網站

10

tag

varchar

255

0

Y

N

標簽:[0,255]用于標注文章所屬相關內容,多個標簽用空格隔開

11

content

longtext

2147483647

0

Y

N

正文:文章的主體內容

12

img

varchar

255

0

Y

N

封面圖

13

description

text

65535

0

Y

N

文章描述

表article_type (文章分類)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

type_id

smallint

5

0

N

Y

分類ID:[0,10000]

2

display

smallint

5

0

N

N

100

顯示順序:[0,1000]決定分類顯示的先后順序

3

name

varchar

16

0

N

N

分類名稱:[2,16]

4

father_id

smallint

5

0

N

N

0

上級分類ID:[0,32767]

5

description

varchar

255

0

Y

N

描述:[0,255]描述該分類的作用

6

icon

text

65535

0

Y

N

分類圖標:

7

url

varchar

255

0

Y

N

外鏈地址:[0,255]如果該分類是跳轉到其他網站的情況下,就在該URL上設置

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

創建時間:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間:

表auth (用戶權限管理)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

auth_id

int

10

0

N

Y

授權ID:

2

user_group

varchar

64

0

Y

N

用戶組:

3

mod_name

varchar

64

0

Y

N

模塊名:

4

table_name

varchar

64

0

Y

N

表名:

5

page_title

varchar

255

0

Y

N

頁面標題:

6

path

varchar

255

0

Y

N

路由路徑:

7

position

varchar

32

0

Y

N

位置:

8

mode

varchar

32

0

N

N

_blank

跳轉方式:

9

add

tinyint

3

0

N

N

1

是否可增加:

10

del

tinyint

3

0

N

N

1

是否可刪除:

11

set

tinyint

3

0

N

N

1

是否可修改:

12

get

tinyint

3

0

N

N

1

是否可查看:

13

field_add

text

65535

0

Y

N

添加字段:

14

field_set

text

65535

0

Y

N

修改字段:

15

field_get

text

65535

0

Y

N

查詢字段:

16

table_nav_name

varchar

500

0

Y

N

跨表導航名稱:

17

table_nav

varchar

500

0

Y

N

跨表導航:

18

option

text

65535

0

Y

N

配置:

19

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

創建時間:

20

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間:

表categorization_of_dishes (菜品分類)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

categorization_of_dishes_id

int

10

0

N

Y

菜品分類ID

2

dishes_and_cuisines

varchar

64

0

Y

N

菜品菜系

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

創建時間

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間

表collect (收藏)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

collect_id

int

10

0

N

Y

收藏ID:

2

user_id

int

10

0

N

N

0

收藏人ID:

3

source_table

varchar

255

0

Y

N

來源表:

4

source_field

varchar

255

0

Y

N

來源字段:

5

source_id

int

10

0

N

N

0

來源ID:

6

title

varchar

255

0

Y

N

標題:

7

img

varchar

255

0

Y

N

封面:

8

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

創建時間:

9

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間:

表comment (評論)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

comment_id

int

10

0

N

Y

評論ID:

2

user_id

int

10

0

N

N

0

評論人ID:

3

reply_to_id

int

10

0

N

N

0

回復評論ID:空為0

4

content

longtext

2147483647

0

Y

N

內容:

5

nickname

varchar

255

0

Y

N

昵稱:

6

avatar

varchar

255

0

Y

N

頭像地址:[0,255]

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

創建時間:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間:

9

source_table

varchar

255

0

Y

N

來源表:

10

source_field

varchar

255

0

Y

N

來源字段:

11

source_id

int

10

0

N

N

0

來源ID:

表food_information (美食信息)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

food_information_id

int

10

0

N

Y

美食信息ID

2

dish_name

varchar

64

0

Y

N

菜品名稱

3

dishes_and_cuisines

varchar

64

0

Y

N

菜品菜系

4

cover_photo

varchar

255

0

Y

N

封面圖片

5

nutrient_composition

varchar

64

0

Y

N

營養成分

6

ingredients_composition

text

65535

0

Y

N

食材組成

7

procedure_steps

text

65535

0

Y

N

做法步驟

8

introduction_to_food

longtext

2147483647

0

Y

N

美食簡介

9

hits

int

10

0

N

N

0

點擊數

10

praise_len

int

10

0

N

N

0

點贊數

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

創建時間

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間

表hits (用戶點擊)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

hits_id

int

10

0

N

Y

點贊ID:

2

user_id

int

10

0

N

N

0

點贊人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

創建時間:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間:

5

source_table

varchar

255

0

Y

N

來源表:

6

source_field

varchar

255

0

Y

N

來源字段:

7

source_id

int

10

0

N

N

0

來源ID:

表notice (公告)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

notice_id

mediumint

8

0

N

Y

公告id:

2

title

varchar

125

0

N

N

標題:

3

content

longtext

2147483647

0

Y

N

正文:

4

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

創建時間:

5

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間:

表praise (點贊)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

praise_id

int

10

0

N

Y

點贊ID:

2

user_id

int

10

0

N

N

0

點贊人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

創建時間:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間:

5

source_table

varchar

255

0

Y

N

來源表:

6

source_field

varchar

255

0

Y

N

來源字段:

7

source_id

int

10

0

N

N

0

來源ID:

8

status

bit

1

0

N

N

1

點贊狀態:1為點贊,0已取消

表production_method (制作方法)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

production_method_id

int

10

0

N

Y

制作方法ID

2

dish_name

varchar

64

0

Y

N

菜品名稱

3

type_of_dishes

varchar

64

0

Y

N

菜品菜系

4

cover_photo

varchar

255

0

Y

N

封面圖片

5

materials_used

varchar

64

0

Y

N

所用材料

6

cooking_duration

varchar

64

0

Y

N

烹飪時長

7

publish_users

int

10

0

Y

N

0

發布用戶

8

user_name

varchar

64

0

Y

N

用戶姓名

9

procedure_steps

text

65535

0

Y

N

做法步驟

10

details_remarks

text

65535

0

Y

N

詳情備注

11

release_date

date

10

0

Y

N

發布日期

12

hits

int

10

0

N

N

0

點擊數

13

praise_len

int

10

0

N

N

0

點贊數

14

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

創建時間

15

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間

表regular_users (普通用戶)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

regular_users_id

int

10

0

N

Y

普通用戶ID

2

user_name

varchar

64

0

Y

N

用戶姓名

3

user_age

varchar

64

0

Y

N

用戶年齡

4

user_gender

varchar

64

0

Y

N

用戶性別

5

examine_state

varchar

16

0

N

N

已通過

審核狀態

6

user_id

int

10

0

N

N

0

用戶ID

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

創建時間

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間

表slides (輪播圖)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

slides_id

int

10

0

N

Y

輪播圖ID:

2

title

varchar

64

0

Y

N

標題:

3

content

varchar

255

0

Y

N

內容:

4

url

varchar

255

0

Y

N

鏈接:

5

img

varchar

255

0

Y

N

輪播圖:

6

hits

int

10

0

N

N

0

點擊量:

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

創建時間:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間:

表upload (文件上傳)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

upload_id

int

10

0

N

Y

上傳ID

2

name

varchar

64

0

Y

N

文件名

3

path

varchar

255

0

Y

N

訪問路徑

4

file

varchar

255

0

Y

N

文件路徑

5

display

varchar

255

0

Y

N

顯示順序

6

father_id

int

10

0

Y

N

0

父級ID

7

dir

varchar

255

0

Y

N

文件夾

8

type

varchar

32

0

Y

N

文件類型

表user (用戶賬戶:用于保存用戶登錄信息)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

user_id

mediumint

8

0

N

Y

用戶ID:[0,8388607]用戶獲取其他與用戶相關的數據

2

state

smallint

5

0

N

N

1

賬戶狀態:[0,10](1可用|2異常|3已凍結|4已注銷)

3

user_group

varchar

32

0

Y

N

所在用戶組:[0,32767]決定用戶身份和權限

4

login_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

上次登錄時間:

5

phone

varchar

11

0

Y

N

手機號碼:[0,11]用戶的手機號碼,用于找回密碼時或登錄時

6

phone_state

smallint

5

0

N

N

0

手機認證:[0,1](0未認證|1審核中|2已認證)

7

username

varchar

16

0

N

N

用戶名:[0,16]用戶登錄時所用的賬戶名稱

8

nickname

varchar

16

0

Y

N

昵稱:[0,16]

9

password

varchar

64

0

N

N

密碼:[0,32]用戶登錄所需的密碼,由6-16位數字或英文組成

10

email

varchar

64

0

Y

N

郵箱:[0,64]用戶的郵箱,用于找回密碼時或登錄時

11

email_state

smallint

5

0

N

N

0

郵箱認證:[0,1](0未認證|1審核中|2已認證)

12

avatar

varchar

255

0

Y

N

頭像地址:[0,255]

13

open_id

varchar

255

0

Y

N

針對獲取用戶信息字段

14

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

創建時間:

15

vip_level

varchar

255

0

Y

N

會員等級

16

vip_discount

double

11

2

Y

N

0.00

會員折扣

表user_group (用戶組:用于用戶前端身份和鑒權)

編號

名稱

數據類型

長度

小數位

允許空值

主鍵

默認值

說明

1

group_id

mediumint

8

0

N

Y

用戶組ID:[0,8388607]

2

display

smallint

5

0

N

N

100

顯示順序:[0,1000]

3

name

varchar

16

0

N

N

名稱:[0,16]

4

description

varchar

255

0

Y

N

描述:[0,255]描述該用戶組的特點或權限范圍

5

source_table

varchar

255

0

Y

N

來源表:

6

source_field

varchar

255

0

Y

N

來源字段:

7

source_id

int

10

0

N

N

0

來源ID:

8

register

smallint

5

0

Y

N

0

注冊位置:

9

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

創建時間:

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新時間:

第5章系統實現

5.1普通用戶功能模塊

登錄:管理員和普通用戶在登錄界面輸入賬號+密碼,點擊“登錄”按鈕,系統在用戶數據庫表中會對管理員和用戶的賬號進行匹配,賬號+密碼正確的話,就會登錄到系統中各個用戶的主管理界面,否則提示對應的信息,返回到登錄的界面,其主界面展示如下圖所示。

登錄界面如下圖所示。

圖5-1用戶登錄界面

登錄系統主要代碼如下。

/**

?????* 登錄

?????* @param data

?????* @param httpServletRequest

?????* @return

?????*/

????@PostMapping("login")

????public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {

????????log.info("[執行登錄接口]");

????????String username = data.get("username");

????????String email = data.get("email");

????????String phone = data.get("phone");

????????String password = data.get("password");

????????List resultList = null;

????????Map<String, String> map = new HashMap<>();

????????if(username != null && "".equals(username) == false){

????????????map.put("username", username);

????????????resultList = service.select(map, new HashMap<>()).getResultList();

????????}

????????else if(email != null && "".equals(email) == false){

????????????map.put("email", email);

????????????resultList = service.select(map, new HashMap<>()).getResultList();

????????}

????????else if(phone != null && "".equals(phone) == false){

????????????map.put("phone", phone);

????????????resultList = service.select(map, new HashMap<>()).getResultList();

????????}else{

????????????return error(30000, "賬號或密碼不能為空");

????????}

????????if (resultList == null || password == null) {

????????????return error(30000, "賬號或密碼不能為空");

????????}

????????//判斷是否有這個用戶

????????if (resultList.size()<=0){

????????????return error(30000,"用戶不存在");

????????}

????????User byUsername = (User) resultList.get(0);

????????Map<String, String> groupMap = new HashMap<>();

????????groupMap.put("name",byUsername.getUserGroup());

????????List groupList = userGroupService.select(groupMap, new HashMap<>()).getResultList();

????????if (groupList.size()<1){

????????????return error(30000,"用戶組不存在");

????????}

????????UserGroup userGroup = (UserGroup) groupList.get(0);

????????//查詢用戶審核狀態

????????if (!StringUtils.isEmpty(userGroup.getSourceTable())){

????????????String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();

????????????String res = String.valueOf(service.runCountSql(sql).getSingleResult());

????????????if (res==null){

????????????????return error(30000,"用戶不存在");

????????????}

????????????if (!res.equals("已通過")){

????????????????return error(30000,"該用戶審核未通過");

????????????}

????????}

????????//查詢用戶狀態

????????if (byUsername.getState()!=1){

????????????return error(30000,"用戶非可用狀態,不能登錄");

????????}

????????String md5password = service.encryption(password);

????????if (byUsername.getPassword().equals(md5password)) {

????????????// 存儲Token到數據庫

????????????AccessToken accessToken = new AccessToken();

????????????accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));

????????????accessToken.setUser_id(byUsername.getUserId());

????????????tokenService.save(accessToken);

????????????// 返回用戶信息

????????????JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));

????????????user.put("token", accessToken.getToken());

????????????JSONObject ret = new JSONObject();

????????????ret.put("obj",user);

????????????return success(ret);

????????} else {

????????????return error(30000, "賬號或密碼不正確");

????????}

}

菜系文化:用戶點擊可通過局部搜索進行查看菜系文化,同時可進行點贊、收藏和評論。其界面如下圖所示。

圖5-2 菜系文化功能界面

美食信息:用戶點擊可通過搜索菜品名稱和菜品類型進行查看美食信息列表,同時可進行點贊、收藏和評論。如下圖所示。

圖5-3 美食信息界面

制作方法:用戶點擊可通過搜索菜品名稱和菜品菜系進行查看制作方法列表,同時可進行點贊、收藏和評論。界面圖如下。

圖5-4 制作方法界面

個人中心:用戶點擊頭像可查看“個人中心”,包括個人首頁、制作方法和收藏。點擊“制作方法”“添加”,輸入菜品名稱,選擇菜品菜系,上傳封面圖片,輸入所用材料、烹飪時長,選擇發布用戶,輸入用戶姓名、做法步驟、詳情備注,選擇發布時間,點擊“提交”按鈕進行添加制作方法。界面圖如下。

圖5-5 個人中心界面

圖5-6 制作方法添加界面

5.2管理員功能模塊

美食信息管理:管理員點擊可查看美食信息列表和誒是信息添加;點擊“美食信息添加”,輸入菜品名稱,選擇菜品類型,上傳封面圖片,輸入營養成分、食材組成、做法步驟和美食簡介,點擊“提交”按鈕進行添加。同時可對美食信息進行增刪改查。如下圖所示。

圖5-7 ?美食信息添加界面

系統管理:當管理員點擊”系統管理“這一菜單時,可查看輪播圖管理,如需添加新的輪播圖,點擊下方側”添加“按鈕,上傳輪播圖,填寫標題,點擊“提交”按鈕進行添加。同時管理員可對輪播圖進行增刪改查。如下圖所示。

圖5-8 ?系統管理界面

資源管理:管理員點擊可查看菜系文化和分類列表;如需添新的菜系文化,上傳封面圖,填寫標題,選擇分類,輸入標簽,填寫描述和正文,點擊“提交”按鈕進行添加。如下圖所示。

圖5-9 資源管理界面

第六章系統測試

6.1測試目的

程序設計不能保證沒有錯誤,這是一個開發過程,在錯誤或錯誤的過程中難以避免,這是不可避免的,但我們不能使這些錯誤始終存在于系統中,錯誤可能會造成無法估量的后果 如系統崩潰,安全信息,系統無法正常啟動,導致安裝用戶手機屏幕等,為了避免這些問題,我們需要測試程序,并發現這些問題,并糾正它們 ,并使系統更長時間穩定成熟,本章的作用是發現這些問題,并對其進行修改,雖然耗時費力,但長期非常重要和必要系統的開發。

軟件測試與開發過程是一樣的,都必須按照軟件工程的正規原理進行,遵守管理學理論。不過,目前國內的軟件測試已經積累了大量經驗和方法,步驟相對成熟,軟件測試的效率也越來越高。

美食分享平臺的實現,對于系統中功能模塊的實現及操作都必須通過測試進行來評判系統是否可以準確的實現。在美食分享平臺正式上傳使用之前必須做的一步就是系統測試,對于測試發現的錯誤及時修改處理,保證系統準確無誤的供給用戶使用。

6.2測試方案設計

6.2.1 測試策略

1、功能測試

從用戶的角度來看,測試時不了解新開發軟件的內部結構,因此可以將系統與黑匣子進行比較,盲目輸入后可以查看系統給出的反饋。這種測試屬于黑盒測試,在測試中如果輸入錯誤信息系統會報錯。

2、性能測試

測試軟件程序的整體狀況(稱為性能測試)通常使用自動化測試工具來檢測系統的整體功能,在負載測試和壓力測試之間進行分配,在某些情況下,將這兩種情況結合起來。雖然壓力測試可以檢測到系統可以提供的最高級別的服務,但負載測試可以測試系統如何響應增加的負載。

6.2.2 測試分析

測試評估系統質量的方法不局限于系統編碼和過程,應該與軟件設計工作和歷史需求分析密切相關。

軟件測試應遵循以下原則:

(1)軟件測試應盡快進行,整個測試部分應在軟件開發和設計的整個過程中進行。如發現錯誤,立即處理,將大大減少軟件開發的時間,并提高軟件的質量。

(2)在軟件的各種測試中,測試過程中使用的計劃、報告等應妥善處理和存儲。其主要目的是為了便于以后系統的維護。

(3)軟件測試整個過程中的聚類現象應優先考慮。

(4)對于軟件測試,我們應該盡量不去和自己設計的系統進行參考,而是要測試對方的程序,以確保軟件測試結果的客觀性和公平性。

(5)整個測試計劃嚴格按照軟件測試的具體實施細則進行。

(6)對整個測試結果進行綜合檢查,盡量避免重復錯誤。

本美食分享平臺滿足用戶的要求和需求,本美食分享平臺的使用能夠有效的提高用戶的使用率。

6.3?測試結果

測試后得到的性能和用例,系統具有足夠的正確性、可靠性、穩定性,并且可以對輸入數據進行準確的點擊操作處理和響應測試用戶的體驗也得到了很好的反饋和響應時間。合理的范圍,可以兼容所有主流瀏覽器,設計所需的效果。

第七章 總結與展望

通過美食分享平臺的開發,本人鞏固了之前學過的知識,如今將平時所學到的知識融合在設計中,在設計過程中,做了很多的準備,首先,在數據庫系統的設計過程中,尤其是在數據庫的工作原理、工作特點,對其深刻的討論,與此同時,對于小型站點來說,最好服務器的選擇,其次,利用所學的知識點分析所做的系統,并在此基礎上設計。

目前本系統已經上線,正在試運行階段,用戶反饋良好,基本完成用戶所需,試運行過程中沒有出現阻斷性問題,有一些不足和小問題也及時予以修正,系統上線后,為了保證數據的安全性,對系統進行了備份操作,系統備份是每兩個月備份一次,數據庫備份為每周備份一次,系統部署在租賃的云平臺服務器中。

本次系統上線成功后,得到了用戶的高度認可,但是在功能上和性能上還需做進一步的研究處理,使其有更高的性能和更好的用戶體驗。

系統在以后的升級過程中,需要解決一系列用戶所提出的問題,例如打印過程中如何避免瀏覽器的兼容性問題,大量用戶訪問時,如何保持較高的響應速度,在系統今后的升級過程中將著重解決這些安全性問題。

參考文獻

[1]劉雨菲,黃濤,李云鵬.游客通過社交媒體分享美食照片的機制研究[J].旅游論壇,2024,17(01):42-56.DOI:10.15962/j.cnki.tourismforum.202401005.

[2]趙旭東.計算機軟件開發與設計中Java語言的應用研究[J].信息與電腦(理論版),2023,35(24):31-33.

[3]馬慶.計算機軟件開發中JAVA編程語言的應用[J].山西電子技術,2023(06):84-86+98.

[4]Laura M ,Cecilia G ,Nikolay D . [J]. British Food Journal,2023,125(11).

[5]尹應荊.JAVA編程語言在計算機軟件開發中的應用[J].石河子科技,2023(05):45-47.

[6]Liang C . [J]. Academic Journal of Computing & Information Science,2023,6(9).

[7]袁琳琳.淺析Java語言在計算機軟件開發中的應用[J].信息記錄材料,2023,24(09):81-83.DOI:10.16009/j.cnki.cn13-1295/tq.2023.09.006.

[8]楊玲.基于文本挖掘的美食旅游者在線分享行為特征研究[J].黑龍江科學,2023,14(15):16-19.

[9]郭朝陽. 少數民族美食類短視頻的內容生產研究[D].河北大學,2023.DOI:10.27103/d.cnki.ghebu.2023.000520.

[10]石子靜. 抖音美食探店短視頻的景觀生產與批判研究[D].西南大學,2024.DOI:10.27684/d.cnki.gxndx.2023.002273.

[11]王志亮,紀松波.基于SpringBoot的Web前端與數據庫的接口設計[J].工業控制計算機,2023,36(03):51-53.

[12]徐文倩,謝丹艷,黎柳,等.基于JSP的美食分享網站的設計與實現[J].電腦知識與技術,2023,19(09):57-59.DOI:10.14004/j.cnki.ckt.2023.0421.

[13]喻佳,吳丹新.基于SpringBoot的Web快速開發框架[J].電腦編程技巧與維護,2021(09):31-33.DOI:10.16184/j.cnki.comprg.2021.09.013.

[14]鮮易洲,楊蕊,吳蓉,等.時食美食分享系統的設計與分析[J].電腦知識與技術,2021,17(09):85-87.DOI:10.14004/j.cnki.ckt.2021.0845.

[15]張珊珊. 快手短視頻中的美食景觀現象研究[D].暨南大學,2021.DOI:10.27167/d.cnki.gjinu.2020.001139.

[16]楊艷妮. 分享餐飲美食平臺的政府監管問題研究[D].吉林大學,2019.

[17]陳瑞.基于Springboot高并發Java Web開發模式[J].電腦編程技巧與維護,2019(04):27-30.DOI:10.16184/j.cnki.comprg.2019.04.009.

[18]李之奇,封成玉,徐一鳳,等.基于SpringBoot的工控組態軟件Web發布系統設計與實現[J].信息技術與網絡安全,2019,38(04):88-91.DOI:10.19358/j.issn.2096-5133.2019.04.019.



致謝

時光飛逝,轉眼間我在學校的這些年生活即將結束,回顧這幾年的學習生活,收獲良多,既有幸福也有難過,學校生活的結束對于我來說也是一個新的開始。論文即將完成,在此,我心中有許多想要感謝的人。首先感謝我的導師,不僅在學習研究方面加以指導,也在生活和為人處世上給予幫助。還要感謝授課老師,你們嚴謹的學術精神和積極向上的工作態度都在激勵我的成長和進步。感謝多年來一直生活在一起的室友,謝謝你們多年來的陪伴和照顧。最后,要感謝各位論文評審老師,感謝您們在百忙之中抽空評閱本論文并給出寶貴的意見和建議。

免費領取項目源碼,請關注?點贊收藏并私信博主,謝謝~

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/40724.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/40724.shtml
英文地址,請注明出處:http://en.pswp.cn/web/40724.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

3D Web輕量化平臺HOOPS Web Platform的功能與應用分析

隨著3D技術在多個行業的廣泛應用&#xff0c;對于3D模型輕量化的需求日益增長。HOOPS Web Platform作為一個先進的3D模型輕量化平臺&#xff0c;為開發人員提供了一整套工具來構建和部署基于Web的工程應用程序。本文將分析HOOPS Web Platform的核心功能和它在不同領域的應用情況…

軟件工程學面向對象

一、面向對象方法學概述 傳統的生命周期方法學在消除軟件非結構化、促進軟件開發工程化方面起了積極的作用&#xff0c;但仍有許多不足&#xff0c;存在的主要問題有&#xff1a;①生產率提高的幅度不能滿足需要&#xff1b; ②軟件重用程度很低&#xff1b; ③軟件很難維護&a…

MySQL中的MVCC解析

MySQL中的MVCC解析 多版本并發控制是MySQL中實現高并發的一種關鍵技術。通過對數據進行多版本的管理&#xff0c;MVCC能夠在保證數據一致性的同時&#xff0c;提高數據庫的并發性能。本文將深入探討MySQL中的MVCC機制&#xff0c;包括其原理、實現方式以及優勢。 MVCC的原理 …

華為機試HJ22汽水瓶

華為機試HJ22汽水瓶 題目&#xff1a; 某商店規定&#xff1a;三個空汽水瓶可以換一瓶汽水&#xff0c;允許向老板借空汽水瓶&#xff08;但是必須要歸還&#xff09;。 小張手上有n個空汽水瓶&#xff0c;她想知道自己最多可以喝到多少瓶汽水。 想法&#xff1a; 因為可以…

硬件開發工具Arduino IDE

招聘信息共享社群 關聯上篇文章樂鑫ESPRESSIF芯片開發簡介 Arduino IDE&#xff08;集成開發環境&#xff09;是為Arduino硬件開發而設計的一款軟件&#xff0c;它提供了一個易于使用的圖形界面&#xff0c;允許用戶編寫、編輯、編譯和上傳代碼到Arduino開發板。Arduino IDE的…

深入分析 Android BroadcastReceiver (八)

文章目錄 深入分析 Android BroadcastReceiver (八)1. 系統與自定義實現1.1 系統廣播機制1.1.1 系統廣播的實現原理1.1.2 系統廣播的源碼分析 1.2 自定義廣播機制1.2.1 自定義廣播的實現步驟1.2.2 自定義廣播的源碼分析 2. 廣播機制設計的初衷與優勢2.1 設計初衷2.2 優勢 3. 總…

有了提示詞框架的雞,你就能讓AI下提示詞的蛋~

我們在問AI問題的時候&#xff0c;是不是經常感覺AI的回答沒有別人的那么好&#xff1f; 難道別人的AI更加聰明&#xff1f; 很可能是因為我們的提示詞沒寫好&#xff0c;那么&#xff0c;寫出好的提示詞很難嗎&#xff1f; 一點都不難&#xff0c;其實這都是有套路的&#…

Hive排序字段解析

Hive排序字段解析 在Hive中&#xff0c;CLUSTER BY、DISTRIBUTE BY、SORT BY和ORDER BY是用于數據分發和排序的關鍵子句&#xff0c;它們各自有不同的用途和性能特點。讓我們逐一解析這些子句&#xff1a; 1. DISTRIBUTE BY 用途: 主要用于控制如何將數據分發到Reducer。它可…

NSSCTF-Web題目24(RCE-空格繞過、過濾繞過)

目錄 [MoeCTF 2021]babyRCE 1、題目 2、知識點 3、思路 [SWPUCTF 2022 新生賽]funny_web 4、題目 5、知識點 6、思路 [MoeCTF 2021]babyRCE 1、題目 2、知識點 空格繞過、過濾繞過 3、思路 出現源碼&#xff0c;進行代碼審計 需要我們GET方式上傳一個rce變量&#x…

解碼注意力機制:自注意力與跨注意力的奧秘

標題&#xff1a;解碼注意力機制&#xff1a;自注意力與跨注意力的奧秘 自注意力&#xff08;Self-Attention&#xff09;和跨注意力&#xff08;Cross-Attention&#xff09;是深度學習中的重要概念&#xff0c;尤其在自然語言處理&#xff08;NLP&#xff09;領域的Transfor…

[FreeRTOS 功能應用] 互斥量 功能應用

文章目錄 一、基礎知識點二、代碼講解三、結果演示四、代碼下載 一、基礎知識點 [FreeRTOS 基礎知識] 互斥量 概念 [FreeRTOS 內部實現] 互斥量 本實驗是基于STM32F103開發移植FreeRTOS實時操作系統&#xff0c;互斥量實戰操作。 使用工具&#xff1a;Keil、串口工具 二、代碼…

Rust變量綁定

變量綁定 Rust 通過靜態類型確保類型安全。變量綁定可以在聲明時說明類型&#xff0c;不過在多數情況下&#xff0c;編譯器能夠從上下文推導出變量的類型&#xff0c;從而大大減少了類型說明的工作。 使用 let 綁定操作可以將值&#xff08;比如字面量&#xff09;綁定&#…

全面解析智慧校園行政辦公的協作日程功能

在智慧校園的行政辦公生態系統中&#xff0c;協作日程功能成為促進團隊互動與工作同步的橋梁&#xff0c;它超越了傳統個人日程的范疇&#xff0c;強調的是集體效率與信息的無縫對接。這一功能設計的核心&#xff0c;在于創造一個開放而有序的平臺&#xff0c;讓教育工作者們能…

2-4 Softmax 回歸的從零開始實現

就像我們從零開始實現線性回歸一樣&#xff0c; 我們認為softmax回歸也是重要的基礎&#xff0c;因此應該知道實現softmax回歸的細節。 本節我們將使用剛剛在2-3節中引入的Fashion-MNIST數據集&#xff0c; 并設置數據迭代器的批量大小為256。 import torch from IPython impo…

【chtagpt】pytorch中的方法對象和屬性

文章目錄 定義一個簡單的類屬性和方法對象的區別PyTorch 張量中的屬性和方法對象進一步解釋總結self.value value 的解釋示例解釋總結 為了更好地理解方法對象和屬性&#xff0c;我們可以通過一個簡單的類來演示這兩者的區別及其用法。 定義一個簡單的類 我們定義一個名為 My…

開發個人Go-ChatGPT--1 項目介紹

開發個人Go-ChatGPT--1 項目介紹 開發個人Go-ChatGPT--1 項目介紹知識點大綱文章目錄項目地址 開發個人Go-ChatGPT–1 項目介紹 本文將以一個使用Ollama部署的ChatGPT為背景&#xff0c;主要還是介紹和學習使用 go-zero 框架&#xff0c;開發個人Go-ChatGPT的服務器后端&#…

主從復制原理及操作

主從復制的概念 主從復制是一種在數據庫系統中常用的數據備份和讀取擴展技術&#xff0c;通過將一個數據庫服務器&#xff08;主服務器&#xff09;上的數據變更自動同步到一個或多個數據庫服務器&#xff08;從服務器&#xff09;上&#xff0c;以此來實現數據的冗余備份、讀…

解決video.js在demo中可以播放,在已有項目中無限waiting的問題

video.js的是有推薦的和react一起使用的寫法的&#xff1a;https://videojs.com/guides/react/ 但是這個寫法在demo中可以正常播放&#xff0c;在放在現有的項目中則播不出來&#xff0c;也不報錯&#xff0c;就是log里顯示on waiting后就什么動靜都沒有了&#xff0c;頁面顯示…

貝葉斯學習中先驗分布的詳細解釋

在貝葉斯學習中&#xff0c;先驗分布&#xff08;Prior Distribution&#xff09;是一個非常重要的概念。它代表了在觀察到任何數據之前&#xff0c;對未知參數的初始信念或知識。先驗分布的選擇通常基于領域知識、歷史數據或者純粹的假設。 文章目錄 先驗分布的含義先驗分布的…

dtpay聚合支付系統在跨境支付場景中技術及業務方案

1 什么是跨境支付 我們從兩個維度來分析什么是跨境支付&#xff0c;第一個維度我們從資金流向分析&#xff0c;國內的消費者在境外進行消費對于國內資金流來說這屬于資金流出&#xff0c;這是跨境支付的第一種應用場景。第二個場景國外游客在國內進行消費&#xff0c;這屬于資…