앞선 과정에서 계속 html에 사용된 이미지 파일을 업로드 하는데 애를 먹었었다.

기존의 코드는 http.createServer를 사용해 웹서버를 구축했다.
이 방법을 이용해 이미지를 출력하는 방법들을 구글링 해보았지만.. 아무것도 작동하지 않았다ㅜㅜ
결국 express를 이용해 서버를 다시 구축해 간단하게 이미지를 출력하는데 성공하였다.

이제 미리 생성해 놓았던 데이터 베이스에 연결을 해 저장된 list들을 불러올 차례다.
사실 spring으로 구현했을때부터 가장 머리 아픈 부분이였는데 이렇게 쉬울줄 몰랐다...
필요한 패키지들을 npm을 이용해 설치해주었다.
npm install cors body-parser mysql2
내 경우에는 계속 premission deny 이런 에러가 나서 sudo 붙여서 돌려주었다.
위 링크를 참고해서 다음과 같이 코드를 작성하였다.
const express = require('express'); //package 불러옴
const app = express(); // express 함수의 변환값 저장
const port = process.env.PORT || 3000; //process.env = 환경변수 호출, 환경변수가 입력되지 않을 시 port에 3000번으로 설정
const mysql = require('mysql2');
const cors = require('cors');
const bodyparser = require('body-parser');
const dbconfig = require('./config/database.js'); //db 정보 로드
const db_conn = mysql.createPool(dbconfig); //mysql과 express 연결 -> 이 변수를 통해 db접근 가능
const jsonParser = bodyparser.json(); //body-parser을 위한 변수 할당
//get 정의
app.get('/', (req, res) => {
res.sendFile(__dirname + "/static/home.html");
});
app.get('/todolists', (req, res) => {
db_conn.query('SELECT * FROM LIST', (err, rows) => {
if(err) throw err;
console.log(rows);
res.send(rows);
})
});
app.listen(port, () => {
console.log(`server is listening at localhost:${process.env.PORT}`);
});
app.use(express.static('static'));
module.exports = {
host: '127.0.0.1',
port: '3306', //안적어도 무방
user: 'root',
password: 'test1234',
database: 'Todo_db'
};
참고 링크에서는 port는 적지 않으셨지만 일단 혹시 몰라 적어 놨다.(없어도 돌아감)