본문 바로가기

STUDY ALONE361

[Spring] 7. AOP 1. AOP가 필요한 상황 모든 메서드의 호출 시간을 측정하고 싶다면? 공통 관심 사항(cross-cutting concern) vs 핵심 관심 사항(core concern) 회원 가입 시간, 회원 조회 시간을 측정하고 싶다면? 아래 그림처럼 각각 만들어서 넣어줘야 할까? MemberService 회원 조회 시간 측정 추가 package hello.hellospring.service; @Transactional public class MemberService { /** * 회원가입 */ public Long join(Member member) { long start = System.currentTimeMillis(); try { validateDuplicateMember(member); //중복 회원 검.. 2023. 12. 3.
[Spring] 6. 스프링 DB 접근 기술 만약 이 강의를 따라하다 문제가 생겼다면 H2 웹을 다시 켜보기를 바랍니다... (제가 겪은 오류의 대부분은 H2 웹이 꺼져있어서 그랬던 거라...) 또 javax → jakatra 로 수정해주면 문제가 해결되는 경우들이 있었습니다. import를 제대로 했는지 확인하는 것도 방법일 것 같네요. 1. H2 데이터베이스 설치 H2 DB : 개발이나 테스트 용도로 가볍고 편리한 DB, 웹 화면 제공 1.4.200 버전을 설치할 것 https://www.h2database.com 윈도우 사용자 기준 실행 : h2.bat DB 파일 생성 방법 최초 : jdbc:h2:~/test 파일 생성 확인 : ~/test.mv.db 이후 접속 : jdbc:h2:tcp://localhost/~/test 테이블 생성하기 테이블.. 2023. 11. 30.
[Spring] 5. 회원 관리 예제 - 웹 MVC 개발 1. 회원 웹 기능 - 홈 화면 추가 홈 컨트롤러 추가 package hello.hellospring.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; @Controller public class HomeController { @GetMapping("/") public String home() { return "home"; } } 회원 관리용 홈 Hello Spring 회원 기능 회원 가입 회원 목록 참고 : 컨트롤러가 정적 파일보다 우선순위가 높다. 2. 회원 웹 기능 - 등록 회원 등록 폼 컨트롤러 @Controller public cl.. 2023. 11. 27.
[스터디] getter, setter 그래서 왜 쓰면 안 되는건데?🤔 // 이 글에서의 getter 메서드는 필드의 참조값을 그대로 넘기는 getXXX 형태의 public 메서드를 뜻함 public class TodoList { private final List todos = new LinkedList(); public List getTodos() { return todos; } } 우테코 프리코스를 진행하며 정말 많이 들었던 'getter 사용 지양'. setter는 왜 쓰지 말라는 건지 대충 알겠지만... getter는 도대체 왜? 무엇이 문제일까? 잠깐 애초에 getter는 왜 쓰는거지? 그냥 필드 자체의 접근자를 public으로 하면 되잖아?? 당연히 위와 같이 접근자를 public으로 해버리면 정보 은닉이고 캡슐화고 아무것도 지켜지지 않겠죠. 어떤 객체의 필드들이.. 2023. 11. 23.
정보처리기사 필기는 정확히 기억이 나지 않지만 80점대로 합격하였고, 실기는 75점 합격이었다. 2023년 3회 정처기 실기는 코딩 문제가 전보다 많이 나와서 수제비 카페에서도 다들 당황했었다는 후기가 많았다. 나 또한 마찬가지었기에 실기 다시 준비해야해나^^... 하고 있었는데 생각보다 높은 점수로 합격해서 얼떨떨하다. 필기 - 독학, 책 : 시나공 실기 - 인강 : 수제비, 책 : 수제비 사실 반년 이상을 정처기에 시간을 들였기 때문에 후회가 많이 남는다. 그 시간에 다른 걸 더 많이 할 수 있었을텐데... 원인을 고민해봤는데 불안해서였던 것 같다. 혼자 공부하던 필기에서 더욱 그랬는데 완벽해진 후에 시험을 보고 싶단 생각이 있었기에 그만큼 오래 걸린 것 같다. 진작 인강이라도 들으면서 빨리 해치워버릴걸 하는 생.. 2023. 11. 23.
[우테코] 4주차 회고 4주차 미션 4주차 미션은 크리스마스 프로모션이었다! 4주차는 이전 미션들과는 달리 기능 요구 사항이 이메일 형식이었다. 구어로 풀어진 요구사항들을 다시 정리한 후 기능들을 생각해야 해서 전보다 이 부분에서 오래 걸렸던 것 같다. 아래 있는 InputView, OutputView 클래스를 참고하여 입출력 클래스를 구현한다. 입력과 출력을 담당하는 클래스를 별도로 구현한다. 해당 클래스의 패키지, 클래스명, 메서드의 반환 타입과 시그니처는 자유롭게 구현할 수 있다. public class InputView { public int readDate() { System.out.println("12월 중 식당 예상 방문 날짜는 언제인가요? (숫자만 입력해 주세요!)"); String input = Console... 2023. 11. 23.