전체 글 98

[스프링부트] 서블릿 Servlet

에러 같은데 간간히 보이는 서블릿?이란게 있어서 뭔지 모르겠어서 작성한다. 간단히 말해 서블릿은 그냥 우리는 데이터베이스에 저장을 하고 싶을 뿐인데 .. 서버는 클라이언트가 요청을 하는 순간 HTTP 메세지를 보고 다 풀어헤쳐야 함. 파싱을 해서 Post 인지,,,뭔지,,, Header 생성하고 ... 응답메세지도 만들어줘야하고 어쩌고 저쩌고를 매번 해야한다고? 그건 너무 비효율 적이니깐 WAS인 서블릿이 그걸 자동으로 해줌! 한마디로 개발자가 HTTP 스펙을 편리하게 사용할 수 있게끔 해준다. 우리는 이제 그냥 Response 객체 안에 원하는걸 넣어주면 된다. HTTP요청 시 request response 객체를 새로 만들어서 서블릿 객체 호출한다. 개발자는 Request객체에서 HTTP 요청 정보를..

스프링부트 2022.07.22

[스프링부트] 개발하다가 알게된 Entity

Entity - DB의 테이블에 존재하는 Column들을 필드로 가지는 객체를 말한다. - Entity는 DB의 테이블과 1:1 대응 - JPA를 사용할 때 Setter를 만드는 것을 피해라. Setter를 무분별하게 사용하게 되면, Entity의 인스턴스 값들이 언제 어디서 변하는지 명확하게 알기 힘듬. 따라서 Setter대신 다른 방법으로 필드에 값을 넣어 주는 것이 좋다. 👀Builder패턴을 사용 하는 것이 좋다.👀 멤버 변수가 많아지더라도 어떤 값을 어떤 필드에 넣는지 코드를 통해 확인할 수 있고 필요한 값만 집어 넣는 것이 가능해짐. Entity에서 사용하는 어노테이션 @EntityListners(AutditingEntityListenr.class) : 공통적으로 가지고 있는 필드나 컬럼들을 ..

스프링부트 2022.07.16

[스프링부트] 컴포넌트 스캔

인프런 - 김영한 님의 스프링 기본 편을 보고 강의 노트를 정리한 글입니다. 컴포넌트 스캔 지금까지 스프링 빈을 등록할 때 @Bean 이런 식으로 등록을 하게 된다. → 불편, 반복됨 스프링 제공 설정 정보가 없어도 자동으로 스프링 빈을 등록하는 컴포넌트 스캔을 제공 의존관계 자동 주입이라는 AutoWired 기능도 제공한다. package practice2.core; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.FilterType; @Configura..

스프링부트 2022.07.06

Fork 된 Repository 복구하기

프로젝트를 진행하다가 기존에 사용하던 repository를 지운 사건이 생겼다. 사실 없어도 되는데 중간 보고서를 제출하려면 꼭 필요했다. 근데 다른 레포는 다 복구가 되는데 fork된 repository는 restore가 불가능하다. 그런데 한가지 방법이 있다. 바로 깃헙에 메일 쓰기!!! Restoring a deleted repository - GitHub Docs Restoring a deleted repository - GitHub Docs About repository restoration A deleted repository can be restored within 90 days, unless the repository was part of a fork network that is not c..

카테고리 없음 2022.07.05

[한이음] MSA 프로젝트 - (1)MSA가 무엇인가

이 프로젝트는 다음 블로그와 사이트를 참고 하여 작성하였습니다 https://wooaoe.tistory.com/57 ,이모티콘 서비스는 왜 MSA를 선택했나? – tech.kakao.com 한이음 프로젝트에서 MSA기반 프로젝트를 진행하게 되었다 사실 나는 자바도...개발해본 적 없는데 이번 프로젝트라 자바신이 되어봐야겠음 4월부터 시작된 프로젝트이지만 그래서 스프링 부트 공부하면서..기본부터 갈고 닦다가.. 드디어 MSA를 알아볼 미세한 지식이 쌓여 시험 공부를 하기 싫어 이러쿵 저러쿵 MSA 포스팅 시작한다!!! 일단 MSA가 무엇인지에 대해 배워보는 포스팅으로 하겠다. MSA? MicroService Architecture 의 준말 독립적으로 배포 가능한 각각의 기능을 수행하는 서비스로 구성된 프레..

