データベース復習(2)
0915
世界で最も多く使用されているオープンソース関係型データベース管理システム マルチスレッド、マルチユーザフォーマットの構造 3306ポート MySQL Workbench:フロントエンドツール. が使いやすい
express --view=ejs db_test npm install ノードがnodemon に変更されました. sql 2取付
既存のモジュール化ではルータ部分のみが保持され、
コントロールというフォルダを作成して切断
MVCモードに類似
MVCは、モデル、ビュー、およびコントローラの略である.
プロジェクトを組織するときにコンポーネントを3つのモードに分割するアプリケーション.
ユーザーが表示するページ、データ処理、およびこれらの関係を制御します.
この3つのコンポーネントからなるアプリケーションを作成します.
それぞれの役割に集中するしかない.
私たちは互いに分離し、それぞれの役割に専念し、開発することができます.
これで、あなたは
増加,繰返し符号化などの問題を解決した.
クエリー/追加/削除のためのコードを作成します.
その後,Postmanによる通信実践により,sqlにおけるデータの追加と削除が見られる.
configフォルダにawsConfigを作成します.jsonファイルをインポート!(私のIAM)
既存のawsUploadファイルをmodulesフォルダにインポート
npm install multer multer-3 aws-sdk
アップロードしたファイルをMySQLに保存(imgのURL形式で)
1.MySQLプロパティ
2.MySQLによるサーバ通信実験
1)新しいExpress環境の構築
2)MySQLで新しいアーキテクチャを作成し、テーブルを作成する
3)express環境でconfigとmodulesファイルを作成しsqlに関連付ける
4)ルータの作成
既存のモジュール化ではルータ部分のみが保持され、
コントロールというフォルダを作成して切断
MVCモードに類似
MVCは、モデル、ビュー、およびコントローラの略である.
プロジェクトを組織するときにコンポーネントを3つのモードに分割するアプリケーション.
ユーザーが表示するページ、データ処理、およびこれらの関係を制御します.
この3つのコンポーネントからなるアプリケーションを作成します.
それぞれの役割に集中するしかない.
私たちは互いに分離し、それぞれの役割に専念し、開発することができます.
これで、あなたは
増加,繰返し符号化などの問題を解決した.
const express = require("express");
const router = express.Router();
const membershipController = require("../../controllers/membership/membershipController");
const upload = require("../../modules/awsUpload");
router.get("/:gender", membershipController.detailMembership);
router.post("/images", upload.single("img"), membershipController.uploadImage);
router.post("/", membershipController.uploadMembership);
module.exports = router;
ルータのコードはずっと簡単になりました.5)コントローラ上でsqlとサーバ通信を行う
const { none } = require("../../modules/awsUpload");
const con = require("../../modules/mysql");
// const upload = require("../../modules/awsUpload");
const membershipController = {
detailMembership: (req, res) => {
const { gender } = req.params;
const sql = "select * from membership where gender=?";
const params = [Number(gender)];
if (Number(gender) === 0 || Number(gender) === 1) {
con.query(sql, params, (err, result) => {
if (err)
return res.status(400).json({
message: "조회 실패",
});
res.status(200).json({
message: "조회 성공",
data: result,
});
});
} else {
res.status(401).json({
// 오류번호는 중첩되면 안됨!
message: "옳지 않은 gender 값 입니다.",
});
}
},
module.exports = membershipController;
メンバーシップコントローラという名前の関数に複数の接続を作成します.クエリー/追加/削除のためのコードを作成します.
その後,Postmanによる通信実践により,sqlにおけるデータの追加と削除が見られる.
3.S 3 MySQL、サーバとの通信
1)アップロードイメージの準備
configフォルダにawsConfigを作成します.jsonファイルをインポート!(私のIAM)
既存のawsUploadファイルをmodulesフォルダにインポート
npm install multer multer-3 aws-sdk
2)multerを用いて画像をS 3にアップロードし、imgのurlを応答値とする
const membershipController = {
uploadImage: (req, res, err) => {
const img = req.file; // req.body가 아니라 req.file로 받아옴
console.log(img);
// postman에서 header값 dataform으로
if (img) {
res.status(200).json({
message: "이미지 업로드 완료",
imgUrl: img.location, // location으로 img의 url 가져오기!
});
} else {
res.status(400).json({
message: "이미지 업로드 실패",
});
}
},
uploadMembership: (req, res) => {
const { gender, title, img } = req.body;
const sql = "insert into membership (gender, title, img) values (?, ?, ?)";
const params = [gender, title, img];
// postman에서 header값 application/json으로
con.query(sql, params, (err, result) => {
if (err)
return res.status(500).json({
message: "에러가 발생했습니다.",
}); // return 으로 err가 걸리면 바로 if문 탈출하므로 else 노필요
res.status(200).json({
message: "생성이 완료되었습니다.",
});
});
},
};
上のコードで画像ファイルをS 3にアップロードするアップロードしたファイルをMySQLに保存(imgのURL形式で)
Reference
この問題について(データベース復習(2)), 我々は、より多くの情報をここで見つけました https://velog.io/@wsds7euk/Database-복습-2テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol