2014-04-10 3 views
1

내 테이블 이름이있는 String 개체를 정의하고 모든 테이블에서 내 열 행 이름에 액세스 할 수 있습니다.Java에서 빌드하고 구조화하는 방법

내가 예와 그 설명하자 : 나는 두 개의 테이블이

; "작업"과 "부품".

tasks에는 2 개의 열이 있습니다. "id"및 "taskName".

parts 테이블에는 2 개의 열도 있습니다. "id"와 "name".

TABLE.tasks.parts 

나는 이런 식으로 뭔가를 원한다 (그러나 이것은 잘못입니다 : 나는 내가 이런 식으로 모든 열의 이름을 액세스 할 수 있도록 객체를 정의 할 필요가 방법을 알고 싶습니다 이제

!)

public final class TABLES { 

    public final static String TASKS = "tasks"; 
    public final static String CHUNKS = "chunks"; 

    public final static class TASKS{ 

     public final String COLUMN_ID  = "id"; 
     public final String COLUMN_NAME  = "taskName"; 
    }; 

    public final static class CHUNKS{ 

     public static final String COLUMN_ID  = "id"; 
     public static final String COLUMN_NAME  = "name"; 
    }; 

} 
+0

난 그냥 클래스에 대한 최종 정적을 얻을 필요가 있다고 생각. – Xdevelop

+0

당신이 찾고있는 것이 확실하지 않지만'enum '을 사용해 보셨습니까? –

+3

당신은 어떤 관계형 스키마를 반영하는 Java 객체를 생성하려고하는 것 같습니다. 맞습니까? 그렇다면 JPA 또는 jOOQ와 완전히 다른 것을 살펴 보시기 바랍니다.그렇지 않다면, 또는 당신이 당신의 스키마에 대한 약간의 그림을 원한다면 enum으로 가라. –

답변

0

JPA 자바 지속성 API를 할 수 그 이상. NetBeans IDE에서 eclipseLink (참조 JPA 구현)에 대한 지원에 깊은 인상을 받았습니다.

데이터베이스의 일부를 데이터베이스 모델 클래스로 변환 할 수 있습니다. 그리고 구체적인 데이터 액세스 객체 클래스. 또한이 방법으로 전체 SQL SELECT를 작성하는 기준 API가 있습니다.

모델 클래스를 생성하는 것이 기본 JPA보다 조금 더 중요하다는 것을 알고 있어야합니다. 약간의 인터넷 검색을해야하거나 데이터베이스에서 NetBeans/New/Persistence/Entity 클래스를 시험해보십시오.

  • 넷빈즈는 (video)을 지원합니다.
  • 순수 JPA tutorial - 주로 생성 된 모델 클래스가 없지만 기본 JPA의 이해를 얻으려면.
0

이것은 올바른 방법이 아닙니다. 데이터베이스를 원하면 SQLite와 같은 데이터베이스를 사용하십시오.

public class Tables{ 

public final static Task task; 
public final static Chunk chunk; 

// or ArrayList<Tasks> tasks if there is more than one task/chunk 

} 

을 한 후 다른 파일 Tasks.java

public class Task{ 

    public final String id; 
    public final String name; 

} 

및 Chunk.java : 당신이 개체를 원하는 경우 , 당신은 이런 식으로 그것을 할 수

public class Chunk{ 

    public final String id; 
    public final String name; 

} 
+0

나는 항상 당신이 말한 것처럼 그렇게했습니다. bout 지금 나는 그 안에 모든 테이블 컬럼 이름을 넣고 그들에게 쉽게 접근 할 수있는 장소를 원한다. – svp

+0

그래, 위의 내 코멘트에 ArrayList를 사용하면'Tables.task.get (i) .id ' –

0

당신이해야 사용자 인터페이스 . 응용 프로그램에서 그 참가자를 사용할 때마다, 단지 it..cheer에 상수 만이 인터페이스를 .. 구현

public final class TABLES implements TASKS, CHUNKS{ 
    public static void main(String[] args) { 
     System.out.println(TASKS.COLUMN_ID);  
     System.out.println(CHUNKS.COLUMN_ID); 
    } 
} 

interface TASKS{ 
    public final String COLUMN_ID  = "id"; 
    public final String COLUMN_NAME  = "taskName"; 
} 

interface CHUNKS{ 
    public static String COLUMN_ID  = "id"; 
    public static String COLUMN_NAME  = "name"; 
} 
+0

정말 고마워요.하지만 그건 내가 원하는 것이 아니에요. – svp

0

예 :

이 에게
public class TripleField { 

public static void main(String[] args) { 
    System.out.println(TABLE.tasks.id); 
    System.out.println(TABLE.tasks.taskName); 
} 
} 

final class TABLE { 
final static TASKS tasks = new TASKS(); 
} 

class TASKS { 
final String id = "myID"; 
final String taskName ="myTaskName"; 
} 
+0

고마워요.하지만 그건 내가 원하는 걸 아니에요. – svp

관련 문제