13. 이클립스 활용
-새로운 프로젝트 생성
*Java 일지 #9 참고하여 생성
https://steadilyslowly.tistory.com/9
*생성 후 lombok 설치 되어있지 않다면 설치 후 pom.xml에 dependency 코드 입력, 버전 11로 수정(pom.xml)
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongodb-driver-sync</artifactId>
<version>4.2.2</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.16</version>
<scope>provided</scope>
</dependency>
*오라클에 설계한 것 참조하여 폴더와 파일 생성
-코드 입력
*entity폴더 안 파일에 코드 입력
**Item.java
package com.example.entity;
import java.util.ArrayList;
import java.util.List;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
@ToString
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
public class Item {
private int code = 0;
private String name = null;
private String text = null;
private int price = 0;
private long quantity = 0L;
// 판매자 정보
private Seller seller = null; // 기본키 정보가 추가됨.
// 주문 내역
private List<Order> list = new ArrayList<Order>();
}
**Seller.java
package com.example.entity;
import java.util.ArrayList;
import java.util.List;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@ToString
public class Seller {
private long sid = 0L; // number
private String name = null; // varchar2(100)
// 판매자는 여러개의 물품을 가짐
private List<Item> list = new ArrayList<Item>();
}
**Order.java
package com.example.entity;
import java.util.ArrayList;
import java.util.List;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@ToString
public class Seller {
private long sid = 0L; // number
private String name = null; // varchar2(100)
// 판매자는 여러개의 물품을 가짐
private List<Item> list = new ArrayList<Item>();
}
**Customer.java
package com.example.entity;
import java.util.ArrayList;
import java.util.List;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@ToString
public class Customer {
private String cid = null;
private String name = null;
// 고객의 주문내역
private List<Order> list = new ArrayList<Order>();
}
*view폴더 안 파일에 코드 입력, App.java 파일 코드 입력
**MainFrame.java
package com.example.view;
import javax.swing.JFrame;
public class MainFrame extends JFrame {
// 메소드 생성하기
public void init() {
getContentPane().add(new MainPanel());
// 축소
this.setSize(500, 400);
this.setVisible(true);
// this.setExtendedState(JFrame.MAXIMIZED_BOTH);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
**App.java
package com.example;
import com.example.view.MainFrame;
public class App {
public static void main(String[] args) {
new MainFrame().init();
}
}
*구현
-이클립스로 디자인(상단 menu bar)
*이클립스(MainFrame.java)
해당 Frame 파일 마우스 오른쪽 클릭 - opne with - windowbuilder editor 클릭
이후 화면 하단 부에 desgin 버튼 클릭
*화면 왼쪽 pallete에 menu 를 이용해 디자인
*vscode 확인(MainFrame.java)
이클립스에서 디자인 완료 후 저장한 뒤 vscode에 해당 파일을 확인하면 생성된 menu bar가 자동으로 code입력 왼료 됨을 확인할 수 있 다.
package com.example.view;
import javax.swing.JFrame;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
public class MainFrame extends JFrame {
public MainFrame() {
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
JMenu mnNewMenu = new JMenu("New menu");
menuBar.add(mnNewMenu);
JMenuItem mntmNewMenuItem = new JMenuItem("New menu item");
mnNewMenu.add(mntmNewMenuItem);
JMenuItem mntmNewMenuItem_1 = new JMenuItem("New menu item");
mnNewMenu.add(mntmNewMenuItem_1);
JMenu mnNewMenu_1 = new JMenu("New menu");
menuBar.add(mnNewMenu_1);
JMenuItem mntmNewMenuItem_2 = new JMenuItem("New menu item");
mnNewMenu_1.add(mntmNewMenuItem_2);
JMenu mnNewMenu_2 = new JMenu("New menu");
menuBar.add(mnNewMenu_2);
JMenuItem mntmNewMenuItem_3 = new JMenuItem("New menu item");
mnNewMenu_2.add(mntmNewMenuItem_3);
}
// 메소드 생성하기
public void init() {
getContentPane().add(new MainPanel());
// 축소
this.setSize(500, 400);
this.setVisible(true);
// this.setExtendedState(JFrame.MAXIMIZED_BOTH); //풀스크린
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
*구현
'Java' 카테고리의 다른 글
Java 일지 #14 (20210827) 판매자 등록 (0) | 2021.08.30 |
---|---|
Java 일지 참고(import 에러, entity, model, view 폴더 역할) (0) | 2021.08.27 |
Java 일지 #12 이클립스 연동, 오라클 생성 (0) | 2021.08.27 |
Java 일지 #11 수정, 삭제(20210826) (0) | 2021.08.27 |
Java 일지 #10 등록, 목록(20210826) (0) | 2021.08.27 |