[thymeleaf] 3. spring boot + thymeleaf crud 구현하기
목차
[Create] Controller에 Thymeleaf Form 데이터 전송하기
[Read] table에서 th:each를 이용하여 반복문 사용하기
[Update] Get, Post를 모두 사용하여 학생 정보 업데이트하기
[Delete] 목록에서 Ajax를 이용하여 학생 정보 삭제하기
이번 글에서는 실습을 통해 앞에서 정리한 타임리프 사용법을 익혀보려고 한다.
Student 객체를 생성하고 Spring Controller와 Tymeleaf를 이용하여 학생 정보를 CRUD 하는 간단한 예제를 실습해 볼 예정이다.
Spring Boot와 Thymeleaf 사용법 익히기
- Create...
[thymeleaf] 2. thymeleaf 기본 문법 + 사용 예제
목차
Thymeleaf 기본 표현식 - *{}, ${}, …
Thymeleaf 속성 - 데이터 바인딩, 조건문
반복문 - th:each, th:object, …
기타 문법, 타임리프 주석 사용법
Thymeleaf에서 자주 사용하는 문법들에 대해 정리해보았다 :)
1. Thymeleaf 기본 표현식 - *{}, ${}, ...
변수 : ${...} - ${student.id}
선택자 : *{...} - *{id}
메시지 : #{...} - #{id}
링크URL : @{...} - @{https://www.naver.com}
부분적 표현 : ~{...} -
...
[thymeleaf] 1. thymeleaf란? spring boot 환경설정
목차
Thymeleaf란?
Spring Boot + Thymeleaf 환경 설정
디렉토리 구조 + Controller 연결 간단 예제
Spring Boot와 Thymeleaf 환경설정 및 사용법
회사에서 Spring Boot와 Thymeleaf를 사용하게 되었는데 사용법이 매우 어렵진 않지만 처음 접하는 입장에서 까다로운 점이 많았다.
프로젝트를 진행하며 새로 알게된 내용과 문제를 해결한 부분들을 간단하게 정리하고 공유해보려고 한다.
1. Thymeleaf란?
뷰 템플릿 엔진으로 컨트롤러가 전달하는 데이터를 이용하여 동적으로 화면을 구성할 수 있게 해준다...
[java] 추상클래스와 인터페이스(+ 함수형 인터페이스)
목차
추상클래스
인터페이스
함수형 인터페이스
추상클래스
추상 메서드가 하나라도 포함된 클래스.
abstract 키워드를 붙여서 정의한다.
상속 받은 자녀 클래스에서 반드시 추상 메서드를 오버라이딩해서 구현해야 한다.
자신의 생성자로 객체 생성이 불가능하다.
추상클래스를 사용하는 이유
공통된 필드나 메서드를 추출하여 다른 클래스들에서 동일된 내용으로 작성하도록 규격화한 것
추상메서드
내용을 갖지 않고 선언만 된 메서드
인터페이스
상수와 추상메서드만 가지는 일종의 추상 클래스...
[java] 클래스변수, 인스턴스 변수 차이(static변수와 non Static변수)
목차
클래스 변수, 인스턴스 변수
클래스 변수, 인스턴스 변수, 지역 변수가 메모리에 적재되는 위치
클래스 변수(Static)의 주의점, 클래스 변수가 필요한 이유
클래스 변수, 인스턴스 변수
클래스 변수(Static 멤버)
클래스 내에 Static 키워드로 선언된 변수
처음 JVM이 실행되어 클래스가 메모리에 올라갈 때 ~ 프로그램이 종료될 때까지 유지
클래스가 여러 번 생성되어도 Static 변수는 처음 딱 한 번만 생성됨
동일한 클래스의 모든 객체들에 의해서 공유됨
인스턴스 변수(Non-static 멤버)
클래스 내에 선언된 변수
객체 생성 ...
[java] string, stringbuilder, stringbuffer 차이
목차
String과 StringBuilder, StringBuffer의 차이
StringBuilder와 StringBuffer의 차이
특징 - 정리
속도 비교
자바에서 String과 StringBuilder, StringBuffer의 차이는 매우 중요하고 면접에서 자주 물어보는 단골 질문이다. 이번 포스팅에서는 셋의 차이와 각자의 특징에 대해 알아보려고 한다.
String vs StringBuilder, StringBuffer
String과 StringBuilder, StringBuffer의 가장 큰 차이는 값이 변경되는지, 변경되지 않는지의 여부이다. 각 객체를 수정하였을 때 실제...
[network] 브라우저에 www.naver.com을 입력했을 때 과정
기술 면접 단골 질문(특히 라인플러스) “브라우저에 URL을 입력했을 때 어떤 일이 일어나는가?”에 대한 과정을 살펴보겠습니다.
브라우저에 www.naver.com 을 입력한다.
브라우저의 URL 파싱
어떤 프로토콜, ULR, 포트로 보낼 지 해석
기본값 : HTTP(80), HTTPS(443)
DNS Resolver가 도메인 주소를 IP 주소로 변환하는 과정을 거친다.
3-1. Local DNS에 해당 URL주소의 IP 주소를 요청
3-2. 없을 경우 root DNS 서버에 해당 URL의 IP 주소를 요청
...
[network] syn flooding이란
공격을 막는 방법
TCP의 3-way handshake 구조적 약점을 이용하는 공격
소스 IP를 존재하지 않는 출발지 IP주소로 위조(Spoofing)한 후 서버의 특정 포트에 대량의 SYN packet을 발송하고 연결을 완료하지 않아서 백로그 큐를 꽉차게 함으로써 더 이상의 새로운 연결 요청을 받을 수 없도록 함
Backlog Queue = Incomplete Queue + Complete Queue
원래는 SYN+ACK 응답 후 Incomplete Connection Queue에 연결 요청정보를 저장하고 이후 클라...
33 post articles, 5 pages.