비용을 들이지 않고 요즘 좋은 서비스들이 많아서 활용하여, 웹서비스를 개발해보려고 하였다.
웹서비스가 DB가 필요해서 json을 db로 활용하는 방법을 찾다가.. lowdb라는 것을 발견하였고 이를 활용하여
HEROKU와 node.js를 사용하여 기획한 웹 서비스를 개발해보려고 한다.
먼저 node.js를 설치한다.
본인의 OS에 맞는 node.js를 먼저 다운로드하여 설치한다.
약관동의 후 NEXT..NEXT..
lowdb 설치
lowdb를 설치하고 사용하기 전에 먼저 경로를 생성해주자.
ex> \workspace\project01\
콘솔창 (bash나 cmd)을 실행시켜서 해당 경로로 이동하여 npm install lowdb를 입력한다.
$npm install lowdb
정상적으로 설치가 되면 main.mjs 파일을 하나 생성하여 아래의 코드를 넣어주자.
import { join, dirname } from 'path'
import { Low, JSONFile } from 'lowdb'
import { fileURLToPath } from 'url'
const __dirname = dirname(fileURLToPath(import.meta.url));
// Use JSON file for storage
const file = join(__dirname, 'db.json')
const adapter = new JSONFile(file)
const db = new Low(adapter)
// Read data from JSON file, this will set db.data content
await db.read()
// // If file.json doesn't exist, db.data will be null
// // Set default data
// db.data ||= { posts: [] }
db.data = db.data || { posts: [] } // for node < v15.x
// // Create and query items using plain JS
// db.data.posts.push('hello world')
// db.data.posts[0]
// // You can also use this syntax if you prefer
const { posts } = db.data
posts.push('hello world')
// // Write db.data content to db.json
await db.write()
파일을 저장하고 콘솔창을 실행시켜서 node main.mjs 를 입력한다.
$ node main.mjs
경로에 db.json으로 다음과 같이 파일이 생성되면 정상적으로 완료가 된 것이다.
{
"posts": [
"hello world"
]
}
반응형
'DATABASE > lowdb' 카테고리의 다른 글
[lowdb] 기존 값 + 1(Increase by 1) update (0) | 2021.08.22 |
---|---|
[lowdb] 실행 에러?! SyntaxError: Cannot use import .. (0) | 2021.08.12 |