Java(9)
-
Java Swing과 AWT를 이용하여 원 돌아가는 애니메이션 만들기
import java.awt.Color; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import java.awt.geom.Arc2D; import javax.swing.JFrame; import javax.swing.JPanel; public class CircleAnimation extends JFrame { JPanel jp; int arc; // 각도 public CircleAnimation() { super("Circle Animation"); this.setSize(500, 500); this.setLocationRelativeTo(null); this.add(jp = new JPane..
2022.08.16 -
Spring boot를 이용한 게시판 만들기 - 등록, 수정, 조회 API 만들기(3)
본격적으로 API를 만들기 전에 PostsRepository에 id를 기준으로 정렬하는 쿼리 함수 하나를 작성하도록 하겠습니다. public interface PostsRepository extends JpaRepository { @Query("select p from Posts p order by p.id desc") List findAllDesc(); } JPA에서는 함수명을 지을 때 키워드가 있으면 그 키워드에 맞게 자동으로 SQL을 짜줍니다. 예를 들면 함수명이 findByIdOrderByDateAsc(Long id)면 JPA에서 다음과 같은 쿼리를 만들어줍니다. SELECT * FROM [JpaRepository의 엔티티] WHERE id=?1 ORDER BY date ASC 하지만 이런 키워드..
2022.06.06 -
Spring boot를 이용한 게시판 만들기 - 유저, 게시물 엔티티 및 리포지토리 만들기(2)
일단 시작하기 전에 패키지를 아래와 같이 나누도록 하겠습니다. domain 패키지: 엔티티 및 리포지토리 클래스가 있는 패키지 controller 패키지: 컨트롤러 클래스가 있는 패키지 dto 패키지: DTO 클래스가 있는 패키지 오늘은 엔티티 및 리포지토리 클래스를 만들도록 하겠습니다. 1. 유저 (Users) 엔티티 클래스에는 기본적으로 @Entity와 @Getter, 그리고 NoArgsconstructor 어노테이션을 사용합니다. @Entity: 이 클래스가 엔티티임을 정의함 @Getter: 말 그대로 getter 메소드를 정의함 @NoArgscontructor: 기본 생성자인데, 엔티티 클래스에서는 기본적으로 꼭 필요하다. User 클래스 package com.example.board.web.do..
2022.05.25 -
Spring boot를 이용한 게시판 만들기 - JPA를 이용하여 데이터베이스 연결(1)
저번에는 JPA가 아니라 MyBatis로 연동을 하였는데, 이번에는 JPA를 사용해서 데이터베이스 연결을 하도록 하겠습니다. (쉬움) 일단 Spring Initializr를 이용해서 프로젝트를 생성해 줍니다. https://start.spring.io/ 사이트에 들어가서 위 사진과 같이 세팅을 하고 아래에 GENERATE 버튼을 눌러서 프로젝트를 다운로드합니다. IntelliJ 혹은 Eclipse를 이용해서 다운로드한 프로젝트를 열어줍니다. (저는 개인적으로 인텔리제이를 사용합니다.) 프로젝트를 열게 되면 색인 생성 및 빌드를 하는데, 약 1분에서 2분 정도 기다려주면 끝납니다. 이제 기본적인 세팅을 하겠습니다. src/main/resources 폴더 안에 application.properties 리소스..
2022.05.17 -
Spring boot에서 Controller가 먹지 않는 에러
분명 templates파일에 home.html이라는 파일을 만들고 HomeController클래스를 만들어서 home.html을 반환하는 메소드를 만들었다. import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class HomeController { @RequestMapping(value = "/") public String home() { return "home"; } } 그런데 이상하게도 애플리케이션을 실행하였을 때, home.html을 반환하지를 못하였다. 처음에는 Mapping 어노테이션을 이상한 거를 쓰고 있어서 ..
2022.03.24 -
Spring boot 엔티티 매핑
JPA에서는 엔티티와 테이블을 정확하게 매핑하는 것이 중요하다. 그래서 매핑하는 어노테이션들을 숙지하고 사용해야 한다. JPA는 다음과 같은 매핑 어노테이션들을 지원한다. 객체와 테이블 매핑 : @Entity, @Table Primary key 매핑 : @Id 필드와 Column 매핑 : @Column 연관관계 매핑 : @ManyToOne, @JoinColumn @Entity JPA를 이용해서 테이블과 매핑할 클래스는 @Entity라는 어노테이션을 필수로 붙여야 한다. @Entity는 name이라는 속성을 가지고 있는데 이는 JPA에서 사용할 엔티티 이름을 지정한다. 이를 설정하지 않으면 클래스 이름을 그대로 사용한다. @Entity // name 속성x -> Member라는 이름을 사용 public c..
2022.03.21