본문 바로가기

java

[내가 만든 프로젝트 코드 분석 | 리듬게임 만들기] 3. 시작화면에 음악 삽입 mp3확장자로 된 배경음악파일을 준비합니다. music폴더를 생성합니다. 음악파일을 재생할 수 있도록 JLayer라이브러리를 설치합니다. package dynamic_beat; import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import javazoom.jl.player.Player; // JLayer라이브러리 public class Music extends Thread { // 쓰레드를 상속 private Player player; // 음악 라이브러리 private boolean isLoop; // 무한반복 변수 private File file; private FileInputStream f.. 더보기
[내가 만든 프로젝트 코드 분석 | 리듬게임 만들기] 2.게임 시작화면 개발하기 게임배경화면 이미지를 선정하고 images폴더를 생성해서 이미지를 저장합니다. 더블버퍼링은 예비버퍼를 사용하여 그래픽 데이터를 저장하여 필요한 부분을 끊어짐 없이 보여주는 것을 의미합니다. 이를 사용하여 게임 이미지를 깜빡임없이 그려낼 수 있습니다.. package dynamic_beat_2; public class Main { public static final int SCREEN_WHIDTH = 1280; public static final int SCREEN_HEIGHT = 720; public static void main(String[] args) { new DynamicBeat(); } } Main클래스 package dynamic_beat_2; import java.awt.Graphics; .. 더보기
[내가 만든 프로젝트 코드 분석 | 리듬게임 만들기] 1.자바 개발환경 세팅 과 GUI 시작하기 운영체제에 맞는 jdk, eclipse버전을 설정합니다. Main클래스를 만들어 프로그램을 시작합니다. JFrame 라이브러리를 GUI 기반 프로그램을 만들기 위해서 상속받습니다. package dynamic_beat; import javax.swing.JFrame; // JFrame라이브러리 등록 public class DynamicBeat extends JFrame { public DynamicBeat() { setTitle("Dynamic Beat"); setSize(Main.SCREEN_WHIDTH, Main.SCREEN_REIGHT); // 게임창 정의 setResizable(false); // 창크기 고정 setLocationRelativeTo(null); // 게임창 화면중앙 setDefau.. 더보기
[자바의정석 | Chapter 07 객체지향 프로그래밍2] 상속 1. 학습목표 상속의 의미에 대해 이해할 수 있다. 2.필요 개념 문장정리 상속 상속은 기존의 클래스를 재사용하여 새로운 클래스를 작성하는 것이다. 부모의 필드, 메서드, 클래스를 받을 수 있다. 상속을 받는다는 것은 조상클래스를 확장한다는 의미로 해석할 수도 있다. 상속의 장점은 코드의 중복을 제거하는 것도 있지만 다형적인 표현을 가능하게 한다는것이 가장 큰 장점이다. 다중상속은 불가능하지만 자식클래스는 여러개가 가능하다. 자식 객체가 생성되면 부모 객체부터 생성되고 추가로 정의된 객체가 저장된다. 부모의 생성자는 상속되지 않는다. 3. 코드작성 class Tv { boolean power; // 전원상태(on/off) int channel; //채널 void power (){ power = !powe.. 더보기
[ JPA | 강의 따라 공부하기 ] 4.find()와 getReference()의 차이 find()메소드 find 메소드는 EntityManager에서 조회 연산을 수행한다. 첫번째 파라미터로 엔티티 타입을 지정하고 두번째 파라미터로 식별자를 전달한다. 엔티티 매니저는 그 값을 조회해 쿼리를 만들어서 데이터 베이스의 객체를 가져오게 된다. UserEntity userEntity = entityManager.find(UserEntity.class,email); 여기서 식별자는 @Id 어노테이션이 정의된 필드를 사용한다. 엔티티를 조회했을 때 식별자와 매핑되는 엔티티가 존재하면 엔티티 객체를 리턴하고 매핑되는 엔티티가 없으면 null을 리턴한다. getReference()메소드 getReference메소드는 find메소드와 마찬가지로 EntityManager에서 조회 연산을 수행한다. 첫번째 .. 더보기
[ JPA | 강의 따라 공부하기 ] 2.커스텀 EntityManagerFactory 만들기 EntityManagerFactory 영속적 컨텍스트가 데이터를 엑세스하는 영역에서 뿐아니라 프로그램이 실행되는 프레젠테이션 영역까지 사용하기 위해 커스텀 EntityManager로 static한 클래스를 만들어서 관리하도록 한다. package studio.aroundhub.entity_manager_factory.factory; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.Persistence; public class CEntityManagerFactory { // 커스텀 private static EntityManagerFactory entity.. 더보기
[ JPA | 강의 따라 공부하기 ] 1.JPA 기본설정 JPA JPA란 JAVA Persistence API의 약자로 자바의 ORM표준 스펙을 정의한다. JPA의 스펙은 자바의 객체와 데이터베이스를 어떻게 매핑하고 동작해야 하는지를 정의하고 있다. JPA는 어플리케이션의 필드값들을 데이터베이스에서 데이터값과 매핑을 시켜주는 역할을 한다. 하이버네이트 ORM Framework 중 하나 ‘JPA 프로바이더’ 라고도 부른다 JPA의 실제 구현체중 하나이며 현재 JPA구현체중 가장 많이 사용된다. 영속성 컨텍스트는 JPA가 관리하는 엔티티 객체의 집합니다. 엔티티 객체가 영속 컨텍스트에 들어오게 되면 JPA는 엔티티 객체의 매핑 정보를 가지고 DB에 반영한다. 엔티티 객체가 영속 컨텍스트에 들어오게 되어 관리 대상이 되면 그 객체를 영속 객체라고 한다. 영속성 컨텍.. 더보기
[내가 만든 프로젝트 코드 분석 | JSP게시판에 Ajax추가하기] 4. Ajax를 이용해서 서블릿과 통신하기 // 입력할 때마다 반응하도록 입력 값 관리 검색 // 버튼 클릭시 조회메서드 실행 이름 성별 이메일 // JS처리를 위한 id 지정 더보기