[스프링부트] 컨테이너 빈 조회하기

스프링 컨테이너와 스프링 빈 1. 스프링 컨테이너 생성 AppliationContext는 인터페이스이다.이걸 컨테이너라고 보통 부른다 AnnotationConfigApplicationContext는 AppliationContext의 구현체이다. 스프링 컨테이너는 파라미터로 넘어온 설정 클래스 정보(AppConfig)를 사용해서 스프링 빈을 등록한다. new AnnotationConfigApplicationContext(AppConfig.class) 2. 스프링 빈 등록 스프링 컨테이너는 파라미터로 넘어온 설정 클래스 정보를 이용해 스프링 빈을 등록한다. 스프링 빈은 @Bean이 붙은 메소드의 명을 스프링 빈의 이름으로 사용한다. 빈 이름은 항상 다른 이름을 부여하자. 스프링 빈을 찾을땐 applicait..

카테고리 없음 2022.06.01

스프링 부트 - 회원 관리 예제

*인프런 강의 [스프링부트 입문]을 보고 따라하며 정리하는 글 입니다. [무료] 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 대시보드 - 인프런 | 강의 (inflearn.com) 본격적으로 서비스를 하나 구현 해본다. 웹 어플리케이션 계층 구조는 다음과 같다. 도메인은 데이터베이스에서 속성의 종류?를 정의 해놓은 파일이라고 생각하면 된다. Getter와 Setter도 추가해준다. package hello.hellospring.domain; public class Member { private Long id; private String name; public Long getId() { return id; } public void setId(Long id) { this.id =..

카테고리 없음 2022.03.07

[백준- 파이썬 ]1541번 잃어버린 괄호

개인적으로 너무 어려웠던 문제였다.. 처음에는 -55,-50,5 이런 식으로 부호를 포함해서 재정렬 해야하나 싶었고 어찌됬든, -부호 뒤에를 다 빼주면 된다는 사실은 알았다. 하지만 어떻게 식을 짜야할지 고민하다가 결국 다른 사람 풀이를 참조하였다 arr = input().split('-') 우선은 주어진 식을 받고 '-' 마이너스 기준으로 split해준다. for i in arr[0].split("+"): s += int(i) - 로 split하면 앞에 부분 즉 식의 arr[0]은 다 더해주면 된다. for j in arr[1:]: for t in j.split("+"): s -= int(t) 여기서 중요한데, -기준 split된 뒷 부분은 다 빼주면 된다. 그래서 뒤에 부분에 몇개의 index가 있을..

백준 알고리즘 2022.03.04

프로그래머스 - 완주하지 못한 선수

난 일단 어차피 participant 이 completion보다 하나 큰건 확실하니 동명이인을 while문을 써서 처리를 했고 결과는 잘나오는데 시간 효율성에서 실패를 하였다. 왜일까....? 모르겠다 하지만 다른 사람 코드를 참고해본다 1) 딕셔너리를 만들었다. 딕셔너리 쌍 a [2] ='b'이면 {2:'b'}라는 딕셔너리를 추가한다는 뜻. temp 에 어떻게 저장되나 봤더니 이런식이다 참가자들의 이름을 key로 이용한다. value는 key의 이름을 가진 수가 된다. i는 이름이다 string 형!!! for문을 돌면서 i(이름)가 temp안에 있으면 temp[i] 딕셔너리 value값을 하나 더함 두번째 for문을 돌면서 temp[0] = 이름[0] 즉 value 값이 1이면 지우고 아이예 딕셔너리..

728x90