Java Programming
package com.encore.post.domain;
public class PostRequestDTO {
private String id;
private String title;
private String content;
private int cnt;
private boolean isFlag;
public PostRequestDTO() {
}
public PostRequestDTO(String id) {
this.id = id;
}
public PostRequestDTO(String id, String title, String content, int cnt, boolean isFlag) {
this.id = id;
this.title = title;
this.content = content;
this.cnt = cnt;
this.isFlag = isFlag;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public int getCnt() {
return cnt;
}
public void setCnt(int cnt) {
this.cnt = cnt;
}
public boolean isFlag() {
return isFlag;
}
public void setFlag(boolean flag) {
isFlag = flag;
}
}
package com.encore.post.service;
// xxxxService, xxxxServiceImpl - 보편적으로 비지니스 로직을 처리하는 역할을 담당하는 클래스
// 사용자가 블로그에 글을 작성(savePost), 수정, 삭제, 검색, 읽기
// 아이디, 제목, 내용, 등록일, 조회수, 공개/비공개
import com.encore.post.domain.PostRequestDTO;
public class PostService {
public static String savePost(String id, String title, String content, int cnt, boolean isFlag) {
System.out.println("debug >>>> working method completed....");
return "글 작성이 정상적으로 완료되었습니다.";
}
public static String savePost(PostRequestDTO params) {
System.out.println("debug >>>> working method completed....");
return "글 작성이 정상적으로 완료되었습니다.";
}
public static String deletePost(PostRequestDTO params) {
System.out.println("debug >>>> working method completed....");
return "글 삭제가 정상적으로 완료되었습니다.";
}
}
package com.encore.post.view;
import com.encore.post.domain.PostRequestDTO;
import com.encore.post.service.PostService;
import java.util.Scanner;
public class PostView {
// 참조타입의 멤버변수
private PostService service;
private PostRequestDTO params;
// 생성자 오버로딩
public PostView() {
}
public PostView(PostService service, PostRequestDTO params) {
this.service = service;
this.params = params;
}
public void menu() {
Scanner sc = new Scanner(System.in);
while (true) {
System.out.println(">>>> Hanwha software camp Beyond 5th <<<<");
System.out.println("1. login");
System.out.println("2. join");
System.out.println("3. post write");
System.out.println("4. post delete");
System.out.println("99. exit");
System.out.print("input number : ");
int number = sc.nextInt();
if (number == 99) {
System.exit(0);
}
if (number == 3) {
requestSave();
}
if (number == 4) {
requestDelete();
}
}
}
public void requestSave() {
System.out.println("debug >>>> client post view");
Scanner sc = new Scanner(System.in);
System.out.print("아이디 : ");
String id = sc.nextLine();
System.out.print("제목 : ");
String title = sc.nextLine();
System.out.print("내용 : ");
String content = sc.nextLine();
System.out.print("조회수 : ");
int cnt = sc.nextInt();
System.out.print("공개여부 : ");
boolean isFlag = sc.nextBoolean();
// PostService service = new PostService();
// PostRequestDTO request = new PostRequestDTO(id, title, content, cnt, isFlag);
params.setId(id); params.setTitle(title); params.setContent(content); params.setCnt(cnt); params.setFlag(isFlag);
String msg = service.savePost(params);
System.out.println("Result >>>> " + msg);
}
// request delete
// terminal로부터 사용자의 아이디만 입력받아서 해당 아이디를 dto에 담고
// PostService 클래스에 정의된 postDelete(PostRequestDTO params) 메서드를 호출하여 '작성하신 글이 삭제되었습니다.' 메시지 반환받아서 출력
public void requestDelete() {
System.out.println("debug >>>> client post view");
Scanner sc = new Scanner(System.in);
System.out.print("아이디 : ");
String id = sc.nextLine();
// PostRequestDTO request = new PostRequestDTO(id);
// PostService service = new PostService();
params.setId(id);
String msg = service.deletePost(params);
System.out.println("Result >>>> " + msg);
}
}
import com.encore.post.domain.PostRequestDTO;
import com.encore.post.service.PostService;
import com.encore.post.view.PostView;
public class PostMain {
public static void main(String[] args) {
// PostService service = new PostService() ;
// System.out.println("debug >>>> main caller -> service savePost working method ");
// case01.
// String msg = service.savePost("jslim", "공지사항", "내일은 휴강입니다.", 0, true) ;
// System.out.println("Result >>>> "+msg);
// case02.
// PostRequestDTO request = new PostRequestDTO("jslim", "공지사항", "내일은 휴강입니다.", 0, true) ;
// String msg = service.savePost(request);
// System.out.println("Result >>>> "+msg);
// case03.
// view를 이용한 사용자 입력과 연결.....
// PostView view = new PostView() ;
// view.menu();
// case04.
// 불필요하게 발생되는 객체생성을 효율적으로 관리하기 위해서 얕은복사 개념을 사용할 수 있다.
PostService service = new PostService();
PostRequestDTO params = new PostRequestDTO() ;
PostView view = new PostView(service, params);
view.menu();
}
}
package com.encore.operator;
import java.util.Scanner;
public class OperatorDemo {
public OperatorDemo() {
}
// example01 반환값X, 매개변수X
public void example01() {
System.out.println(">>>> 산술연산");
int x = 100, y = 100, result = 0;
System.out.println(" + " + (x + y));
System.out.println(" - " + (x - y));
System.out.println(" * " + (x * y));
System.out.println(" / " + (x / y));
System.out.println(" % " + (x % y));
}
public String example02(String color01, String color02) {
System.out.println(">>>> 연결연산");
return "신호등의 색깔은 " + color01 + "과 " + color02 + "입니다.";
}
public void example03() {
System.out.println(">>>> 논리연산");
boolean isFlag = false;
System.out.println("논리 부정, " + !isFlag);
// Scanner에서 입력받은 숫자가 짝수인지 아닌지를 판단하고 싶다면?
Scanner sc = new Scanner(System.in);
System.out.print("숫자를 입력하세요 : ");
int num = sc.nextInt();
System.out.println("Result >>>> 짝수 " + (num % 2 == 0));
System.out.println("Result >>>> 홀수 " + (num % 2 != 0));
// Scanner에서 입력받은 숫자가 3의 배수인지 아닌지를 판단하고 싶다면?
System.out.println("Result >>>> 3의 배수 " + (num % 3 == 0));
// Scanner에서 입력받은 숫자가 양수인지 아닌지를 판단하고 싶다면?
System.out.println("Result >>>> 양수 " + (num > 0));
}
public void example04() {
System.out.println(">>>> 증감연산");
int age = 25;
System.out.println("현재 나이는 " + age);
System.out.println(++age); // age = age + 1 후 print
System.out.println("현재 나이는 " + age);
System.out.println(age++); // print 후 age = age + 1
System.out.println("현재 나이는 " + age);
System.out.println();
int number = 20;
int result = ++number * 3;
System.out.println("Result >>>> " + result);
}
public void example05() {
System.out.println(">>>> 일반논리연산 ");
/*
&(이면서, 이고), |(이거나), (&&, ||) - short shortcut
*/
Scanner sc = new Scanner(System.in);
System.out.print("숫자를 입력하세요 : ");
int num = sc.nextInt();
// Scanner로부터 입력받은 숫자가 1~100 사이의 값인지 판단하고 싶다면?
System.out.println("1 ~ 100 " + (num >= 1 && num <= 100));
}
public void example06() {
System.out.println(">>>> 일반논리연산");
Scanner sc = new Scanner(System.in);
System.out.print("문자를 입력하세요: ");
// String str = sc.next();
char str = sc.next().charAt(0);
// Scanner로부터 입력받은 문자가 A~Z 사이의 문자인지 판단하고 싶다면?
// System.out.print("A ~ Z " + ((int)str.charAt(0) >= 65 && (int)str.charAt(0) <= 90));
System.out.println("input char : " + str);
System.out.println("A ~ Z " + (str >= 'A' && str <= 'Z'));
}
public void example07() {
System.out.println(">>>> 삼항연산");
// (조건식) ? 참일 경우 : 거짓일 경우
// (조건식) ? 참일 경우 : (조건식) ? 참일 경우 : 거짓일 경우
Scanner sc = new Scanner(System.in);
System.out.print("숫자를 입력하세요: ");
int num = sc.nextInt();
// Scanner로부터 입력받은 숫자가 양수인지 음수인지 아니면 0인지 판단하고 싶다면?
String result = (num > 0) ? "양수" : (num < 0) ? "음수" : "0";
System.out.println("Result >>>> " + result);
}
}
'한화시스템 BEYOND SW캠프 > TIL' 카테고리의 다른 글
[4주차] 24.02.01 목요일 (0) | 2024.02.01 |
---|---|
[4주차] 24.01.31 수요일 (0) | 2024.01.31 |
[4주차] 24.01.29 월요일 (0) | 2024.01.29 |
[3주차] 24.01.24 수요일 (0) | 2024.01.24 |
[3주차] 24.01.23 화요일 (0) | 2024.01.23 |