星空网 > 软件开发 > Java

node连接数据库(express+mysql)

操作是在ubuntu系统的下环境,简单记录一下过程。

首先用apt-get安装数据库,键入命令 sudo apt-get install mysql-server , 一路回车,然后在一个界面设置一下数据库root的密码就好了

在数据库里面我们需要创建一些东西。键入 mysql -uroot -p××××× 来进入sql控制台。

1.先创建数据集 create database databasename ;

2.use database databasename ;

3.建表(这里创建一个很简单的,只有自增id,用户名和密码)

 create table user_info (                                                                                            id int(11) not null auto_increment,   username varchar(30) not null,   password varchar(30) not null,   primary key ( id )  )ENGINE=InnoDB DEFAULT CHARSET=utf8 ;

4.插入一条数据 insert into user_info values(1,'mtjss2','123456') ;

下面是node的部分

创建一个文件夹,比如叫myapp,在里面npm init之后就会也node_modules的依赖文件夹

用 npm install --save 安装如下依赖

1.express

2.mysql

3.body-parser(用来解析post参数) 

由于express好像没有自己的数据库封装,所以一般会新建models文件夹,然后写数据库的逻辑,如果只是想简单测试可以直接写在app.js中

这里举例在models下有一个user.js的逻辑封装类,暂时只有一个通过username获取用户信息的方法,其他可以以后加

  var mysql = require('mysql') ;                                                                                       //connection config  var connection = mysql.createConnection({    host : 'localhost' ,    user : 'root' ,    password : '123456' ,    database : 'my_box' });   function User(user){   this.username = user.username ;   this.password = user.password ; }  User.getUserbyUsername = function(username,callback){    var selectSql = 'select * from user_info where username = ?' ;   connection.query(selectSql,[username],function(err,res){   ¦  if(err){   ¦  ¦  console.log('getUserbyUsername err:' + err) ;   ¦  ¦  return ;   ¦  }    ¦  console.log('Get name success') ;   ¦  callback(err,res) ;   }) ; } ;  module.exports = User ;

再贴一下app.js暂时没写路由,就是对/和/reg方法的处理

  var mysql = require('mysql') ;                                                                                       //connection config  var connection = mysql.createConnection({    host : 'localhost' ,    user : 'root' ,    password : '123456' ,    database : 'my_box'  });   function User(user){   this.username = user.username ;   this.password = user.password ; }  User.getUserbyUsername = function(username,callback){    var selectSql = 'select * from user_info where username = ?' ;   connection.query(selectSql,[username],function(err,res){   ¦  if(err){   ¦  ¦  console.log('getUserbyUsername err:' + err) ;   ¦  ¦  return ;   ¦  }    ¦  console.log('Get name success') ;   ¦  callback(err,res) ;   }) ; } ;  module.exports = User ;

index.html这个主页面在views文件夹下,没什么代码,不过也贴一下

<!DOCTYPE html><html><head>  <title>my box</title></head><body>  <form action="/reg" method="post">    <input type="text" name="username"/>    <input type="submit" value="submit"/>  </form></body></html>

这样用 node app.js 启动以后在浏览器里访问 localhost:3000就行了,在input里输入数据库中的用户名可以的得到那条数据。




原标题:node连接数据库(express+mysql)

关键词:MYSQL

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

虾皮、Lazada爆款打造计划,自养号测评补单技术已成重要的运营手段 :https://www.goluckyvip.com/news/10611.html
亚马逊物流攻略:如何选择美国FBA头程物流? :https://www.goluckyvip.com/news/10612.html
键盘乐器海外仓一件代发 :https://www.goluckyvip.com/news/10613.html
篮球海外仓一件代发 :https://www.goluckyvip.com/news/10614.html
最新资讯:跨境电商公司裁员热潮开始,Wayfair ,Tiktok等知名公司都加入裁员大军:https://www.goluckyvip.com/news/106145.html
做外贸指定货代,想不到的麻烦:https://www.goluckyvip.com/news/106146.html
桂林酒店销售多少钱 桂林旅游宾馆价格:https://www.vstour.cn/a/410227.html
十里银滩旅游攻略玩什么住哪里怎么去?:https://www.vstour.cn/a/410228.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流