개발 87

1. Node JS 의 간단 개념

React는 페이스북에서 개발한 Node JS 기반의 프론트엔드 자바스크립트 라이브러리입니다. 그렇다면 Node JS 란 무엇이냐 자바스크립트는 웹(Chrome이나 Explorer 같은)기반에서만 사용 가능했지만 Node JS 자체가 런타임이 되어 자바스크립트를 사용 가능하게 합니다. 그래서 NodeJS가 자바스크립트 런타임이라는 말이 나오게 된 겁니다. 그렇다면 Node JS를 사용하는 이유는 무엇이냐 그동안의 개발 체계는 이런 식으로 백엔드와 프론트엔드의 구분이 명확하게 나누어져 있었습니다. 그러나 NodeJS를 사용하게 되면 이런 식으로 자바스크립트를 이용하여 백엔드와 프론트엔드 모두 개발을 할 수 있게 됩니다. Node JS의의 장점으로는 우선 자바스크립트 만으로 풀 스택 개발을 할 수 있다는 점..

개발/react 2020.01.18

STS (Spring Tool suite 4) 와 egovframework 사용하기

사실 Spring MVC 패턴을 기반으로 한 프로젝트를 만드는 방법은 간단합니다. 바로 STS(spring Tool Suite) 라는 개발툴을 다운 받으면 되는데요 https://spring.io/tools 사이트에 접속 하신 뒤 자신의 환경에 맞는 Spring Tools 4 for Eclipse 를 받아주신 후 SpringToolSuite4.exe 를 실행시킵니다. 그러면 이런 로딩창과 함께 이런 이클립스와 똑같이 생긴 개발 툴이 다운받아 지는데요 몇가지 설정을 더 해주어야 합니다. 메뉴의 Help 의 Eclipse Marketplace... 로 들어가셔서 sts 라고 치시면 나오는 Spring Tools 3 Add-On for Spring Tools 4 라고 되어있는 확장 프로그램을 설치해줍니다. 이..

스프링과 메이븐의 비유적 개념

자바 개발자 특히 웹개발자로 일을 하기 위해선 반드시 알아야 할 개념이 있습니다. Spring 과 Maven 입니다. Spring 의 개념을 인터넷에서 찾아보면 빠지지 않고 등장하는 말이 있습니다 “ 스프링이란 어떤 것이다라고 한마디로 정의하기는 쉽지 않다. 스프링에 대해 가장 잘 알려진 정의는 이렇다. 자바 엔터프라이즈 개발을 편하게 해주는 오픈소스 경량급 애플리케이션 프레임워크 “ 저도 저 말을 듣고 이해할 뿐이지 모르는 사람에서 설명을 하라고 한다면 도저히 이해시킬 자신이 없습니다. 단 ‘프레임워크’ 라는 단어는 기억하셨으면 좋겠습니다. 그냥 제 식대로 예를 들어가며 설명을 해 보겠습니다. 만약 당신이 아무것도 없는 상태에서 목재 가구를 만든다고 생각해 봅시다. 우선 설계를 해야겠죠 가로 몇미터 세..

Postgresql Select export 명령어

1. 전체 테이블 추출시 COPY 테이블이름 TO '추출경로/추출파일이름.csv' WITH DELIMETER '구분자' CSV HEADER ENCODING 'UTF8'; 예시 ) Copy table_name To 'D:/test/test.csv' WITH DELIMITER ',' CSV HEADER ENCODING 'UTF8'; 2. 특정 컬럼 추출시 Copy table_name(column1, column2, ...) To 'D:/test/test.csv' WITH DELIMITER ',' CSV HEADER ENCODING 'UTF8'; 3. SELECT 문으로 추출시 Copy (SELECT * FROM table_name where column1='aa' order by column2) To 'D:..

개발/SQL 2019.09.24

java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener 에러 해결법

http://myblog.opendocs.co.kr/archives/1657 [문제해결] 심각: Error configuring application listener of class org.springframework.web.context.ContextLoaderListener | Opendocs 1. 문제상황 > 다음과 같은 에러와 함께 Eclipse에서 Tomcat이 실행되지 않았다. 심각: Error configuring application listener of class org.springframework.web.context.ContextLoaderListener java.lang.ClassNotFoundException: org.springframework.web.context.Context..

egovframework 다중DB 설정 시 dao 에서 mapper의 id 값을 가져오지 못할 때

오타가 나거나 설정이 틀리지 않았는데도 dao 에서 mapper 을 인식하지 못한다면 https://lilymate.tistory.com/480 DataSource 2개 사용하기 일반적으로는 1개의 DB만 연결하지만 2개의 DB에서 조회라도 하는 경우가 생겼을 때 요것들만 손대주면 가뿐할 듯 하다. 전자정부프레임워크, iBatis를 사용한 경우이다. Spring, MyBatis도 그리 다르지 않으니..... lilymate.tistory.com 이 포스팅의 중간부분에 보면 dao 에 이런 명시를 해주어야 한다. Resource 부분에는 ibatis 의 경우 위와같은 내용이 들어가는 부분의 bean 의 id 값이 와야하고 mybitis 의 경우 위와 같은 설정이 들어가는 sqlSession 부분의 bean..

Jstl 변수 자바스크립트로 받아와서 사용하기

Controller에서 보낸 변수를 Jstl로 자바스크립트에서 가져오는 방법은 크게 두가지가 있습니다. var searchItem='' var searchItem2=${searchItem} 입니다. 두 변수를 각각 콘솔로 찍어보면 콘솔창에는 이렇게 표시가 됩니다. 소스탭에서 보면 이렇게 나오네요 즉 1의 방법은 value 값을 문자열로 받아오겠다는 의미이고 2의 방법은 Html Object 그 자체로 받아오겠다는 의미가 됩니다. 따라서 만약 자바스크립트에서 저 value 의 값을 사용하려면 1은 변수에 value 값이 담기기 때문에 그대로 사용하시면 되지만 2는 Object 이기 때문에 searchItem.value 의 방법으로 사용하셔야 합니다. 콘솔로 찍어보면 이렇게 나오는걸 확인할 수 있습니다.

Mybatis Sqlmapper $ 와 #의 차이

메이븐 프로젝트 코딩을 하던 중 여러개의 변수를 Map 에 담아 Mybatis Sqlmapper 를 이용하여 쿼리를 날려야 하는 작업이 있었습니다. 맵에 담긴 여러 변수 중 일부는 테이블 이름 혹은 컬럼 이름으로 매핑되고 일부는 WHERE 조건절 등의 변수로 사용해야하는데 일반적으로 사용하는 #{변수명} 으로 파라미터를 받아왔더니 Bad SQL 에러가 뜨는 것이었습니다. 한참을 헤메고 고민하다가 결국 선임개발자에게 질문을 했는데 너무나 명쾌하게 고민을 해결해주셔서 혹시나 같은 고민을 하시는 분들이 계실까봐 이렇게 포스팅을 하게 되었습니다. Dao 에서 전달한 파라미터를 sqlmapper에서 받아오는 방법은 크게 ${변수명} 와 #{변수명} 으로 나뉩니다. $ 은 한마디로 말하면 상수값 즉 쿼리를 날릴 때..