에 연결합니다. webstorm 새 프로젝트를 열고 express를 선택하여 Express 프로젝트를 만듭니다.
성공적으로 생성된 후 페이지는 다음과 같습니다.
mysql 데이터베이스에 연결하려면 mysql 모듈을 가져와야 합니다.
프로젝트에서 구성 파일을 생성하고 구성 파일에 congfigdb.js 파일을 생성하여 데이터베이스에 연결하고 파일에 다음을 작성합니다.
var mysql = { host: "127.0.0.1",//这是数据库的地址 user: "root",//需要用户的名字 password: "root23",//用户密码 ,如果你没有密码,直接双引号就是 database: "info",//数据库名字 port:3306//数据库使用的端口号 } module.exports = mysql;//用module.exports暴露出这个接口
const express = require('express'); const router = express.Router(); //导入MySQL 模块 const mysql = require('mysql'); //导入配置文件 const db = require('../config/configdb'); router.get('test',(req,res)=>{ //创建数据库连接对象 let conn = mysql.createConnection(db); //查询bookinfo中所有数据 conn.query('select * from student',(err,results,fieldes)=>{ //fieldes表示具体的字段 if(err){ throw err; } res.send(results); }) //关闭数据库链接 conn.end((err)=>{ console.log(err); }) module.exports = router;
Complete 그런 다음 app.js 파일을 추가합니다.
var dbRouter = require('./routes/option') app.use('/db',dbRouter);
다음과 같이 Postman에서 테스트합니다.
데이터베이스 연결 풀은 프로그램이 시작될 때 충분한 수의 데이터베이스 연결 개체를 확보하고 이러한 연결 개체의 풀을 형성하며 프로그램은 풀의 연결 개체를 동적으로 적용, 사용 및 해제합니다.
데이터베이스 연결 풀은 데이터베이스 연결 개체를 할당, 관리 및 해제하는 역할을 담당합니다. 이를 통해 애플리케이션은 기존 데이터베이스 연결 개체를 재사용할 수 있습니다. 하나를 다시 만드는 것보다.
var mysql = require('mysql');
연결 풀 생성
var pool = mysql.createPool(options);
옵션 매개 변수는 개체이며 많은 속성 구성이 있습니다. 연결 풀에서 연결을 통합적으로 사용하기 위한 다양한 옵션을 지정하는 데 사용됩니다.
//创建数据库连接池 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语句,默认值为falsehost
:数据库服务器的地址user
:连接数据库的用户名password
:连接数据库的密码database
: 데이터베이스 이름
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(); } }) } })
conn.release();
const express = require('express'); const pool = require('../config/dbmysql'); const router = express.Router(); /* * http://localhost:3000/dbmysql/books * */ 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!