본문 바로가기

분류 전체보기260

10월 네 번째 주간회고 📚 221024-221028 험난했던 9주 차의 자바스크립트를 뒤로 하고 다시 자바/스프링으로 돌아온 10주 차! 이번 주는 JPA를 활용해서 REST API 서버를 만들고 H2라는 DB를 활용해 인메모리로 데이터를 올리고 더 나아가 파일로 영속화하는 작업까지 해 보았다. 이때 프론트는 강의에서 살짝 나온 리액트로 구현을 했는데 이때 또 Boni의 도움을 많이 받았다. 구글링 해가며 짠 내 똥 코드의 코드 리뷰까지 해주심!! (shout-out to Boni ㅋ_ㅋ) 스프링 부트는 정말 신기하다. 국비때 xml 파일들을 하나하나 관리해 주면서 dependencies를 넣고 property 설정을 하고 bean을 등록해주기 위해서 beans 안에 bean을 넣고 하는 등 코드를 쳐가며 설정해줘야 하는 게 .. 2022. 10. 30.
Spring - @Bean, @Component (22.10.30 TIL) 스프링이 개발자 대신 객체를 관리하기 위해서는 객체가 Bean 으로 등록이 되어있어야 한다. 과거에는 Bean 을 등록하기 위해 xml 파일을 작성하였는데, 이제는 어노테이션으로 편리하게 등록할 수 있는 방법으로 관리할 수 있다. 스프링에는 @Bean 이나 @Component 로 Bean 객체를 등록할 수 있는 방법이 있다. @Bean 수동으로 스프링 컨테이너에 bean 을 등록하는 방법이다. @Bean 은 메서드 레벨의 어노테이션이며, 메서드의 return 객체가 bean 으로 등록된다. 메서드 레벨에 작성 가능하다는 것은 외부의 객체를 불러와서 Bean 으로 등록할 수 있다는 것이다. 그렇다면 메서드 레벨에 존재하는 @Bean 을 실행시킬 수 있는 방법은 무엇일까? 바로 스프링에게 '이 클래스는 be.. 2022. 10. 30.
JAVA - Stream (스트림) 1. 스트림 의미 1) 컬렉션의 저장 요소를 하나씩 참조해 람다식으로 처리할 수 있도록 도와주는 반복자. (자바8부터 추가) 2) 자바7 이전까지는 List 컬렉션에서 요소를 순차적으로 처리하기 위해 Iterator 반복자를 사용했음. /* Iterator */ List list = Arrays.asList("홍길동", "김자바"); Iterator iterator = list.iterator(); while(iterator.hasNext()){ String name = iterator.next(); } /* Stream */ List list = Arrays.asList("홍길동", "김자바"); Stream stream = list.stream(); stream.forEach( na.. 2022. 10. 29.
JAVA Stream (스트림) (22.10.29 TIL) 📍 스트림 헷갈릴 때마다 그냥 여기에서 찾아보려고 기본서를 보며 틈틈이 정리한 것을 오늘 드디어 완성했다. (내용이 다소 길 수 있습니다!) 스트림..가보자고..!! 1. 스트림 의미 1) 컬렉션의 저장 요소를 하나씩 참조해 람다식으로 처리할 수 있도록 도와주는 반복자. (자바8부터 추가) 2) 자바7 이전까지는 List 컬렉션에서 요소를 순차적으로 처리하기 위해 Iterator 반복자를 사용했음. /* Iterator */ List list = Arrays.asList("홍길동", "김자바"); Iterator iterator = list.iterator(); while(iterator.hasNext()){ String name = iterator.next(); } /* Stream .. 2022. 10. 29.
Java - Arrays 클래스 1. Arrays 클래스로 배열 다루기 1) 배열의 비교와 출력 메서드 - toString(), deepToString() 메서드 예시 - toString() 은 1차원 배열에 쓰이고, deepToString() 은 2차원 혹은 다차원 배열에 쓰임. int[] arr1 = {0,1,2,3,4}; int[][] arr2 = {{11,12}, {21,22}}; System.out.println(Arrays.toString(arr1)); //출력 화면 => [0,1,2,3,4] System.out.println(Arrays.deepToString(arr2)); //출력 화면 => [[11,12], [21,22].. 2022. 10. 29.
Java - 다형성, instanceof 1. 다형성 (Polymorphism) 1) 부모 타입의 참조 변수로 자식 타입의 여러 객체를 다룰 수 있는 기능. 다형성은 상속을 전제 조건으로 함. 2) 상속한 클래스의 객체는 슈퍼 클래스로도 서브 클래스로도 다룰 수 있음. 3) 같은 코드에서 여러 다른 실행 결과가 나옴. 4) 하위클래스 객체를 상위클래스에 대입하여 사용할 수 있음. 5) 캡슐화(정보 은닉), 상속과 더불어 객체 지향 프로그래밍의 가장 큰 특징 중 하나임. 6) 다형성을 잘 활용하면 유연하고 확장성 있고, 유지보수가 편리한 프로그램을 만들 수 있음. 기본적으로는 아래 코드처럼 객체를 생성할 때 참조 타입과 인스턴스의 타입을 동일하게 작성해왔음. //이제까지 타입은 아래처럼 동일해야 했음. Tv t = new Tv(); SmartTv.. 2022. 10. 29.