08.node+express+mongo form 提交(继07讲继续整合)

本文通过实例演示如何使用Express框架配合body-parser中间件处理POST请求,并利用MongoDB进行数据存储。主要内容包括创建HTML表单、配置Express服务器及路由、实现数据库插入操作。

继07之后, 继续整合,因为express的post 需要body-parser
所以需要引入

cnpm i body-parser --save-dev

01.创建form页面

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="lib/jquery.min.js"></script>
</head>
<body>
<form>
    姓名:<input type="text" name="name">
    年龄:<input type="text" name="age">
    密码:<input type="text" name="pwd">
    <input type="button" id="btn" value="提交" >
</form>
<script>
    $("#btn").click(function(){
        alert("bb");
        $.ajax({
            url:"/insert",
            type:"post",
            data:$("form").serialize(),
            success:function(data){
                if(data==1){
                    alert("保存成功");
                }else{
                    alert("保存失败");
                }
            }
        });
    });
</script>
</body>
</html>

02创建server.js (服务)

var express = require("express");
var bodyParser = require("body-parser");
var db = require("./module/db.js");
var app = express();
app.use(express.static("./public"));
/**
 * bodyParser.json()和bodyParser.urlencoded()区别:
 * 一个接受form请求,一个接受json请求,解析的规则不一样
 */
app.use(bodyParser.urlencoded({extended:false}));
app.post("/insert",function(req,res){
    console.log(req.body);
    db.insert("worker",{
        name:req.body.name,
        age:req.body.age,
        pwd:req.body.pwd
    },function(err,results){
        if(err){
            res.json("-1");
        }else{
            res.json("1");
        }
    });
});
app.listen(80);

03.db.js 封装了查询和插入操作(07有讲到)

var mongodb = require("mongodb");
var MongoClient = mongodb.MongoClient;
function _connect(callback){
    var url = "mongodb://localhost:27017/company";
    MongoClient.connect(url,function(err,db){
        callback(err,db);
        db.close();
    })
}
exports.find = function(collectionName,json,callback){
    _connect(function(err,db){
        db.collection(collectionName).find(query).toArray(function(err,results){
            callback(err,results);
        });
    })
}
exports.insert = function(collectionName,json,callback){
    _connect(function(err,db){
        db.collection(collectionName).insertOne(json,function(err,results){
            callback(err,results);
        })
    });
}
内容概要:本文系统介绍了算术优化算法(AOA)的基本原理、核心思想及Python实现方法,并通过图像分割的实际案例展示了其应用价值。AOA是一种基于种群的元启发式算法,其核心思想来源于四则运算,利用乘除运算进行全局勘探,加减运算进行局部开发,通过数学优化器加速函数(MOA)和数学优化概率(MOP)动态控制搜索过程,在全局探索与局部开发之间实现平衡。文章详细解析了算法的初始化、勘探与开发阶段的更新策略,并提供了完整的Python代码实现,结合Rastrigin函数进行测试验证。进一步地,以Flask框架搭建前后端分离系统,将AOA应用于图像分割任务,展示了其在实际工程中的可行性与高效性。最后,通过收敛速度、寻优精度等指标评估算法性能,并提出自适应参数调整、模型优化和并行计算等改进策略。; 适合人群:具备一定Python编程基础和优化算法基础知识的高校学生、科研人员及工程技术人员,尤其适合从事人工智能、图像处理、智能优化等领域的从业者;; 使用场景及目标:①理解元启发式算法的设计思想与实现机制;②掌握AOA在函数优化、图像分割等实际问题中的建模与求解方法;③学习如何将优化算法集成到Web系统中实现工程化应用;④为算法性能评估与改进提供实践参考; 阅读建议:建议读者结合代码逐行调试,深入理解算法流程中MOA与MOP的作用机制,尝试在不同测试函数上运行算法以观察性能差异,并可进一步扩展图像分割模块,引入更复杂的预处理或后处理技术以提升分割效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值