今回は、mysqlデータベースをnodejsに接続するための手順の分析をお届けします。nodejsをmysqlデータベースに接続するための注意事項は何ですか?実際のケースを見てみましょう。 この記事の例では、mysql データベースに接続する Nodejs と基本的な知識のポイントについて説明します。以下のように、参照用に全員と共有します。
1. よく使用されるいくつかのグローバル変数 1. filename
現在のファイルのパスを取得します
3. process.cwd()
現在のプロジェクトのディレクトリを取得しますfilename
获取当前文件的路径
2、dirname
获取当前文件的目录
3、process.cwd()
获取当前工程的目录
二、文件的引入与导出
1、使用require
引入文件
2、使用module.exports
导出文件中指定的变量、方法、对象
三、node
项目的搭建目录结构
demo
package.json 当前项目所依赖的包或者模块
router 存放路由的文件
views 存放视图的模块
public 静态文件
module 书写模块比如数据库
app.js 主入口文件
四、将路由视图单独写在router
文件中demo
1、视图视图文件
const express = require("express"); const router = express.Router(); router.get("/", (req, res) => { res.send("hello word"); }); router.get("/article", (req, res) => { res.send("我是文章列表"); }) module.exports = router;
2、在主文件中调用
'use strict'; const express = require("express"); const app = express(); app.use("/",require("./router/03_router")) app.use("/app",require("./router/03_router1")) app.listen(3000);
五、使用ejs
模板
1、需要安装但可以不引入
npm install ejs --save
2、在主文件中配置
//配置模板的文件路径 app.set("views",dirname+"/views"); //配置模板引擎 app.set("view engine","ejs");
3、使用
①、模板文件
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> <h1>我是模板渲染的</h1> </body> </html>
②、在路由中渲染模板
'use strict'; const express = require("express"); const router = express.Router(); router.get("/", (req, res) => { //可以直接使用res.render("03_index"); res.render("03_index.ejs"); }); router.get("/article", (req, res) => { res.send("我是文章列表"); }) module.exports = router;
③、主文件
'use strict'; const express = require("express"); const app = express(); //配置模板的文件路径 app.set("views",dirname+"/views"); //配置模板引擎 app.set("view engine","ejs"); app.use("/",require("./router/03_router")) app.use("/app",require("./router/03_router1")) app.listen(3000);
六、关于ejs
模板文件的使用
1、返回数据
... let dataset = { name:"张三", age:20, books:['三国演义','西游记','红楼梦','水浒传'] } res.render("03_index.ejs",dataset); ...
2、普通的字段
<h2><%= name %></h2> <h2><%= age %></h2>
3、迭代数组
<ul> <% for(let i in books){%> <li><%= books[i] %></li> <%}%> </ul>
七、加载静态文件
1、主文件中配置
//设置静态文件的加载(js,css,img) app.use(express.static(dirname+"/public"));
2、在模板中使用
<link rel="stylesheet" href="./css/bootstrap.css" rel="external nofollow" > <script type="text/javascript" src="./js/jquery-3.1.1.min.js"></script> <img src="./img/002.jpg"> ...
八、使用mysql
数据库
1、在module
中创建一个db.js
的文件
'use strict'; const mysql = require("mysql"); /** * 将整个方法全部暴漏出去 * @param sql sql语句 * @param arg 传递到sql语句中的参数,可以不写 * @param callback 回调函数,可以不写 */ module.exports = function (sql,arg,callback) { //1.创建连接(根据自己的数据库配置) let config = mysql.createConnection({ host:"localhost", //数据库的地址 user:"root", //数据库用户名 password:"root", //数据库密码 port:"3306", //mysql数据库的端口号 database:"mybatistest" //使用那个数据库 }); //2.开始连接数据库 config.connect(); //3.对数据库的增删改查操作 config.query(sql,arg,(err,data)=>{ callback && callback(err,data); }) //4.关闭数据库 config.end(); }
2、在router
视图中使用查询数据
①、引入文件
//引入数据库文件 const db = require("./../module/db");
②、视图中使用
router.get("/", (req, res) => { db("select * from m_dept",(err,data)=>{ console.log(data); res.render("03_index.ejs",{data:data}); }) });
3、新增数据
①、前端页面见代码案例
②、通过req.query
获取用户数据参数
router.get("/regist",(req, res)=>{ //获取到输入参数,前提是input上要写name console.log(req.query); db("insert into student(name,age) values(?,?)",[req.query.username,req.query.age],(err,data)=>{ console.log(data); if(data){ res.send("成功"); } }) })
九、关于node
返回json
2. ファイルのインポートとエクスポート
1. require
を使用してファイルを導入します
2. module.exports
を使用して、ファイルに指定された変数、メソッド、オブジェクトをエクスポートします
router
🎜 ファイルにルーティング ビューを個別に記述します🎜demo
🎜🎜1. ビューファイル🎜... res.json({ info:"成功", code:1 }); ...
ejs
🎜templateを使用する🎜🎜🎜1. 🎜rrreee🎜2. メインファイルに🎜rrreeeを設定🎜3. 🎜🎜①、テンプレートファイル🎜rrreee🎜②、ルートにレンダリングテンプレート🎜rrreee🎜を使用、メインファイル🎜🎜🎜 6. 🎜の使用についてejs
🎜テンプレートファイル🎜🎜🎜🎜1. 戻りデータ🎜rrreee🎜 2. 通常のフィールド🎜rrreee🎜 3. 反復配列🎜rrreee🎜🎜🎜 7. 静的ファイルをロード🎜🎜🎜🎜 1.設定するメイン ファイルで 🎜rrreee を使用します 🎜 2. テンプレートで 🎜rrreee を使用します 🎜🎜🎜 8. 🎜 mysql
を使用します🎜Database🎜🎜🎜🎜1. db.js
を作成します。 module
のファイル🎜rrreee🎜2. router
で、ビューでクエリデータを使用します🎜🎜①、ファイルをインポートします🎜rrreee🎜②、ビューで🎜rrreee🎜3を使用します、新しいデータを追加します🎜🎜①、フロントエンドページのコードケースを参照してください🎜🎜②、req.クエリ
を渡してユーザーデータパラメータを取得します🎜rrreee🎜🎜🎜9。フロントエンドとバックエンドの分離開発モードでは、node🎜は🎜json
🎜🎜🎜🎜🎜を返します。ミドルエンドとバックエンドによって返されるデータは通常jsonであり、必要はありませんejs テンプレート エンジンを使用する方法 🎜rrreee🎜 この記事の事例を読んだ後は、その方法を習得したと思います。さらに興味深い情報については、PHP 中国語 Web サイトの他の関連記事に注目してください。 🎜🎜推奨読書: 🎜🎜🎜Nodejsのパスワード暗号化処理方法のまとめ🎜🎜🎜🎜🎜Vueのデータ転送方法のまとめ🎜🎜🎜以上がnodejs を mysql データベースに接続する手順の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。