Archive: 2021

11.[블로그 프로젝트] 로그인, 회원가입 화면 만들기

템플릿 구성하기우리 블로그에서 모든 페이지에서 푸터가 동일하게 적용될 수 있도록 템플릿을 구성해보자.스크립트 태그를 바디가 끝나는 태그 바로 위에 두자.(다른방식도 있으니 유의하자.)views 폴더 안에 layout 폴더를 만들고, footer.jsp, header.jsp를 만들자. 그리고 index.jsp에서 헤더에 해당하는 부분을 header.jsp로

5. 스프링 기본파싱전략과 JSON통신

Get요청Get은 body에 데이터를 못 담는다.주소에 데이터를 담아 보낸다.데이터 형태는 key : value 형태이다. Post, Put, Delete 요청데이터를 담아보내야 할 것이 많다!body에 담아서 보낸다. form 태그 방식으로 post를 요청할 수 있지만,form은 get, post만 가능하므로자바스크립트로 요청하는게 일반적이다. 결국 자바

10.[블로그 프로젝트] 부트스트랩으로 메인화면 만들기

웹 UI를 구현할 때, 굳이 html, css를 모두 구현할 필요가 없다.Bootstrap이나 Materialize를 통해서 쉽게 구현할 수 있다. 우리는 w3school에서 bootstrap4의 collapsing the navigation bar의 코드를 복사한다. 이렇게 프로젝트 구조를 만들어서 index.jsp에 우리가 아까 복사한 내용을 덮어쓰운

27. 최소공배수, 최대공약수 (GCD, 유클리드 호제법)

최대공약수, 최소공배수를 다룬 문제가 나오면 GCD나 유클리드 호제법을 반드시 알고 있어야한다!알아보자! GCD 최대공약수를 구하는 알고리즘두 수 중 작은 수가 0이 될 때까지 반복하면 된다.큰수는 작은수가 되고, 작은수는 큰수를 작은수로 나눈 나머지가 된다. 123456789//a>bint GCD(int a, int b){ whil

26. 백준 10799번 쇠막대기

접근 아이디어 스택을 사용해서 “(“이 나올 때마다 push!“)”이 나올때마다 pop하고 나서 스택에 남은 요소 만큼 쇠막대기가 더해지거나 하나만 더해진다.이전에 “(“ 였으면 스택 요소 갯수만큼, 이전에 “)”였으면 그냥 1만 더해진다. 필요한 개념 삼항 연산자에 대해 알아보자.조건문 ? true일 경우 : false일 경우 1int add =

25. 백준 17413번 단어 뒤집기2

접근 아이디어 < >안에 있는 단어를 그렇지 않은 단어와 다르게 처리해야 한다.그러나 언제 < >가 나올지 모르는게 문제다!그래서 “>”를 기준으로 문장을 나누면 < > 문자열의 위치에 규칙이 생긴다.만약 < >가 있으면 항상 뒤 쪽에 있다는 것! 필요한 문법 이번엔 라벨을 사용해서 루프를 빠져 나왔다

4. 영속성 컨텍스트와 더티체킹

영속성 컨텍스트?영속성 컨텍스트는 JPA안에 존재하는 개념인데,우리가 만든 컨트롤러에서 save메소드를 호출하게 되면, 영속성 컨텍스트에 1차 캐시라는 것이 생성되고,1차 캐시에 우리가 save메소드의 인자로 보낸 객체가 쌓인다.이 과정을 영속화 되었다고 한다. 이렇게 영속화된 객체를 실제 DB에 저장하는 행위를 flush라고 한다.근데 flush이후에 1

9. 어노테이션

어노테이션어노테이션은 자바 소스코드에 추가적인 정보를 제공하는 메타데이터이다.어노테이션 선언 방법을 알아보자 1. 마커 어노테이션표시만 해두는 어노테이션. 메서드 없이 선언하면 마커 어노테이션이 된다.@Override, @Deprecated 가 대표적 예시. 1public @interface Marker{} 이렇게 선언을 해놓으면, 12@

7. [블로그 프로젝트] 회원가입을 위한 insert 구현하기

JpaRepository이제 DB에 insert하기 위해 프로그램을 작성해볼 것이다!먼저 com.cos.blog 패키지 하위에 repository라는 폴더를 만들자.그리고 그 안에 UserRepository 인터페이스를 만들자.이 인터페이스는 DB 저장소에 update할 메소드를 제공한다. 12345678910package com.cos.blog.repos

6. JVM 구조와 가비지 컬렉터

JVM 구조아시다시피, 자바는 운영체제의 종류와 무관하게 실행가능하다.자바 코드를 컴파일해서 얻은 바이트 코드를 해당 운영체제가 읽을 수 있는 기계어로 바꿔준다.JVM은 크게 4가지로 나뉜다. 1. Class Loader자바로 코드를 작성하면 java파일이 생성된다..java파일을 컴파일하면 .class파일(바이트 코드)이 생성된다.이렇게 생성된 .clas