1. 3가지 종류 1. 정적 컨텐츠 서버에서 하는 것 없이 파일을 웹 브라우저로 그대로 내려준다. 2. MVC와 템플릿 엔진 jsp, php는 템플릿 엔진이다. 서버에서 프로그래밍해서 html을 동적으로 바꿔서 내리는 방식을 템플릿 엔진이라고 한다. 위 동작을 실행하기 위해 model, controller, view를 이용하는 것이 MVC 방식이다. 3. API json이라는 데이터 포맷으로 클라이언트한테 데이터를 전달한다. json은 java script object notation의 약자이다. 직역하면 자바스크립트 객체 표기법으로 데이터를 쉽게 교환하고 저장하기 위한 텍스트 기반의 데이터 교환 표준이다. 2. 동작 방식의 차이 1. 정적 컨텐츠 2. MVC와 템플릿 엔진 view : 화면을 그리는 일..
1. build 위치로 이동 https://start.spring.io/ 위 경로에서 프로젝트를 생성하고, sts나 인텔리제이를 통해 수정했다. 프로젝트 위치는 Download에 두었다. cd Download/hello-spring 2. 빌드한다. ./gradlew build 여기서 빌드란? 소스 코드 파일을 컴퓨터에서 실행할 수 있는 독립적인 형태로 변환하는 과정과 그 결과를 말한다. 예를 들어 자바 프로젝트를 진행한다면 개발자가 작성한 A.java와 여러가지 정적 파일 등에 해당하는 resource가 존재한다. 빌드를 한다면 1) 소스코드를 컴파일해서 .class로 변환하고 2) resource를 .class에서 참조할 수 있는 적절한 위치로 옮기고 3)META-INF와 MANIFEST.NF들을 하나..
1. 문제 상황 A problem occurred configuring root project 'backend'. > Could not resolve all files for configuration ':classpath'. > Could not resolve org.springframework.boot:spring-boot-gradle-plugin:3.0.10. Required by: project : > org.springframework.boot:org.springframework.boot.gradle.plugin:3.0.10 > No matching variant of org.springframework.boot:spring-boot-gradle-plugin:3.0.10 was found. The..
https://opendata.hira.or.kr/op/opc/selectColumnCodeList.do?tblId=TBOMA270&pageIndex=1 보건의료빅데이터개방시스템 opendata.hira.or.kr 고객에게 어디사는지 정보를 받으면 그 위치의 병원만 보여주고 싶다. 그럴려면 위치 정보를 고유 code로 바꿔야하는데, redux toolkit에 무작정 하드코딩하려다가 너무 많아서 "그래! 크롤링 나도 해보는거야!"에서 시작해서 도전하게 되었다. 결과는 꼬박 하루가 걸렸지만, 성공했다...^^ 나처럼 node와 React로 정보를 어떻게 주고받을지 고민하는 분들을 위하여 작성 go! step1. 내가 원하는 정보 크롤링 해보자 크롤링을 해보기 위해 참고한 영상은 이것이다. https://ww..
오랜만에 워크밴치를 켜서 하려고 보니 오류가 생겼다;; 저 화면에서 안넘어가는 것이다 ㅠ 수차례의 뻘짓 끝에 다시 깔아보기로 마음을 먹었다. 1. 워크밴치 삭제하기 그냥 삭제하기 눌러서 휴지통 보내고 휴지통에서 지우면 된다. 2. 나는 brew를 통해 깔았기에 아래처럼 mysql을 지워주고, 다시 깔아준다. https://github.com/rangyu/TIL/blob/master/mysql/MySQL-%EC%99%84%EC%A0%84-%EC%82%AD%EC%A0%9C%ED%95%98%EA%B3%A0-%EC%9E%AC%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0-(MacOS).md GitHub - rangyu/TIL: 오늘 내가 배운 것 (Today I Learned) 오늘 내가 배운..
1. 날짜데이터에서 년/월/일 추출하는 방법 SELECT MEMBER_ID, MEMBER_NAME, GENDER, DATE_OF_BIRTH FROM MEMBER_PROFILE WHERE MONTH(DATE_OF_BIRTH)=3 AND GENDER LIKE 'W' AND ; 위는 특정 날짜데이터 DATE_OF_BIRTH에서 MONTH를 추출해내는 하나의 과정이다. MONTH(특정 날짜 데이터)로 하면 특정 날짜 데이터의 달만 추출된다. YEAR(특정 날짜 데이터) : 년도만 뽑아내기 MONTH(특정 날짜 데이터) : 달만 뽑아내기 DATE(특정 날짜 데이터) : 일자만 뽑아내기 2. 날짜 데이터 포맷 SELECT MEMBER_ID, MEMBER_NAME, GENDER, DATE_FORMAT(DATE_OF_..
1. 서버를 구축할 폴더를 만든 후 vscode로 켠다. 2. npm init을 한다. (ctrl + j) npm init 기본 사항으로 서버를 구축하고자 계속 엔터를 누르면 좌측과 같이 package.json이 생성된다. 3. index.js를 만들어 간단한 서버 구축을 진행한다. var http = require('http'); //import 방식 var hostname = '127.0.0.1';//본인 컴퓨터를 가리킨다. var port = 8080; const server = http.createServer(function(req, res){ console.log('REQUEST : ', req);//요청이 왔다. res.end('Hello Client'); });//server와 관련된 값을 ..
AOP를 이용해보려고 @Aspect 어노테이션 방식을 사용해보려 했는데, 이렇게 빨간줄만 뜨고, 무엇을 import하면 좋을지 안내해주지도 않는다. org.aspectj aspectjweaver 1.9.8 runtime org.aspectj aspectjrt 1.9.8 runtime 심지어 pom.xml에 depencies로 AOP 사용을 위한 aspectj도 모두 추가되어 있는 상태이다. 이럴 땐 runtime을 지워보자. org.aspectj aspectjweaver 1.9.8 org.aspectj aspectjrt 1.9.8 지우고 나서 다시 마우스 커서를 위로 둬보면 import 패키지를 제시해준다. 그 이유는? [Spring] AOP의 ProceedingJoinPoint가 import가 안되는 ..