본문 바로가기
320x100

Projects38

[TypeORM] 쿼리빌더를 통해 데이터 가져오기 현재상황과 문제 먼저, 진행하고 있는 프로젝트에서 graphql 쿼리를 작성하기 위해 하나의 질문글에 달린 태그를 가져와야 한다. 먼저 필요한 테이블들의 관계는 다음과 같다. post_question과 tag가 N:M 관계를 가지고 있고, 연결 테이블로 question_tags 를 가지고 있다. graphql 질문글 검색 쿼리는 다음과 같은 상황이다. post_questions 요청을 통해 검색할 태그 ID 배열을 넘겨주고, 질문글의 제목과, 할당되어있는 태그들을 가져오는 쿼리를 작성한 모습이다. 요구사항은 간단한데 처음에 생각보다 구현에 급급하여 코드를 날림으로 작성해놓았다. 먼저 다른 조건들(whereObj)을 통해 해당하는 게시글들을 불러오고, tagID 가 검색 쿼리에 포함되어있다면 불러온 질문글.. 2021. 11. 7.
[JSP]동영상 관리 게시판 사용 기술 JSP, MariaDB, JDBC, JQuery, Ajax, Gson, Bootstrap 개발 환경 Eclipse, Tomcat 9.0 개발 기간 3일 버전 관리 Github -> 링크 특징 및 설명 평범한 동영상 관리 게시판이지만 조금의 반응형(?)을 곁들였습니다. 모든 페이지에서 가로 길이가 최소 400px 까지 줄어들어서 모바일 친화적입니다. 미디어 쿼리를 사용한 정도까지는 아니고, css의 calc 함수와 %를 주로 이용했습니다. 주요 기능 목록 조회(index.jsp) 목록 조회 페이지는 display의 flex 속성과 flex-wrap의 wrap 속성을 이용해서 열거형으로 동영상들을 나열했습니다. 각각의 동영상들은 div 로 감싸져 있는데, 이 div 전체에 링크를 걸기 위해서 di.. 2021. 6. 15.
Query방식에서 Sequelize ORM으로 전환 기존에는 db-query.js 파일 내에서 직접 SQL쿼리를 통해 정보를 가져오고 수정하였다. var db = require('./db-connect') var useCrypto = require('./crypto'); var getList = function(amount,type,page,callback){ // 전체 글 조회 if (type=='all'){ db.query('SELECT COUNT(*) AS COUNT FROM POST',function(err,count){ if (err) console.log('에러 발생 : ' + err); else{ count = count[0].COUNT; var maxPage = Math.ceil(count / amount); db.query('SELECT .. 2021. 5. 12.
Summernote 에디터 적용, imgbb 서버로 게시글 이미지 업로드 글 에디터는 기존에 그냥 텍스트만 쓸 수 있는 에디터였다. 이는 게시판이라면 너무나 부실한 것이고 전혀 실용적이지 않다. 그래서 에디터를 적용해야 하는데, 에디터를 javascript로 직접 만들기에는 너무 배보다 배꼽이 커질 것 같고 해서 공개되어있는 에디터를 적용하기로 했다. 그중에서도 심플하면서 유명한 Summernote를 적용하기로 했다. summernote.org/ Summernote - Super Simple WYSIWYG editor Super Simple WYSIWYG Editor on Bootstrap Summernote is a JavaScript library that helps you create WYSIWYG editors online. summernote.org 그 전에, 사전작.. 2021. 4. 29.