express是一个提供web服务的框架(内置http模块),他简化了http的相关内容,将对应的内容封装为了特定的方法
npm i express -S
- //导入express 是一个函数
- const express=require('express')
- //createApplication 其实就是导出的express
- let app=express() //返回一个应用对象
- // use中间件
- app.use(express.urlencoded())
- //根据对应的请求来进行处理get处理get请求 post处理post请求 put处理put delete处理delete
- //出入路由地址 处理函数(请求对象 响应对象)
- app.get('/',(req,res,next)=>{
- res.setHeader('Content-type','application/json;charset=utf-8')
- res.end('主页访问')
- })
- //监听端口 如果不传入对应的ip地址为localhost 和端口ip为3000
- app.listen(8080,'127.0.0.1',()=>{
- console.log('当前服务已经启动');
- })
urlencoded 转换body的数据
static 将静态资源变成一个服务
json 读取相关json文件
Router 返回一个路由对象
- let app =express()
- //app中间件引入
- app.use(express.urlencoded())//body数据以及转换
- //访问路径 不加默认为/
- app.use('/public',express.static('./img')) //静态资源(默认是不能被外部访问)
- app.use(express.json()) //json文件读取相关
- let router=express.Router() //路由对象
get 接收get请求post 接收postdelete 接收delete请求put 接收put请求all 所有请求都可以接收listen 监听对应的端口号use 中间件使用(加载某些功能件加载到对应的应用使用中)disable 禁用某个设置 disabled 是否禁用//app中间件引入app.use(express.urlencoded())//body数据获取及转换//访问路径不加默认为/app.use('/public',express.static('./img')) //静态资源管理(默认情况不可以被外界访问)app.use(express.json()) //json文件读取相关let router = express.Router() //路由对象
enable 开启某个设置 enabled 是否开启set 配置某个设置 get获取某个设置app.route 路由规则加载render 渲染engine 模板引擎配置
- // 路由localhost里面有get,post,all方法
- router.get('/',(req,res,next)=>{
- console.log('hello');
- res.send({
- message:'ok'
- })
- })
- app.get('/',(req,res)=>{
- res.json({message:'get'})
- })
- app.post('/',(req,res)=>{
- res.json({message:'post'})
- })
- app.delete('/',(req,res)=>{
- res.json({message:'delete'})
- })
- app.put('/',(req,res)=>{
- res.json({message:'put'})
- })
- app.all('/',(req,res,next)=>{
- res.json({message:'all'})
- })
- app.set('a','a') //设置值
- console.log(app.disable('a'));
- app.disable('a')
- console.log(app.disable('a')); //禁用
- console.log(app.enable('a')); //模板引擎
- app.listen('8080',()=>{
- console.log('服务器启动成功');
- })
MVC是一种模型,分别为model数据,view视图,controller控制。三层架构是指后端的包(文件夹)分的层级最少分三层,这个三层分别是web层(处理请求及对应的接口书写),service(业务层处理对应的业务),dao(数据库相关操作)。mvc是三层架构中web层的体现

- const express = require('express')
- const {userRouter} = require('./controller/userController')
- //新建一个应用对象
- const app = express()
- //中间件使用
- app.use(express.urlencoded())
- app.use(express.static('./public'))
- //路由引入
- app.use('/user',userRouter)
- //分离controller 主要使用的路由分离
- const express = require('express')
- const {getUserById,register,login} = require('../service/userService')
- //新建一个路由对象
- const userRouter = express.Router()
- //书写对应的接口
- userRouter.get('/:id',getUserById)
- //注册接口
- userRouter.post('/register',register)
- //登录接口
- userRouter.post('/login',login)
-
- module.exports = {
- userRouter
- }
- //导入对应的dao
- const {
- findUserByID,
- saveUser,
- checkUserName,
- queryUserByUsernameAndPassword
- } = require('../dao/userDao')
- const crypto = require('crypto'); //引入crypto模块
- const jwt = require('jsonwebtoken'); //引入jwt模块
- const {
- privateKey,
- publicKey
- }
-
- //导入对应的工具类 进行相关sql语句执行
- const {execu} = require('../utils/mysqlUtil')
- //根据id进行查找
- const findUserByID = (id) =>execu('select * from t_user where id = ?',id)
- module.exports={
- findUserByID
- }
-