본문 바로가기

자바141

[스프링 입문] 5 - (2) 회원 등록 [회원 웹 기능] 1. MemberController 수정 ( /member/new 페이지 만들기 ) src - main - java - hello.hellospring - MemberController 클릭 → 강의자료 코드 붙여넣기 ☞ @GetMapping("/members/new") : localhost:8080/members/new 일 때 아래 메서드 호출 ☞ return "members/createMemberForm" : members - createMemberForm.html 호출 2. createMemberForm.html 만들기 src - main - resource - templates 우클릭 → New - Directory 클릭 → members 입력 후 우클릭 → New - HTML .. 2023. 8. 6.
[스프링 입문] 5 - (1) 홈 화면 추가 [회원 웹 기능] 1. HomeController 클래스 만들기 src - main - java - hello.hellospring - controller 우클릭 → New - Java Class 클릭 → HomeController 입력 → 강의자료 코드 붙여넣기 ☞ @Controller : controller 사용시 무조건 해주기 ☞ @GetMapping("/") : localhost:8080/ 때 아래 메서드 호출 ☞ return "home" : home.html 호출 2. home.html 만들기 src - main - resource - templates 우클릭 → New - HTML File 클릭 → home.html 입력 → 강의자료 코드 넣기 ☞ : 문서정보 ☞ ~ : 출력되는 부분 ☞ ~ .. 2023. 8. 5.
[스프링 입문] 4 - (2) 자바 코드로 직접 스프링 빈 등록하기 [자바 코드로 직접 스프링 빈 등록하기] 1.이전의 컴포넌트 스캔 설정 삭제 - MemberController 클래스 제외한 나머지만 삭제 - MemberService 클래스에서 @Service, @Autowired 삭제 - MemoryMemberRepository 클래스에서 @Repository 삭제 2.직접 코드짜기 src - main - java - hello.hellospring - service 우클릭 → New - Java Class → SpringConfig 입력 → 강의자료 코드 붙여넣기 ☞ @Congifuration : 스프링 빈에 등록하라는 명령을 인식 ☞ @Bean : 아래의 코드를 빈에 등록 ☞ public MemberService memberService() : memberServ.. 2023. 8. 5.
[스프링 입문] 4 - (1) 컴포넌트 스캔과 자동 의존관계 설정 [컴포넌트 스캔과 자동 의존관계 설정] - 컴포넌트 스캔 방식 : @로 시작하는 것들 (눌러서 확인해보면 Component라고 적혀있음) (컴포넌트 스캔은 스프링 빈이 자동으로 등록된다) : 컴포넌트를 사용할 때엔 같은 패키지 안에서끼리 사용이 가능하다 - membercontroller가 memberservice, memberRepository를 조작 할 수 있게 의존관계를 설정 - 스프링 빈을 등록하는 방법 2가지 : 컴포넌트 스캔, 의존관계 설정 : 자바 코드로 직접 등록 (이게 더 편리) ** 스프링 빈은 각 클래스 마다 하나씩 등록하도록 해서 서로 공유하도록 한다 (=싱글톤 등록) ** 1. @Controller, @Autowired src - main - java - hello.hellospri.. 2023. 8. 5.
[스프링 입문] 3 - (4) 회원 서비스 개발, (5) 회원 서비스 테스트 [회원 서비스 개발] 1. 회원 가입 만들기 src - main - java - hello.hellospring 우클릭 → New - Package 클릭 → service 입력 후 우클릭 → New - Java Class → MemberService 입력 → 강의자료 코드 붙여넣기 ☞ validateDuplicateMember : 중복회원을 검사하는 메서드 Ctrl + Alt + T 단축키 입력 후 method 라고 검색 Extract Method 클릭하고 Name 설정 ☞ .ifPresent(m -> : m 안에 값이 있다면 아래 로직이 동작한다. ☞ throw new IllegalStateException : 객체의 상태가 매소드 호출에는 부적절한 경우 즉 예외적인 경우의 호출 ☞ return mem.. 2023. 8. 4.
[스프링 입문] 3 - (3) 회원 리포지토리 테스트 케이스 [회원 리포지토리 테스트 케이스 작성] 1. findById 테스트 src - test - java - hello.hellospring 우클릭 → New - Package 클릭 → repository 입력 후 우클릭 → New - Java Class → Test 입력 → 강의자료 코드 붙여넣기 ☞ Member member = new member : main 메서드와 비슷 member.setName(''spring") ☞ repository.save(member) : 리포지토리에 member 저장 ☞ Member result = repository.findById(member.getId()).get() : 반환타입 Optional. 즉 꺼낼 때 get 이용 (단축키 Ctrl + Alt + V 사용) 내가 .. 2023. 8. 2.
[스프링 입문] 1 - (1) 프로젝트 생성 [프로젝트 생성] 1. Java 11 설치 자바는 Oracle jdk 와 Open jdk 로 나눌 수 있다 Open jdk 로 설치함 아래 링크로 들어가 노란색으로 표시된 window 버전을 설치하고 압축을 풀어주기 ** 주의: 모든 프로그램은 설치 경로에 한글이 들어가면 안됩니다. Java Platform, Standard Edition 11 Reference Implementations Java Platform, Standard Edition 11 Reference Implementations The official Reference Implementation for Java SE 11 (JSR 384) is based solely upon open-source code available from t.. 2023. 7. 24.
[백준] 1918번 후위 표기식 JAVA (자바) 풀이 문제 1918번 : 수식은 일반적으로 3가지 표기법으로 표현 : 연산자가 피연산자 가운데 위치하는 중위 표기법 ( 예: a+b ) 연산자가 피연산자 앞에 위치하는 전위 표기법 ( 예: +ab ) 연산자가 피연산자 뒤에 위치하는 후위 표기법 ( 예: ab+ ) : 후위 표기식 장점은 순서를 적절히 조절하여 순서를 정해줄 수 있어서 괄호 등도 필요 없게 된다 : 중위 표기식을 후위 표기식으로 바꾸는 방법 a+b*c 연산자의 우선순위에 따라 괄호로 묶기 (a+(b*c)) 괄호 안의 연산자를 괄호의 오른쪽으로 옮기기 (a+bc*) 마지막으로 또 +를 괄호의 오른쪽으로 고치기 abc*+ 예시 ) A+B*C-D/E → 결과: ABC*+DE/- [입력] : 첫째 줄에 중위 표기식이 주어진다 : 피연산자는 알파벳 대문.. 2023. 7. 3.
[백준] 1935번 후위 표기식2 JAVA (자바) 풀이 문제 1935번 : 후위 표기식과 각 피연산자에 대응하는 값들이 주어져 있을 때, 그 식을 계산하는 프로그램을 작성 [입력] : 첫째 줄에 피연산자의 개수 : 둘째 줄에는 후위 표기식(=계산식) 여기서 피연산자는 A~Z의 영대문자이며, 길이는 100을 넘지 않는다 : 그리고 셋째 줄부터는 각 피연산자에 값을 순서대로 넣어준다 : 식의 결과와 중간 결과가 -20억보다 크거나 같고, 20억보다 작거나 같은 입력 [출력] : 계산 결과를 소숫점 둘째 자리까지 출력 [스택 연산] push(e) 스택의 맨 위에 요소 e 추가 pop() 스택의 맨 위 요소를 삭제 peek(s) 스택의 맨 위 요소를 삭제하지 않고 반환 top() 스택 맨 위에 있는 데이터 값 반환 isEmpty() 스택에 원소가 없으면 'True'.. 2023. 7. 1.
[백준] 17299번 오등큰수 JAVA (자바) 풀이 문제 17299번 : 크기가 N인 수열 A = A1, A2, ..., AN이 있다. 수열의 각 원소 Ai에 대해서 오등큰수 NGF(i)를 구해라 : Ai가 수열 A에서 등장한 횟수를 F : Ai의 오등큰수는 오른쪽에 있으면서 F가 큰 수 중에서 가장 왼쪽에 있는 수를 의미한다 : 그러한 수가 없는 경우에 오등큰수는 -1 (예시) A = [3, 5, 2, 7]인 경우 NGE(1) = 5, NGE(2) = 7, NGE(3) = 7, NGE(4) = -1 A = [9, 5, 4, 8]인 경우 NGE(1) = -1, NGE(2) = 8, NGE(3) = 8, NGE(4) = -1이다. [입력] : 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000) : 둘째에 수열 A의 원소 A1, A2, ...,.. 2023. 7. 1.