java

·코딩딩/Java
인텔리 제이 하단의 해당 아이콘을 누르고 Open ideavimrc 선택 해당 옵션을 선택하고 열린 창에 set clipboard+=unnamed 추가해주기
·코딩딩/Java
싱글톤이란 전체 프로젝트에서 하나의 객체만을 생성하고 해당 객체에 접근할 수 static 메소드를 생성해 관리하는것을 의미한다. 싱글톤 기법을 사용하는 이유자바에서 싱글톤 패턴은 하나의 인스턴스만을 생성하고, 어디서든지 그 인스턴스에 접근할 수 있도록 하는 디자인 패턴입니다. 주요한 목적은 다음과 같습니다:단일 인스턴스 유지: 싱글톤 패턴은 애플리케이션 전체에서 오직 하나의 인스턴스만 생성하여 사용합니다. 이는 여러 개의 인스턴스가 생성되는 것을 방지하고, 리소스 낭비를 줄이는 데 도움을 줍니다.공유 리소스 제공: 싱글톤 인스턴스는 여러 객체 간에 공유할 수 있는 중요한 리소스를 나타낼 수 있습니다. 예를 들어, 데이터베이스 연결, 로깅 시스템, 설정 정보 등의 인스턴스를 싱글톤으로 구현하면 애플리케이션..
·코딩딩/Spring
AOP는 모든 메소드의 호출 시간을 측정하거나 회원가입 시간, 회원 조회 시간을 측정할 때 사용된다. AOP를 적용시키면 joinPoint.proceed() 메서드를 사용해 해당 서비스의 프록시를 임시로 생성해서 AOP에 코딩한 작업을 완료한 후 서비스를 실행한다..
·코딩딩/Spring
화면을 만들기 위한 컨트롤러와 뷰 컨트롤러를 설계해보자. 스프링에 @Autowired @Service @Repository 어노테이션을 등록해 각각의 클래스에 의존성을 주입해 상호작용이 가능하도록 만든다. 해당 방법은 컴포넌트 스캔 방식으로 컴포넌트 에노테이션을 사용해 의존성을 주입하는 방법이다. 스프링은 스프링 컨테이너에 스프링 빈을 등록할 때 기본으로 싱글톤으로 등록한다. 자바 코드로 직접 스프링 빈을 등록한 모습 (리포지토리와 서비스 어노테이션을 제거하고 직접 springConfig 클래스로 연결함) 정형화 되지 않거나 상황에 따라 구현 클래스를 변경해야 하면 설정을 통해 스프링 빈으로 등록한다
·코딩딩/Spring
회원가입과 회원 목록을 조회할 수 있는 간단한 웹을 제작해보자 우선 기본적으로 localhost:8080 에 접속했을때 가장먼저 나오는 home 화면을 제작한다. GetMapping / 을 통해 기본 홈화면을 설정해주고 home.html을 출력하도록 코딩한다 다음으론 회원가입 버튼을 눌렀을 때 /members/new를 호출하고 MemberController에 GetMapping으로 /members/createMemberForm을 연결해준다. 그렇게 호출된 /members/createMemberForm 에서 사용자가 입력한 값은 post 방식으로 넘어온다. 이렇게 넘어온 데이터를 PostMapping으로 가져와 저장할 수 있도록 form을 작성해 입력값을 member class 로 저장된 입력값을 memb..
·코딩딩/Spring
이번 실습에서 사용할 데이터 베이스는 H2 데이터 베이스이고 실무에서는 사용되지 않는 교육용 고대 DB라고 한다. 설치 링크 https://www.h2database.com 해당 DB를 설치 후 h2.sh 파일을 클릭해 설치해준 뒤 h2.bat 파일을 실행해 DB를 제어한다 해당 쿼리문을 실행시켜 MEMBER 테이블을 생성해준다. 이제 리포지토리와의 커넥션을 끊고 DB와 연결해주는 코드를 작성해준다. package hello.hellospring.repository; import hello.hellospring.domain.Member; import org.springframework.jdbc.datasource.DataSourceUtils; import javax.sql.DataSource; impor..
·코딩딩/Java
1. 학습 목표2. 학습 내용네트워킹네트워킹의 개요클라이언트/서버모델TCP/IP, 소켓, 포트자바에서의 URL(Uniform Resource Locator) 관련 클래스URL 클래스URLConnection 클래스TCP 소켓을 이용한 서버/클라이언트 통신ServerSocket 클래스의 주요 메소드Socket 클래스의 주요 메소드서버/클라이언트간 통신의 순서(TCP)UDP 소켓을 이용한 서버/클라이언트 통신서버/클라이언트간 일방향 통신(UDP)서버/클라이언트간 양방향 통신(UDP)1. 학습 목표 네트워킹의 기본적 개념에 대해 설명할 수 있다.자바에서의 URL 관련 클래스에 대해 설명할 수 있다.TCP 소켓을 이용한 서버/클라이언트 통신의 기본 구조에 대해 이해하고 응용 프로그램을 개발할 수 있다.UDP 소켓..
·코딩딩/Java
학습 목표 ArrayList 클래스에 대해 설명할 수 있다. Generics에 대해 설명할 수 있다. 멀티 쓰레딩(multi-threading)에 대해 설명할 수 있다. 임계영여(critical section)을 이용한 동기화(synchronization)에 대해 설명할 수 있다. 쓰레드 사이의 통신을 이용한 동기화에 대해 설명할 수 있다. 학습 내용 ArrayList 클래스 Collections 클래스는 오브젝트 데이트의 관리를 지원하는 클래스이며, ArrayList 클래스는 그 중 하나를 말함 오브젝트들을 연결구조로 저장 가능, 배열과 달리 크기가 사용에 따라 자동적으로 조절됨 오브젝트 생성시 안에 저장한 데이터의 자료형을 지정함 버젼 6 이후에서는 을 생략해도 됨 자료 구조에서 다루는 linked ..
·코딩딩/Java
학습 목표 패키지(package)에 대해 설명할 수 있다. 접근 제한자의 사용에 대해 설명할 수 있다. 중첩 클래스(Nested Class)에 대해 설명할 수 있다. 랩퍼 클래스(Wrapper Class)의 사용에 대해 설명할 수 있다. 문자열 처리 메소드의 사용에 대해 설명할 수 있다. Scanner 클래스의 사용에 대해 설명할 수 있다. 시간에 관련된 메소드의 사용에 대해 설명할 수 있다. 수학에 관련된 메소드의 사용에 대해 설명할 수 있다. 학습 내용 패키지 패키지란? 클래스(class) 인터페이스(interface) 어노테이션(Annotation)을 한데 모아놓은것 하나의 패키지는 물리적으로는 하나의 폴더임 자바에는 많은 편리한 패키지가 준비되어 있음 사용자가 필요에 따라 패키지를 만들 수도 있음..
·코딩딩/Spring
회원 리포지토리와 도메인을 활용해 실제 비지니스 로직을 작성해볼것이다. 우선 자바의 hello.hellospring에 하위 패키지를 생성한다. 해당 서비스 패키지에 MemberService 클래스를 생성해준다. 제일 먼저 작성할 코드는 인터페이스 MemberRepository의 인자를 가지고 있고 작동 가능한 MemoryMemberRepository의 메소드를 포함한 객체를 하나 생성해준다. 그 다음 해당 객체를 바탕으로 회원가입 서비스 코드를 작생해보자. 여기서 validateDupicateMember는 member의 값이 이미 데이터 베이스에 저장되어 있는지 확인하는 메서드이다. 다음으로는 전체 멤버를 조회하고 리스트 형식으로 반환하는 서비스 코드를 작성해보자. 해당 코드는 기존 MemoryMembe..
전낙타
'java' 태그의 글 목록 (3 Page)