일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- java
- springboot
- 컬렉션프레임워크
- 바인드변수
- Spring
- JPA Auditing
- 코딩
- springDataJPA
- jcenter
- JavaScript
- 카카오코딩테스트
- 사용자관리프로그램
- Oracle
- 생성자
- 템플릿엔진
- 멀티쓰레드
- 클라이언트
- SwingCalendar
- socket
- 상속
- 클래스
- 인스턴스
- HTML모드
- Swing
- 메소드
- 깃허브
- 서버
- mavenCentral
- 백준
- 자바
- Today
- Total
목록JAVA (36)
프리 정보 컨텐츠
엔티티 (Entity) 에는 데이터의 생성시간과 수정시간을 포함합니다. 유지보수에 있어서 DB에는 삽입하기 전 갱신하기전에 날짜 데이터를 등록/수정하는 코드가 여기저기 들어가는 불편함을 해소하고자 JPA Auditing을 통하여 자동화하는 방법을 사용합니다. JPA Auditing을 통한 생성시간/수정시간을 자동화하는 방법에 대해서 알아보겠습니다. public class Posts extends BaseTimeEntity { // Do some code.. } 위에서 적어준 BaseTimeEntity를 상속받도록 변경해줍니다. 추가적으로 JPA Auditing 어노테이션을 모두 활성화할 수 있도록 main Application 클래스에 활성화 어노테이션 하나를 추가합니다. @EnableJpaAuditin..
JPA의 개념 JPA의 작동 개념은 위의 링크와 같습니다. JPA에 개념과 작동방식에 대해서 알아보았으니 직접적으로 JPA는 어떻게 사용하는지에 대해서 알아보겠습니다. 자바 모델 클래스에 @Entity 어노테이션을 달면 DB 테이블 엔티티로 맵핑되고, 자바 레파지토리 인터페이스에 @Repository 어노테이션을 달면 DB 테이블 CRUD 명령을 자동으로 생성해줍니다. 엔티티 구현 방법(Lombok 어노테이션 활용) 1. Lombok 어노테이션을 추가를 합니다. Getter/Setter 생성을 위해 Lombok 어노테이션 @Data를 달아줍니다. * 여기서 @Data는 @ToString, @EqualsAndHashCode, @Getter, @Setter, @RequiredArgsConstructor를 한..
JPA의 개념을 정리하기 앞서 IT 국비교육에서 스프링을 처음 배울 때는 MyBatis를 통하여 SQL 매퍼를 이용하여 DB의 쿼리를 작성했습니다. 하지만 실제 일일 구직 사이트를 팀프로젝트로 구축함에 있어 테이블이 10개 이상이 넘어갈수록 SQL을 만들고 유지보수해야만 했었습니다. 이를 보완할 수 있는 방법이 바로 기능과 속성을 한 곳에서 관리 할 수 있는 JPA라는 자바 표준 ORM(object Relational Mapping) 기술입니다. 자사 서비스를 개발하는 곳에서는 SpringBoot와 JPA를 전사 표준으로 사용한다는 사실을 접하고 개인적으로 SpringBoot 개발환경에서 JPA를 사용하는 방법과 개념을 알아보겠습니다. JPA 개념정리 JPA는 인터페이스로서 자바 표준 명세서입니다. 여기..
자바 Socket 통신을 기반으로 멀티쓰레드와, Swing GUI를 활용해 네트워크 채팅 프로그램을 구현해보았다. 기본적인 Socket 통신이 어떻게 이루어지는지 개념정리는 아래 링크를 참고하자. 자바 Socket 클라이언트/서버 개념 및 통신구조 위의 페이지에서 설명하는 것에서 추가된 것은 쓰레드이다. 서버 서버는 클라이언트 상대용 Socket을 자바 ArrayList에 저장하고 현재 상대하고 있는 하나의 클라이언트에만 국한되는 것이 아니라 ArrayList에 보관 중인 모든 Socket을 꺼내서 글을 쓴다. 클라이언트 수시로 날아오는 메시지 처리를 위해 글을 읽는 부분을 쓰레드로 빼서 처리한다. 쓰레드를 활용하지 않으면 글을 쓰고 있을 때 상대방이 주는 메시지를 리얼타임으로 받지 못한다. 총 코드 다..
동시에 여러 개의 클라이언트를 처리하는데 있어서 다중 스레딩을 구현한 서버 사용하는 방법에 대해서 알아보자. 다중 스레드 서버는 클라이언트가 접속 할 때마다 1개 이상의 스레드를 만들어서 처리하므로 자주 사용된다. 자바 Socket의 헷갈리는 개념 정의에 대해서 우선 정리한다. Client 값을 밖으로 보냄 - OutputStream 값을 읽어드림 - InputStream Socket 생성 server 값을 쓰기위함 - OutputStream 값을 읽기위함 - InputStream ServerSocket 생성 Socket Class 생성자 public Socket(InetAddress address, int port) IP주소를 나타내는 InetAddress 객체와 포트 번호로 소켓 객체 생성 호스트명(..
자바로 서버와 클라이언트가 사용하는 채팅 프로그램을 만들기전 개념을 정리하고 사용법을 정리하고자 한다. Server-Client 개념 Client(클라이언트) - Server(서버) 연결형 프로토콜인 TCP (Transmission Control Protocol)를 통해서 클라이언트가 Request하면 서버가 Response로 주고 받는 역할을 합니다. TCP Socket 구현 과정 Server -> ServerSocket 생성 -> 접속 accept() -> 접속완료 후 Socket 반환 -> 스트림 생성 -> 데이터 송수신 Client -> Socket 생성 및 접속 -> 스트림 생성 -> 데이터 송수신 Server : accept -> read -> write -> close Client : con..
※ 참고사항 Swing을 사용한 Calendar구현은 쉬웠으나, Calendar의 기본적인 기능구현, Calendar기능을 Swing으로 구현하는 데 있어서 이해가 부족함을 느꼈다. 이해할 때까지 반복학습 必