Node.js ialah JavaScript yang berjalan di bahagian pelayan.
SQL ialah bahasa pertanyaan berstruktur yang digunakan untuk mengurus pangkalan data hubungan. Kedua-dua teknologi ini digabungkan untuk membolehkan pembangunan laman web dinamik.
Apabila membangunkan tapak web dinamik, kita perlu mewujudkan sambungan dengan pangkalan data dan melaksanakan pernyataan SQL untuk membaca dan menulis data. Dalam Node.js, banyak modul boleh digunakan untuk membantu kami menyambung ke pangkalan data, yang paling popular ialah modul mysql
.
Pelapis halaman merujuk kepada membahagikan kod HTML, CSS dan JavaScript bahagian hadapan kepada berbilang peringkat, dengan setiap peringkat mempunyai tanggungjawab kod yang berbeza. Kelebihan ini ialah kod boleh disusun dengan lebih baik dan kebolehselenggaraan kod boleh dipertingkatkan.
Mari perkenalkan cara menggabungkan Node.js dan SQL dengan lapisan halaman untuk membangunkan tapak web dinamik.
Untuk menyusun kod dengan lebih baik, kita perlu membahagikan kod kepada berbilang peringkat. Berikut ialah struktur direktori projek:
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
: fail kemasukan projek. package.json
: Fail konfigurasi projek. node_modules/
: Menyimpan modul yang diperlukan untuk projek. public/
: Simpan fail statik seperti CSS, JavaScript dan imej. views/
: menyimpan fail templat HTML. Dalam app.js
, kita perlu menyambung ke pangkalan data. Kod untuk menggunakan modul mysql
untuk menyambung ke pangkalan data MySQL adalah seperti berikut:
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('关闭连接成功'); });
Selepas menyambung ke pangkalan data, kami boleh melaksanakan pernyataan SQL ke. membaca dan menulis data. Berikut ialah contoh mudah untuk memasukkan sekeping data ke dalam pangkalan data:
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('插入数据成功'); });
Kaedah query
digunakan di sini untuk melaksanakan pernyataan SQL. Parameter pertama ialah pernyataan SQL, dan parameter kedua ialah data yang akan dimasukkan, dinyatakan dalam bentuk objek.
Dalam direktori views
, kami menyimpan fail templat HTML tapak web. Fail templat ini dipaparkan ke halaman HTML akhir oleh enjin templat.
Kami menggunakan enjin templat ejs
untuk memaparkan templat HTML. Berikut ialah contoh mudah:
<!-- index.html --> <!DOCTYPE html> <html> <head> <title>Node.js 实现 SQL 和页面分层</title> <link rel="stylesheet" href="/css/style.css"> </head> <body> <% include header.html %> <div class="container"> <h1>欢迎来到我的网站!</h1> <p><%= message %></p> </div> <% include footer.html %> <script src="/js/jquery.min.js"></script> <script src="/js/main.js"></script> </body> </html>
Seperti yang anda lihat, kod JavaScript dimasukkan menggunakan <% %>
dan <%= %>
dalam HTML. Arahan include
digunakan untuk memperkenalkan fail templat HTML yang lain.
Dalam Node.js, gunakan modul ejs
untuk memaparkan templat HTML. Berikut ialah contoh:
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);
Kod ini dibaca dalam views/index.html
fail templat, menggunakan objek { message: '欢迎访问我的网站!' }
untuk memaparkan templat dan akhirnya menjana halaman HTML terakhir.
Melalui pengenalan di atas, kami telah mempelajari cara menggunakan Node.js dan SQL digabungkan dengan lapisan halaman untuk membangunkan tapak web dinamik. Dalam projek sebenar, terdapat lebih banyak teknologi dan alatan yang boleh digunakan, seperti rangka kerja ORM, Webpack, Gulp, dsb., yang boleh meningkatkan kecekapan pembangunan dan kualiti kod.
Atas ialah kandungan terperinci Cara menggabungkan Node.js dan SQL dengan lapisan halaman untuk mencapai pembangunan laman web dinamik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!