<깃허브 쓰는 방법>
- Github 계정
- git download 및 설치
- git 최초 설정
- github.com Sign-In 후 New Repository 생성
- Eclipse → Project →오른쪽 버튼 → team → Share Project
- Local Repository 생성
- Remote(원격 Repository) : 주소 입력 /계정/비번
- Project → Local Repository(저장소) → commit push → Remote Repository
git download를 검색하여 다운로드 64bit
그리고 최초설정 들어가서
git config --global user.name "mic050r" git config --global user.email 자신 이메일 입력하기
그 후 cmd창에 들어가서 cd
복사하기
그럼 C:\Program Files\Git\bin라고 나옴
그후 cmd창 들어가서
이런식으로 입력하면됨
share team → use 어쩌저구쩌저구 버튼 누르고 →create reposity
staged chanes로 옮기기
commit message 에 init commit 누르기
push
settings → collaborators 같이 쓸 수 있음 → 공유되어있는 파일을 받아서 사용
commit message add VO
<Vending Machine(자판기)>
1. 조건
- 음료자판기(콘솔 입력 /출력)
- 제품 정보(음료) : ProductVO
- 제품명
- 제품가격
- 재고량
- 제품관리(추가) : ProductDAO
- 재고량이 없을때 제품을 채워주는 기능
- 자판기 화면 ProductView
- 제품을 보여주는 화면(출력)
- 제품을 구매화면(입력)
- 자판기사용 : ProductController
- 제품화면을 보고 제품을 선택 → 돈을 투입 → 제품과 반환액을 출력
- 제품 정보(음료) : ProductVO
2. 코드
package product.vo;
public class ProductVO {
private String proName; //제품명
private int price; //가격
private int productNum; //제품번호
private int amount; //재고량
public ProductVO(String proName, int price, int productNum, int amount) {
super();
this.proName = proName;
this.price = price;
this.productNum = productNum;
this.amount = amount;
}
public ProductVO() {
}
public String getProName() {
return proName;
}
public void setProName(String proName) {
this.proName = proName;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
public int getProductNum() {
return productNum;
}
public void setProductNum(int productNum) {
this.productNum = productNum;
}
public int getAmount() {
return amount;
}
public void setAmount(int amount) {
this.amount = amount;
}
@Override
public String toString() {
return "ProductVO [proName=" + proName + ", price=" + price + ", productNum=" + productNum + ", amount="
+ amount + "]";
}
}
package product.vo;
import java.util.ArrayList;
public class ProductDAO {
//arraylist
ArrayList<ProductVO> proList = new ArrayList();
//insert
public void insert(ProductVO pro) {
proList.add(pro);
}
//select
public ArrayList<ProductVO> select() {
return proList;
}
}
package product.view;
import java.util.ArrayList;
import java.util.Scanner;
import product.vo.ProductVO;
public class ProductView {
ArrayList<ProductVO> proList; // proList ArrayList선언
Scanner s1 = new Scanner(System.in); // 정수용 입력
// 제품을 보여주는 화면
public void Output() {
int cnt = 0;
System.out.println("====================================Drink Vending Machine================================");
// for each문
for (ProductVO vo : proList) {
System.out.print((vo.getProductNum() + 1) + " : " + vo.getProName() + "[ price : " + vo.getPrice()
+ ", amount : " + vo.getAmount() + "] \t");
if (++cnt % 2 == 0) {
System.out.println(" ");
System.out.println(" ");
}
}
System.out.println("\n=========================================================================================\n");
}
// 제품을 입력(구매)하는 화면
public void Input() {
System.out.println("*********************Purchase Drink*********************");
System.out.print("구입 제품 번호를 입력하세요 : ");
int productNum = s1.nextInt();
ProductVO vo = proList.get(productNum - 1);
// 제품량이 남아 있으면
if (vo.getAmount() > 0) {
System.out.print(vo.getProName() + " 제품의 가격은 " + vo.getPrice() + "원 돈을 투입 : ");
int price = s1.nextInt();
System.out.print(vo.getProName() + "제품이 나왔습니다.");
// 원래 가격보다 입력받은 가격이 더 클 때 거스름돈이 나옴
if (price > vo.getPrice()) {
System.out.println("거스름돈 : " + (price - vo.getPrice() + "원")); // 입력받은 가격 - 원래 가격 = 거스름돈
vo.setAmount(vo.getAmount() - 1); // 재고량에서 하나 빼기
}
} else { // (vo.getAmount() < 0)
System.out.println("선택하신 제품은 재고가 없습니다.");
}
}
//스캐너 리턴받기
public Scanner getS1() {
return s1;
}
public void setProductList(ArrayList<ProductVO> proList) {
this.proList = proList;
}
}
package product.controller;
import java.util.ArrayList;
import java.util.Scanner;
import product.view.ProductView;
import product.vo.ProductDAO;
import product.vo.ProductVO;
public class ProductController {
public static final int STOP = 0;
public static void main(String[] args) {
// 자판기에 제품 채우기
ProductDAO dao = new ProductDAO();
String names[] = { "사 이 다", "콜 라", "오렌지웰치스", "포도 웰치스", "제로 콜라", "초록 매실", "오렌지 쥬스", "비 락 식 혜",
"비타 500" };
int[] prices = { 800, 900, 1100, 1100, 1500, 1600, 2000, 1000, 700 };
ProductVO vo = null;
ArrayList<ProductVO> proList = dao.select();
for (int i = 0; i < names.length; i++) {
vo = new ProductVO();
vo.setProName(names[i]);
vo.setPrice(prices[i]);
vo.setProductNum(i);
vo.setAmount(10);
proList.add(vo);
}
// 자판기 화면 출력
ProductView view = new ProductView();
view.setProductList(proList);
view.Output();
// 자판기 제품 구매 화면
Scanner s1 = view.getS1();
while (true) {
view.Input();
System.out.print("!!제품을 계속 구매하시겠습니까?(Continue :1, Stop : 0) : ");
int state = s1.nextInt();
if (state == STOP) {
break;
}
view.Output();
}
s1.close();
}
}
3. 실행화면
'AfterSchool > 자바 방과후' 카테고리의 다른 글
방과후 7일차_Thread개념, 예외처리, 시간에 따라 사진 바뀌는 프로그램 (0) | 2023.01.03 |
---|---|
Vending machine GUI로 만들기(1231) (2) | 2023.01.03 |
성적프로그램과 BMI프로그램 만들기(1229) (0) | 2022.12.29 |
Event Programming EventListener 4가지 방법과 도서 정보 관리 시스템(1228) (0) | 2022.12.28 |
상속 예제와 JFrame 사진 넣고 버튼 누르면 이미지 변환(1227) (0) | 2022.12.27 |