분류 전체보기73 [Spring MVC] 기초 요약 정리 1. @PathVariable (경로 변수) 사용 HTTP API는 리소스 경로에 식별자를 넣는 스타일 선호 /mapping/userA /users/1 @RequestMapping은 URL 경로를 템플릿화 할 수 있다. @PathVariable을 사용하면 매칭 되는 부분을 편리하게 조회할 수 있다. @PathVariable의 이름과 파라미터 이름이 같으면 생략할 수 있다. /** * PathVariable 사용 * 변수명이 같으면 생략 가능 * @PathVariable("userId") String userId -> @PathVariable userId */ @GetMapping("/mapping/{userId}") public String mappingPath(@PathVariable("userId").. 스터디 모음/Spring 스터디 2022. 9. 10. [네트워크] 네트워크 계층 - 데이터 평면 이번 포스팅에서 배울 내용 데이터 평면 네트워크 계층에서의 데이터 평면이 어떠한 기능을 하는지 다룬다. 퍼 라우터라는 네트워크 계층의 기능은 한 라우터의 입력 링크에 도착한 데이터그램이 그 라우터의 출력 링크에 어떻게 도착하는지 결정한다. 전통적인 IP 포워딩 일반화된 포워딩 IPv4, IPv6 프로토콜들과 어드레싱 네트워크 전체 흐름 1. 네트워크 계층의 일 네트워크 계층은 링크를 타고 호스트 H1과 호스트 H2가 통신 할 수 있게 해줍니다. 이 때 네트워크 계층에서 나온 네트워크 패킷을 데이터그램이라 합니다. 전송계층에서 나온 세그먼트에서 IP 헤더가 붙은 상태입니다. IP 헤더를 가지고 있음으로서 상대 호스트 H2의 목적지가 어디인지 판단할 수 있습니다. 2. IP 주소를 어떻게 이용할까 ? 하지만.. CS/네트워크 2022. 9. 7. [Spring JPA Basic] 스프링 JPA 기초 간단 요약 1. 권장하는 식별자 전략 SEQUENCE, IDENTITY, 랜덤(복합)키를 사용하는게 좋습니다. 권장 : Long형 + 대체키 + 키 생성 전략 사용 1-1. IDENTITY 생성 전략 특징 MySQL, PostgreSQL, SQL Server, DB2 에서 사용 생성하면 영속성 컨텍스트의 PK값으로 쓰게 된다. IDENTITY 전략은 em.persist() 시점에 즉시 INSERT SQL 실행하고 DB에서 식별자를 조회합니다. 1-2. SEQUENCE 생성 전략 특징 DB에서 값을 얻어와서 Member에 값을 넣어준 후에 commit한다. 1-3. allocationSize (성능 최적화) 미리 메모리에 올려놓는다. 시퀀스 한 번 호출에 증가하는 수 2. 연관관계의 주인 객체의 양방향 관계는 참조가.. 스터디 모음/Spring 스터디 2022. 9. 7. ㅡ 보호되어 있는 글 입니다. 2022. 8. 31. 2022년 08월 15일 ~ 21일 [주간 회고] 보호되어 있는 글 입니다. 2022. 8. 25. [백준 with Java] 11559번 : Puyo Puyo - 시뮬레이션 11559번: Puyo Puyo 총 12개의 줄에 필드의 정보가 주어지며, 각 줄에는 6개의 문자가 있다. 이때 .은 빈공간이고 .이 아닌것은 각각의 색깔의 뿌요를 나타낸다. R은 빨강, G는 초록, B는 파랑, P는 보라, Y는 노랑이다. www.acmicpc.net 문제 문제 접근 주어진 각 색깔 뿌요들의 상하좌우를 봤을 때 연결되어 있는게 각 4개 이상이면 동시에 터진다. 이후 뿌요 아래 빈칸 없이 다 내려온다. 이것을 반복하면 되는 문제로 문제 해석은 어렵지 않았습니다. 다만 조건과 빈 칸 없이 내려오기 위해서는 없어진 뿌요들을 기록해놔야 함이 번거로운 작업일 거 같았습니다. 시간 복잡도 가로 6 세로 12 사이즈의 2차원 배열을 완전탐색해야 원하는 정답을 구할 수 있습니다. 72칸에 최대 뿌요가.. PS/백준 2022. 8. 11. [Web] 서블릿 필터 - 서블릿 실행 전, 후에 특별한 작업 수행하기 (javax.servlet.Filter) 개요 필터라고 많이 들어보시지 않았나요 ? 서블릿 필터는 서블릿 실행 전후에 어떤 특별한 작업을 하고자 할 때 사용합니다. 예를 들어보겠습니다. 저희가 서블릿을 직접 구현 했을 때 한글 인코딩을 위해서 setCharacterEncoding(”UTF-8”) 을 계속해서 집어넣어 줬습니다. 이 작업을 getParameter()로 데이터를 꺼내기 전에 실행시켜 줬습니다. “데이터를 꺼내기 전" 이라는 시점에 “인코딩"이라는 특별한 작업을 해야하는 상황입니다. 저희는 이를 대신해줄 필터를 만들어서 설정하겠습니다. 요약하자면 Filter 인터페이스를 구현하고 DD파일이나 애노테이션으로 설정해두면 됩니다. Filter 인터페이스 구현체 만들기 먼저 javax.servlet.Filter 인터페이스를 구현합니다. 필터.. 스터디 모음/Web 스터디 2022. 8. 11. [Web] 서블릿 초기화 매개변수와 컨텍스트 초기화 매개변수 개요 서블릿 초기화 매개변수와 컨텍스트 초기화 매개변수가 뭔지 아시나요 ? 서블릿 초기화 매개변수는 서블릿을 생성하고 초기화할 때 [Init()를 초기화할 때] 서블릿 컨테이너가 전달하는 데이터입니다. 예를 들어보겠습니다. 데이터베이스 A, 데이터베이스 B가 있습니다. 10개가 있을 때 서블릿 모두 데이터베이스 A에서 데이터를 꺼내와야 합니다. 다른 웹에서는 데이터베이스 A와 B를 각 2개의 서블릿이 꺼내려고 합니다. 이 때 서블릿 초기화 매개변수는 특정 서블릿에서 사용할 정보로 사용하고 컨텍스트 초기화 매개변수는 여러 서블릿에서 공통으로 사용할 정보일 때 사용합니다. 그렇다면 데이터베이스 A만을 사용하는 웹에는 컨텍스트 초기화 매개변수를 이용하고 데이터베이스 A, B를 각각 2개의 서블릿에서 사용하는 .. 스터디 모음/Web 스터디 2022. 8. 11. [백준 with JAVA] 1149번 : RGB 거리 - DP 1149번: RGB거리 1149번: RGB거리 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net 문제 문제 접근 문제 조건을 보면 결국 i번째 집이 있다고 했을 때 color[i - 1] ≠ color[i] && color[i] ≠ color[i + 1] 이 성립하면 되는 문제입니다. 조건만 봐도 바로 점화식이 나와버리는 문제였습니다. 한 가지 더 생각을 하자면 마지막 선택한 집이 Red 일 경우 Green 일 경우 Blue 일 경우 로 3가지 구분 지어서 점화식을 만든 후에 마지막에 비교해주시면 되겠습니다. 나.. PS/동적계획법 2022. 8. 9. [백준 with JAVA] 2579번 : 계단오르기 - DP 2579번: 계단 오르기 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점 www.acmicpc.net 문제 보기 DP 문제이기에 이 문제를 어떻게 세부 문제로 나눠서 점화식을 세울까 고민했습니다. 개인적으로 점화식을 세워서 문제를 맞추는데 성공했지만 다른 분들과 코드를 비교했을 때 내용이 달라 제 코드와 다른 분들의 코드를 비교해서 포스팅 하겠습니다. 1. 내 문제 접근법 문제를 보면 다음과 같은 조건들이 있습니다. 연속해서 세 칸을 올라가지 못한다. 저는 이 조건을 보고 계단에서 일정한 규칙으로 움직여야 함을 알 수 있었습니다. 한 칸 올라감을 1.. PS/동적계획법 2022. 8. 9. 2022년 08월 01일 ~ 07일 [주간 회고] 보호되어 있는 글 입니다. 2022. 8. 8. Servlet과 JDBC 개요 전에 배운 서블릿 (Servlet)을 이용해서 클라이언트가 요청한 데이터를 다뤄보려고 합니다. 아주 기초적인 부분이고 너무 쉬운 구간입니다. 하지만 이러한 기반이 잘 잡혀 계속 생각을 하고 있어야 나중에 성장하는데 무리가 없음에 분명합니다. Servlet에 JDBC를 이용한 JSP 프로그래밍 프로젝트를 여러번 해왔지만 프로젝트를 완성 시키는게 목표가 아닌 기초적인 “웹"을 공부하는데에 목표를 두겠습니다. 서블릿이 하던 일 서블릿이 무슨 일을 했었을까요? HTTP 프로토콜을 준수하며 클라이언트-서버가 통신하기 위한 일정한 규칙을 구현하는데에 편리함을 주는 역할이었습니다. 간단하게 말하면 클라이언트가 요청한 데이터를 다루는 일을 해줍니다. 저희는 이러한 서블릿을 가지고 데이터베이스에 접근할 수 있도록 .. 스터디 모음/Web 스터디 2022. 8. 8. 이전 1 2 3 4 ··· 7 다음 반응형