MySQL への Express 接続
準備作業
Webstorm の新しいプロジェクトを開き、express を選択して Express を作成しますプロジェクト。

作成が成功すると、ページは次のようになります。

mysql に接続するにはデータベースを使用するには、mysql モジュールをインポートする必要があります。

構成ファイルの作成
プロジェクト内に構成ファイルを作成し、その構成ファイル内にデータベースに接続するための configfigdb.js ファイルを作成し、次のように記述しますファイル内:
1 2 3 4 5 6 7 8 | var mysql = {
host: "127.0.0.1" ,
user: "root" ,
password: "root23" ,
database: "info" ,
port:3306
}
module.exports = mysql;
|
ログイン後にコピー
データベースを操作するためのインターフェースファイルを作成します
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | const express = require ('express');
const router = express.Router();
const mysql = require ('mysql');
const db = require ('../config/configdb');
router.get('test',(req,res)=>{
let conn = mysql.createConnection(db);
conn.query('select * from student',(err,results,fieldes)=>{
if (err){
throw err;
}
res.send(results);
})
conn. end ((err)=>{
console.log(err);
})
module.exports = router;
|
ログイン後にコピー
完了後、app.jsファイルに追加します:
1 2 | var dbRouter = require ('./routes/option')
app. use ('/db',dbRouter);
|
ログイン後にコピー
Postmanで次のようにテストします。

データベース接続プール テクノロジ
データベース接続プールとは
データベース接続プールは、次の場合に十分な数のデータベース接続オブジェクトを確立します。プログラムが開始され、これらの接続オブジェクトが接続されます。 プールが形成され、プログラムはプール内の接続オブジェクトを動的に申請、使用、および解放します。
データベース接続プールの役割は何ですか?
データベース接続プールは、データベース接続オブジェクトの割り当て、管理、解放を担当します。これにより、アプリケーションは既存のデータベース接続オブジェクトを再利用できます。再作成するのではなく。
データベース接続プール テクノロジの例
1. mysql モジュールをインポートします
1 | var mysql = require ('mysql');
|
ログイン後にコピー
2. データベース接続プールを作成します
接続プールを作成します
1 | var pool = mysql.createPool(options);
|
ログイン後にコピー
options パラメータは、多くの属性設定を含むオブジェクトです。このオブジェクトは、接続プール内の接続によって均一に使用されるさまざまなオプションを指定するために使用されます。
1 2 3 4 5 6 7 8 9 10 11 | const pool = mysql.createPool({
connectionLimit:20,
host:'localhost',
port:3306,
user:'root',
password:'123456',
database:'info'
})
module.exports = pool;
|
ログイン後にコピー
connectionLimit
: 接続プール内のリンクの最大数を指定するために使用され、デフォルトの属性値は 10 です。
queueLimit
: 使用されます。許可される保留中の接続の最大数を指定します。保留中の接続の数がこの値を超えると、すぐにエラーがスローされます。デフォルトの属性値は 0 です。これは、許可されない保留中の接続の最大数を表します。
multipleStatements
: 複数の SQL ステートメントの実行を許可するかどうか、デフォルト値は false です。
host
: データベース サーバーのアドレス
user
: 接続データベースのユーザー名
password
: データベースに接続するためのパスワード
database
: データベース名
3.データベース リンク オブジェクト
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | pool.getConnection((err, conn) => {
if (err) {
console.log(err)
} else {
let sql = 'select * from bookinfo';
conn.query(sql, (err, results) => {
if (err) {
console.log(err)
} else {
res.send(results);
conn.release();
}
})
}
})
|
ログイン後にコピー
4. データベース接続オブジェクトを解放します
完全なインスタンス
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | const express = require ('express');
const pool = require ('../config/dbmysql');
const router = express.Router();
router.get('/books',(req,res)=>{
pool.getConnection((err,conn)=>{
if (err){
console.log(err)
} else {
let sql = 'select * from bookinfo';
conn.query(sql,(err,results)=>{
if (err) {
console.log(err)
} else {
res.send(results);
conn.release();
}
})
}
})
})
module.exports = router;
|
ログイン後にコピー
結果テスト:

以上がMySQL への Express 接続とデータベース接続プールの分析例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。