介绍
在当今的网络开发中,使用HTML和CSS来进行页面布局是非常基础的技能,而MongoDB作为一种NoSQL数据库,具有简单易用的特点。本文将介绍利用HTML和CSS进行页面布局,并以MongoDB为后端数据库的web应用的开发过程。
环境搭建
1.安装MongoDB
安装MongoDB非常简单,只需在官网下载对应的安装程序,然后按照提示进行安装即可。
2.启动MongoDB服务
在安装完成MongoDB后,我们还需要手动启动它。打开命令行工具(Windows下为cmd),输入以下命令即可启动MongoDB服务:
mongod
3.安装依赖
在进行web应用的开发时,我们需要一些包来帮助我们完成不同的任务,如交互和后端数据连接等。这里我们需要安装一些依赖包。
1) Express
Express是Node.js的一个框架,可以帮助我们快速构建web应用程序。在命令行中输入以下命令即可安装Express:
npm install express
2) MongoDB
安装MongoDB驱动程序也很简单,只需在命令行中输入以下命令即可:
npm install mongodb
页面设计
1.CSS设计
在设计web页面的时候,我们需要先进行布局设计。这里我们选择使用CSS进行页面样式设计。以下是一个简单的样式表:
body {
font-family: Arial, Helvetica, sans-serif;
font-size: 14px;
}
input[type=text], select {
width: 100%;
padding: 12px 20px;
margin: 8px 0;
display: inline-block;
border: 1px solid #ccc;
border-radius: 4px;
box-sizing: border-box;
}
input[type=submit] {
width: 100%;
background-color: #4CAF50;
color: white;
padding: 14px 20px;
margin: 8px 0;
border: none;
border-radius: 4px;
cursor: pointer;
}
.container {
width: 50%;
margin: auto;
padding: 10px;
}
table {
font-family: arial, sans-serif;
border-collapse: collapse;
width: 100%;
}
td, th {
border: 1px solid #dddddd;
text-align: left;
padding: 8px;
}
tr:nth-child(even) {
background-color: #dddddd;
}
2. HTML设计
我们需要设计一个表单来进行数据的输入和查询,以下是一个简单的HTML代码,由一个查询表单和一个存储数据的表格构成:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>MongoDB and HTML/CSS driven web app</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div class="container">
<form action="/search" method="post">
<label>Enter Text</label>
<input type="text" name="text" placeholder="Enter search text">
<input type="submit" value="Search">
</form>
<br/>
<b>Recent searches:</b>
<br/>
<table>
<tr>
<th>Date</th>
<th>Search Text</th>
</tr>
% for(var i=0; i<recentSearches.length; i++) { %
<tr>
<td>%=: recentSearches[i].date %></td>
<td>%=: recentSearches[i].text %></td>
</tr>
% } %
</table>
</div>
</body>
</html>
编写后端代码
1.连接MongoDB
使用MongoDB驱动程序来连接MongoDB,以下是一个简单的连接MongoDB的代码:
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017/test';
MongoClient.connect(url, function(err, client) {
console.log("Connected successfully to server");
const db = client.db("test");
client.close();
});
2.处理查询请求
在这个web应用中,我们需要通过查询输入的文本来从MongoDB数据库中检索数据。以下就是一个简单的响应查询请求的Express代码:
const express = require('express');
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017/test';
const app = express();
app.use(express.urlencoded({ extended: true }));
app.post('/search', (req, res) => {
const text = req.body.text;
MongoClient.connect(url, function(err, client) {
const db = client.db('test');
const collection = db.collection('searches');
collection.insertOne({ date: Date.now(), text: text });
collection.find({ text: text }).toArray(function(err, docs) {
res.status(200);
res.set('Content-Type', 'text/html');
res.render('search.njk', { results: docs });
});
client.close();
});
});
app.listen(3000, () => {
console.log('Listening on port 3000');
})
总结
本文介绍了使用HTML和CSS进行页面布局,并以MongoDB为后端数据库的web应用的开发过程。我们展示了如何连接MongoDB,处理查询请求和HTML页面的设计。这是一个非常简单的web应用,但是这个项目可以扩展,从而处理更复杂的数据交互和处理任务。