Node.js 是一個運行在伺服器端的 JavaScript。
SQL 是一種結構化查詢語言,用於管理關係型資料庫。這兩個技術結合起來可以實現動態網站的開發。
在開發動態網站時候,我們需要與資料庫建立連接,並且執行 SQL 語句來讀寫資料。在 Node.js 中,可以使用許多模組來幫助我們連接資料庫,最受歡迎的是 mysql
模組。
頁面分層指的是將前端的 HTML、CSS 和 JavaScript 程式碼分成多個層次,每個層次的程式碼職責不同。這樣做的好處是可以更好地組織程式碼,提高程式碼可維護性。
下面我們來介紹如何將 Node.js 和 SQL 與頁面分層結合起來實作動態網站的開發。
1. 專案結構
為了更好地組織程式碼,我們需要將程式碼分成多個層次。以下是專案的目錄結構:
myapp/ ├── app.js ├── package.json ├── node_modules/ ├── public/ │ ├── css/ │ │ └── style.css │ ├── js/ │ │ ├── main.js │ │ └── jquery.min.js │ └── img/ │ └── logo.png └── views/ ├── index.html ├── header.html ├── footer.html └── error.html
-
app.js
:專案的入口檔案。 -
package.json
:專案的設定檔。 -
node_modules/
:存放專案所需的模組。 -
public/
:存放靜態文件,如 CSS、JavaScript 和圖片等。 -
views/
:存放 HTML 範本檔案。
2. 資料庫連線
在 app.js
中,我們需要連接資料庫。使用 mysql
模組連接 MySQL 資料庫的程式碼如下:
const mysql = require('mysql'); // 创建连接 const connection = mysql.createConnection({ host: 'localhost', // 数据库主机地址 user: 'root', // 数据库用户名 password: '123456', // 数据库密码 database: 'myapp' // 数据库名称 }); // 连接数据库 connection.connect((err) => { if (err) { console.error('连接数据库失败:', err); return; } console.log('连接数据库成功'); }); // 关闭连接 connection.end((err) => { if (err) { console.error('关闭连接失败:', err); return; } console.log('关闭连接成功'); });
3. 資料庫操作
連接資料庫之後,我們就可以執行 SQL 語句來讀寫資料了。以下是一個簡單的例子,在資料庫中插入一條資料:
const sql = 'INSERT INTO users SET ?'; const data = { username: 'test', password: '123456' }; connection.query(sql, data, (err, results, fields) => { if (err) { console.error('插入数据失败:', err); return; } console.log('插入数据成功'); });
這裡使用了 query
方法來執行 SQL 語句。第一個參數是 SQL 語句,第二個參數是要插入的數據,以物件的形式表示。
4. 頁面分層
在 views
目錄中,我們存放網站的 HTML 範本檔案。這些模板檔案透過模板引擎來渲染成最終的 HTML 頁面。
我們使用 ejs
模板引擎來渲染 HTML 模板。以下是一個簡單的範例:
<!-- index.html --> nbsp;html> <title>Node.js 实现 SQL 和页面分层</title> <link> <div> <h1 id="欢迎来到我的网站">欢迎来到我的网站!</h1> <p></p> </div> <script></script> <script></script>
可以看到,在HTML 中使用 和
來插入JavaScript 程式碼。
include
指令用來引入其他的 HTML 模板檔案。
在 Node.js 中,使用 ejs
模組來渲染 HTML 模板。以下是一個範例:
const ejs = require('ejs'); const fs = require('fs'); const template = fs.readFileSync('views/index.html', 'utf8'); const data = { message: '欢迎访问我的网站!' }; const html = ejs.render(template, data); console.log(html);
這段程式碼將 views/index.html
範本檔案讀取進來,使用物件 { message: '歡迎造訪我的網站! ' }
來渲染模板,最終產生最終的 HTML 頁面。
5. 總結
透過以上的介紹,我們學習如何使用 Node.js 和 SQL 與頁面分層結合起來實現動態網站的開發。在實際專案中,還有更多的技術和工具可以使用,如 ORM 框架、Webpack、Gulp 等,可以大幅提高開發效率和程式碼品質。
以上是如何將Node.js和SQL與頁面分層結合實現動態網站開發的詳細內容。更多資訊請關注PHP中文網其他相關文章!

使用ID選擇器在CSS中並非固有地不好,但應謹慎使用。 1)ID選擇器適用於唯一元素或JavaScript鉤子。 2)對於一般樣式,應使用類選擇器,因為它們更靈活和可維護。通過平衡ID和類的使用,可以實現更robust和efficient的CSS架構。

html5'sgoalsin2024focusonrefinement和optimization,notNewFeatures.1)增強performanceandeffipedroptimizedRendering.2)inviveAccessibilitywithRefinedwithRefinedTributesAndEllements.3)explityconcerns,尤其是withercercern.4.4)

html5aimedtotoimprovewebdevelopmentInfourKeyAreas:1)多中心供應,2)語義結構,3)formcapabilities.1)offlineandstorageoptions.1)html5intoryements html5introctosements introdements and toctosements and toctosements,簡化了inifyingmediaembedingmediabbeddingingandenhangingusexperience.2)newsements.2)

IDsshouldbeusedforJavaScripthooks,whileclassesarebetterforstyling.1)Useclassesforstylingtoallowforeasierreuseandavoidspecificityissues.2)UseIDsforJavaScripthookstouniquelyidentifyelements.3)Avoiddeepnestingtokeepselectorssimpleandimproveperformance.4

classSelectorSareVersAtileAndReusable,whileIdSelectorSareEctorAreNiqueAndspecific.1)USECLASSSELECTORS(表示)forStylingmultilemtsswithsharedCharacteristics.2)UseIdSelectors.2)UseIdSelectors(eustotedBy#)

IDSareuniqueIdentifiersForsingLelements,而LileclassesstyLemultiplelements.1)useidsforuniquelementsand andjavascripthooks.2)useclassesforporporporblesable,flexiblestylestylestylinglingactossmultiplelements。

使用僅類選擇器可以提高代碼的重用性和可維護性,但需要管理類名和優先級。 1.提高重用性和靈活性,2.組合多個類創建複雜樣式,3.可能導致冗長類名和優先級問題,4.性能影響微小,5.遵循最佳實踐如簡潔命名和使用約定。

ID和class選擇器在CSS中分別用於唯一和多元素的樣式設置。 1.ID選擇器(#)適用於單一元素,如特定導航菜單。 2.Class選擇器(.)用於多元素,如統一按鈕樣式。應謹慎使用ID,避免過度特異性,並優先使用class以提高樣式複用性和靈活性。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

WebStorm Mac版
好用的JavaScript開發工具

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境