- Python 使用 Flask
python
from flask import Flask, request, jsonify
app = Flask(name) earnersclub247.com
模拟的商品数据库
products = [
{“id”: 1, “name”: “Apple”, “price”: 1.00},
{“id”: 2, “name”: “Banana”, “price”: 0.50},
]
@app.route(‘/products’, methods=[‘GET’])
def get_products():
return jsonify(products)
@app.route(‘/products/int:product_id’, methods=[‘GET’])
def get_product(product_id):
product = next((item for item in products if item[“id”] == product_id), None)
if product:
return jsonify(product)
else:
return jsonify({“error”: “Product not found”}), 404
if name == ‘main’:
app.run(debug=True)
2. JavaScript 使用 Node.js 和 Express
首先,你需要安装 Node.js 和 npm。然后,你可以创建一个新的项目并安装 Express:
bash
mkdir shopping-cart-node
cd shopping-cart-node
npm init -y
npm install express
然后,创建一个名为 app.js 的文件:
javascript
const express = require(‘express’);
const app = express();
const port = 3000;
// 模拟的商品数据库
const products = [
{ id: 1, name: ‘Apple’, price: 1.00 },
{ id: 2, name: ‘Banana’, price: 0.50 },
];
app.get(‘/products’, (req, res) => {
res.json(products);
});
app.get(‘/products/:productId’, (req, res) => {
const productId = parseInt(req.params.productId);
const product = products.find(p => p.id === productId);
if (product) {
res.json(product);
} else {
res.status(404).json({ error: ‘Product not found’ });
}
});
app.listen(port, () => {
console.log(Shopping cart app listening at http://localhost:${port}
);
});
3. Java 使用 Spring Boot
对于 Java,你通常需要设置一个 Maven 或 Gradle 项目,并添加 Spring Boot 依赖。这里仅提供一个简化的类结构示例:
java
// 假设你已经创建了一个Spring Boot项目
@RestController
@RequestMapping(“/products”)
public class ProductController {
// 模拟的商品数据库
private static final List<Product> products = Arrays.asList(
new Product(1, "Apple", 1.00),
new Product(2, "Banana", 0.50)
);
@GetMapping
public List<Product> getAllProducts() {
return products;
}
@GetMapping("/{id}")
public ResponseEntity<Product> getProductById(@PathVariable Long id) {
return products.stream()
.filter(product -> product.getId().equals(id))
.findFirst()
.map(ResponseEntity::ok)
.orElseGet(() -> ResponseEntity.notFound().build());
}
// 假设有一个Product类
static class Product {
private Long id;
private String name;
private Double price;
// 构造函数、getter和setter省略
}
}
这些示例仅展示了如何设置基本的路由和模拟的数据库。在实际应用中,你需要处理更复杂的逻辑,如连接真实数据库、用户认证、会话管理等。由于“多种电脑语言”涵盖非常广泛,我将选择三种流行的编程语言来展示一个简单的购物商城的核心部分:Python (使用Flask框架)、JavaScript (Node.js + Express框架,用于后端),以及Java (Spring Boot框架)。请注意,这些示例将侧重于后端部分,因为前端(HTML, CSS, JavaScript)通常是跨语言的,并且可以用在任何后端之上。
- Python 使用 Flask
python
from flask import Flask, request, jsonify
app = Flask(name)
模拟的商品数据库
products = [
{“id”: 1, “name”: “Apple”, “price”: 1.00},
{“id”: 2, “name”: “Banana”, “price”: 0.50},
]
@app.route(‘/products’, methods=[‘GET’])
def get_products():
return jsonify(products)
@app.route(‘/products/int:product_id’, methods=[‘GET’])
def get_product(product_id):
product = next((item for item in products if item[“id”] == product_id), None)
if product:
return jsonify(product)
else:
return jsonify({“error”: “Product not found”}), 404
if name == ‘main’:
app.run(debug=True)
2. JavaScript 使用 Node.js 和 Express
首先,你需要安装 Node.js 和 npm。然后,你可以创建一个新的项目并安装 Express:
bash
mkdir shopping-cart-node
cd shopping-cart-node
npm init -y
npm install express
然后,创建一个名为 app.js 的文件:
javascript
const express = require(‘express’);
const app = express();
const port = 3000;
// 模拟的商品数据库
const products = [
{ id: 1, name: ‘Apple’, price: 1.00 },
{ id: 2, name: ‘Banana’, price: 0.50 },
];
app.get(‘/products’, (req, res) => {
res.json(products);
});
app.get(‘/products/:productId’, (req, res) => {
const productId = parseInt(req.params.productId);
const product = products.find(p => p.id === productId);
if (product) {
res.json(product);
} else {
res.status(404).json({ error: ‘Product not found’ });
}
});
app.listen(port, () => {
console.log(Shopping cart app listening at http://localhost:${port}
);
});
3. Java 使用 Spring Boot
对于 Java,你通常需要设置一个 Maven 或 Gradle 项目,并添加 Spring Boot 依赖。这里仅提供一个简化的类结构示例:
java
// 假设你已经创建了一个Spring Boot项目
@RestController
@RequestMapping(“/products”)
public class ProductController {
// 模拟的商品数据库
private static final List<Product> products = Arrays.asList(
new Product(1, "Apple", 1.00),
new Product(2, "Banana", 0.50)
);
@GetMapping
public List<Product> getAllProducts() {
return products;
}
@GetMapping("/{id}")
public ResponseEntity<Product> getProductById(@PathVariable Long id) {
return products.stream()
.filter(product -> product.getId().equals(id))
.findFirst()
.map(ResponseEntity::ok)
.orElseGet(() -> ResponseEntity.notFound().build());
}
// 假设有一个Product类
static class Product {
private Long id;
private String name;
private Double price;
// 构造函数、getter和setter省略
}
}
这些示例仅展示了如何设置基本的路由和模拟的数据库。在实际应用中,你需要处理更复杂的逻辑,如连接真实数据库、用户认证、会话管理等。