전체 글 127

springboot-blog

도움 : https://getinthere.tistory.com/17 [spring boot settings] Spring Boot 2.7.6 langauge : java Type : maven Packaging : jar Name : blog Group : com.jig Java version : 11 Dependency - Spring Boot DevTools // 파일 변경하면 자동 재시작 해준다. - Lombok - Spring Data JPA - MySQL Driver - Spring Security // 보안 관련 - Spring Web // WEB MVC를 사용하여 웹 애플리케이션을 만드는데 필요한 스프링 부투의 기본적인 요소 ( 애노테이션 ) // 내장형 컨테이너로 톰켓을 기본 탑재함 De..

Project & Issu 2022.12.15

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술 (2)

실습 [Spring Settings] Project : Gradle - Groovy Language : Java Spring Boot : 2.7.6 Group : hello Artifact : springmvc Name : springmvc Description : Demo project for Spring Boot Package Name : hello.springmvc Packaging : Jar Java : 11 Dependencies: Spring Web, Thymeleaf, Lombok GENERATE 수행 war vs jar war를 사용하는 경우 - jsp 사용할 때 - Tomcat 같은 WAS 서버를 별도로 설치두고 거기에 빌드된 파일을 넣을 때 (내장 Tomcat에도 사용 가능하긴 하지만 ..

JSP CharacterSet정리

: 클라이언트(부라우져)가 어떤 CharacterSet으로 받을지 -> 웹 브라우져에서 한글 깨짐 방지 : JSP페이지가 어떤 캐릭터셋으로 작성됐는지 : HTML 페이지가 어떤 케릭너셋으로 작성됐는지 # JSP파일은 서블릿으로 변환되어 읽으므로 HTML 케릭터셋보다 JSP케릭터셋을 더 우선시 함. HTML form 태그 post 메서드 방식은 받는 곳에서 request.setCharacterEncoding("UTF-8");해줘야 한글 안 깨짐 HTML form 태그 get 메서드 방식은 URL을 통해( UTF-8 세팅이 되어있는 톰캣을 거침) 캐릭터 셋 처리를 하기 때문에 톰캣이 세팅된 대로 처리된다. request.setCharacterEncoding("UTF-8"); 파라메터(인자)로 전송되는 데이터..

REST API

https://dongwooklee96.github.io/post/2021/03/28/rest-api-%EB%B3%B4%EC%95%88-%EB%B0%8F-%EC%9D%B8%EC%A6%9D-%EB%B0%A9%EC%8B%9D.html REST API 보안 및 인증 방식 | 개발자 이동욱 REST API 보안 보안에 관해서는 백번, 천번을 강조해도 과함이 없다. 근래의 대부분의 서비스 시스템들은 API를 기반으로 통신한다. 앱과 서버 간의 통신 또는 자바 스크립트 웹 클라이언트와 서버 dongwooklee96.github.io https://blog.npcode.com/2017/04/03/rest%EC%9D%98-representation%EC%9D%B4%EB%9E%80-%EB%AC%B4%EC%97%87%EC..

원격지의 최신 내용을 pull 하지 않아서 push 안 됨 (failed to push some refs to 'https://github.com/userId/userProject.git')

상황 1. github에 repositories 만듬 ( readme.txt 파일 생성 옵션 체크 ) 2. intellij에서 repositories 연결 3. 새 파일들 생성해서 commit and push 4. 오류 실제 로그 C:\Users\gitProject>git push origin master To https://github.com/userId/userProject.git ! [rejected] master -> master (non-fast-forward) error: failed to push some refs to 'https://github.com/userId/userProject.git' hint: Updates were rejected because the tip of your c..

Enumeration, Iterator

Enumeration Thread에 안전한 구조 / vector, Hashtable에 사용 / 다음 내용이 있는지 확인하는 hasNext(), 그 값을 가져오는 next(), 해당 컬렉션의 값을 삭제하는 remove() 메서드 제공 Iterator은 Thread에 안전하지 않은 구조 / ArrayList, HashSet 에 사용 / 다음 내용이 있는지 확인하는 hasMoreElement(), 그 값을 가져오는 nextElement() 메서드 제공, 해당 컬렉션의 값을 삭제하는 메서드는 없음 장점 Iterator는 모든 컬렉션 프레임워크에 공통으로 사용 가능 컬렉션 프레임워크에서 쉽게 값을 가져오고 제거할 수 있음 2,3개의 메소드만 알면 되어서 사용하기 매우 쉽다 단점은 처음부터 끝까지의 단방향 반복만 ..

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술 (1)

목록 웹서버 (Web Server) 웹 어플리케이션 서버 (WAS, Web Application Server) 웹서버, WAS 구성 방법 서블릿 서블릿 컨테이너 서블릿 컨테이너의 동시 요청을 위한 Multi Thread 처리 쓰레드 풀 백엔드 개발자로서 해야 할 것 ( 생각해보면 좋은 내용 ) : SSR 기술, 서버 요청 종류 자바 웹 기술 : Spring boot, Spring MVC, Thymeleaf가 요즘 많이 사용되기 때문에 주로 학습 서블릿 사용하기 http요청에따른 스프링 동작 흐름 HttpRequestServlet 역할 HTTP 요청 메세지를 통해 클라이언트에서 서버로 전달하는 방법 3가지 HttpServletResponse - 기본 사용법 MVC 패턴이란? 실습(서블릿 등록 방법, jsp..

윈도우에서 MySQL Workbench 연결 오류

윈도우에서 MySQL Workbench 연결 오류 1. 우클릭 Edit Connection 2. Manage Server Connections 창 열림 3. Test Connection 클릭 4. 연결 오류 Faild to Connect to MySQL at localhost:3306 with user root Unable to connect to localhost 해결 1. 윈도우 키에서 "컴퓨터 관리" 검색해서 들어간다 2. 왼쪽 목록에서 "서비스 및 응용 프로그램" 하위의 "서비스"를 클릭한다. 3. 오른쪽 서비스 목록에서 MySQL80을 찾아서 실행한다. 4. 다시 MySQL Workbench에서 Test Connection을 해본다.

HTTP 웹 기초

Protocol 컴퓨터와 컴퓨터가 인터넷을 통해서 통신할 때 필요한 통신 규약 TCP/IP 인터넷 환경에서 데이터를 전송하는 통신 규약 TCP와 IP의 특성을 합친 것으로 IP주소체계를 통해 TCP특성을 이용해 신뢰성 높은 데이터 송수신을 보장하는 규약입니다. IP (Internet Protocol) 다른 컴퓨터와 구별할 수 있도록 할당되는 IP주소를 통해 패킷 단위로 네트워크 간 전송하는 규약입니다. 신뢰성과 연결성(연결되어있다는 보장)이 없어 데이터 손실이 발생 할 수 있기 때문에 TCP와 함께 사용합니다. TCP ( Transmission Control Protocol ) IP가 그저 목적지를 제대로 찾아가는 것에 중점을 둔다면 TCP는 3 way handshake 방식을 사용하여 통신하고자 하는 ..

이미 push한 commit 메세지 수정

1. HEAD~1 는 최근 커밋 중 1개를 불러온다는 의미 $ git rebase HEAD~1 -i 2. commit 로그 창에서 수정하고 싶은 메세지 앞 의 pick을 reword로 수정하고 저장합니다. ( esc -> :wq ) 3. 메세지를 수정하고 저장합니다. ( esc -> :wq ) 4. 원격에 덮어쓰기 $ git push --force branch_url -> 메시지가 변경된 커밋 이력이 추가 되고 그 전 커밋 이력이 남아있는 문제가 있음. 내가 잘 못 한 건지 모르겠지만 다음에 다시 해보자