본문 바로가기

스프링입문

(11)
[인프런 - 스프링 입문] 완강 후기(비전공 같은 전공, 입문자) 나의 기술 스택(이라고 말하기도 민망한 입문자 수준 ㅎㅎ) 비전공스러운 전공(학점 2점대), 거의 입문자 수준 java 처음 배움. c++만 맛만 봄 국비지원(1), udemy frontend 강의(1) 수강. 생활코딩 html, css, javascript 강의 수강 정도 프론트엔드 백엔드 고민하다가 deview2023 다녀와고 개발바닥 보다가 백엔드를 더 비중있게 공부해보기로 정하고 인프런에서 김영한 강사님의 로드맵 유튜브 영상 보고 시작했다. java 공부하고 스프링 입문 강의 시작하기를 권하셔서, 생활코딩 java1 강의를 쭉 듣고 시작했다. https://opentutorials.org/module/4294 JAVA1 수업소개 이 수업은 가장 인기있는 컴퓨터 언어인 Java의 기본을 알려드리는 ..
[인프런 - 스프링 입문] 3/22 개발공부일지 - 자잘한 것들(코드 작성 시 인스턴스와 클래스 구분(by 대소문자) constructor 생성 단축키 대소문자 구분의 중요성 다시 한번! jdbcTemplate = new jdbcTemplate(dataSource); jdbcTemplate = new JdbcTemplate(dataSource); constructor 생성 ⌘+N 입력 후 constructor 선택 constructor 대상 class 선택! 아휴 진 빠진다 오늘은 여기까지... 강의 따라가다 다리 찢어지겠어~~
[인프런 - 스프링 입문] 3/22 개발공부일지 - jdbc, 스프링 테스트 xmlns : xml namespace 태그의 xmlns 속성은 해당 문서를 위한 XML 네임스페이스(namespace)를 명시합니다. xmlns 속성은 해당 문서가 XHTML 문서일 경우 반드시 명시되어야 한다. spring에서는 조립(assembly)하는 코드만 손대면(의존성 주입(D.I.) 사용) 구현체와 인터페이스와의 관계 변경을 위해 기존 코드의 별도 수정이 필요 없다. package Hello.Hellospring.service; import Hello.Hellospring.Repository.JdbcMemberRepository; import Hello.Hellospring.Repository.MemberRepository; import Hello.Hellospring.Repository.M..
[인프런 - 스프링 입문] 3/19 개발공부일지(2) - 의존성주입 by annotation 오늘도 자바에 익숙해지자~ @Controller + tab 누르면 import하면서 자동완성됨! D.I. by annotation. @Controller @Service @Repository @Autowired로 사용해서 필요한 곳에 의존성 주입하도록 함 구현체 public class (구현체) implements (인터페이스) public class MemoryMemberRepository implements MemberRepository @Component annotation이 있어야 스프링이 bin에 method를 등록한다. 이때 @Component scan은 동일 카테고리 package내에서만 스캔한다.(별도 카테고리 scan 요청하려면 별도 설정 필요함)
[인프런 - 스프링 입문] 3/19 개발공부일지 - 회원가입예제(예외 처리, 의존성 주입 등등등배가슴어깨하체) 하아, 생활코딩으로 java 맛보기하고 바로 실무 입문강의로 달려든 내가 무식해서 용감했다. 그래도 용감해서 부딪치면서 배운다. 어려움 개념들 투성이:) 나자신 칭찬...해 ㅋㅋ 주석 생성 콘솔에 /** + return 입력하면 아래처럼 주석이 생성된다. Optional 선언 단축키 ⌘+⌥+v 입력 memberRepository.findByName(member.getId()); 이 코드가 요렇게 바뀐다. 그리고 이름 설정하면 된다. Method 추출 코드가 많아지면 method는 별도 추출해낸다 ⌃ + v 입력 후 Extract Method 선택하거나, ⌘+⌥+v 입력 코드에 오류 발생 (줄바꿈 시 세미콜론 사용 주의) private void validateDuplicateMember(Member mem..
[인프런 - 스프링 입문] 3/18 개발공부일지(2) - assertThat 사용, @AfterEach, TDD의 간단한 개념 asssertThat Assertions.assertThat().isEqualTo(); 강의에서 시키는 대로 했는데 method 호출이 안 되네....??? 왜... 뭐 되게 하면 되지.. 하고 좀 더 기다려보다가 import org.junit.jupiter.api.Assertions; Assertions.assertThat(member).isEqualsTo(result); ------------------------------------------------------------------------ import static org.assertj.core.api.Assertions.*; assertThat(member).isEqualTo(result); 아래처럼 입력하면 테스트 진행 가능:) 호출하는 ..
[인프런 - 스프링 입문] 3/15 개발공부일지 - api, 회원 관리 예제 API json방식 출력! json vs xml 인 구도가 있었는데요 없었습니다. 지금은 간단하고 가벼운 JSON 압승요. 옛날 legacy에 xml 나오면 검색해서 해결하자. 역시 갓글링. 원래는 컨트롤러에서 view resolver에 요청해야 하는데, @RequestBody annotation 있으면 HttpMessageConverter 가 대신 동작한다. ⌘ + n 누르고 getter and setter 선택! 수정하지 말고 ok 누를 것! 더보기 java bin 규약, 프로퍼티 접근 방식! 검색해 볼것 무튼 @RequestBody 에노테이션 붙어서 왔는데, 객체가 온다? JSON방식으로 변환하여(JSON converter 동작) 출력하도록 정해져있다! 객체처리 시 MappingJackson2Htt..
[인프런 - 스프링 입문] 3/14 개발공부일지 - 갑 프(론트엔드) 튀, 그리고 내잔디 돌리도 어제강의 그냥 돌려보고 있는데, 프론트엔드를 조금이라도 배운 게 다행이다 싶다. 어쨋든 백엔드도 코드가 어떻게 실행되어서 어떤 결과를 나타내는지 보기 위해서 결국 클라이언트 단에서의 출력을 확인해야 하는데, 그게 프론트엔드에서 구현하는 것이다 보니, 막상보면 프론트엔드 코드는 크게 별 거 없지만(html only!!) 그래도 조오오금 아니까 별 거 없다 라고 생각하는 거지, 아무것도 모르는 그 별 거도 별 거가 아니게 됐을 것 같다. 한가지 걱정은 프론트엔드 javascript까지만 3종류의 강의(생활코딩, 국비지원, udemy bootcamp)를 들었는데, 프레임워크나 라이브러리는 안 배워서,, 나중에 나오면.. 그냥 그때 또 배워서 습득하면 되지! 어렵게 생각하지 말고 그때그때 필요한 거 쫙쫙 흡수하..