JAVA/자바 2019. 11. 6. 14:42

팀원들이랑 기존의 파리바게뜨 홈페이지를 MV2패턴으로 재설계해보았습니다.

 

미니 프로젝트1 - JSP를 이용하여 MVC2 패턴으로 홈페이지 재구성

제작 날짜 : 7월 1일 ~ 7월 8일

주제 선정 : 파리바게뜨 홈페이지 재구성해보기

 

주제 선정 이유

- 자바를 배운 지 별로 안되었을 때, 이것저것 해보고 싶어서 다양한 게시판이 있는 홈페이지를 골랐습니다.

 

프로젝트 명 : MVC2 파리바게뜨 홈페이지

 

문제점 : 팀원 모두 코딩을 배운 지 1개월도 안되었을 때라 역할분담이 제대로 나눠지지 않았습니다.

해결방법 : 시간을 갈아넣기..... (이 프로젝트 기간동안 새벽 2시 전에 집에 가본 적이 없었습니다.)

 

맡았던 역할

- 관리자 페이지(제품)

   - 제품 제거

   - 제품 추가

   - 제품 검색

   - 제품 분류

- 마이페이지 중 일부

   - 회원 탈퇴

 

시연 영상

https://youtu.be/GmAzvs6g3ns

 

posted by 스노(Snow)
:
JAVA/자바 2019. 6. 23. 10:57

이진 탐색이란 오름차순으로 정렬되어 있는 배열에서 특정한 값의 위치를 찾아내는 알고리즘이다.

배열의 중간에 있는 임의의 값을 선택하여, 그 값과 찾고자 하는 값의 크고 작음을 비교하여, 중간 값보다 작으면 좌측의 데이터들을 대상으로, 중간 값보다 크면 우측의 데이터를 대상으로 다시 탐색하여, 해당 값을 찾을 때까지 이 과정을 반복한다.

 

오름차순으로 정렬된 리스트에서만 사용 가능한 단점이 있지만, 속도가 빠르다는 장점이 있다.

 

오름차순으로 정렬하는 방법

https://sno-machinelearning.tistory.com/16

 

Arrays.binarySearch(배열 이름, 찾고자 하는 값);

 

[예제 결과]

 

[예제 코드]

import java.util.*;

public class Solution {
private static int[] arr = {5,7,6,1,3,9,0,12,100};

public static void main(String[] args) {
Arrays.sort(arr);
for(int i=0;i<arr.length;i++) {
System.out.print(arr[i]+"\t");
}
System.out.println();
int a = Arrays.binarySearch(arr, 6);
int b = Arrays.binarySearch(arr, 12);
System.out.print("배열에서의 6과 12의 위치 : ");
System.out.println(a +", "+ b);
}
}

posted by 스노(Snow)
:
JAVA/자바 2019. 6. 23. 09:53

Arrays.copyOfRange() 는 특정 배열의 원하는 범위만큼 복사하여 새로운 배열을 만드는 메소드함수입니다.

 

새로운 배열 = Arrays.copyOfRange(원본 배열,복사하려는 시작 요소의 인덱스,복사하려는 마지막 요소의 인덱스의 바로 다음 인덱스)

 

[예제 결과물]

 

[예제 코드]

import java.util.*;

public class Solution {
private static int[] arr = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

public static void main(String[] args) {
int[] arr1 = Arrays.copyOfRange(arr, 2,6);

System.out.print("arr의 요소 중 인덱스2에서 5까지  불러오기 :  ");
for(int i=0;i<arr1.length;i++) {
System.out.print(arr1[i]+" ");
}
}
}

posted by 스노(Snow)
:
JAVA/자바 2019. 6. 23. 09:40

Arrays.copyOf()는 특정 배열의 원하는 길이만큼 새로운 배열로 복사하는 메소드 함수입니다.

 

새로운 배열 = Arrays.copyof(원본 배열, 원본 배열에서 복사하고 싶은 요소들의 길이); 식으로 사용됩니다.

 

[예제 결과물]

[예제 코드]

import java.util.*;

public class Solution {
private static int[] arr = {1, 2, 3, 4, 5};

public static void main(String[] args) {
int[] arr1 = Arrays.copyOf(arr, 2);
int[] arr2 = Arrays.copyOf(arr, 7);

System.out.print("arr의 요소중 2개 불러오기 :  ");
for(int i=0;i<arr1.length;i++) {
System.out.print(arr1[i]+" ");
}
System.out.println();
System.out.print("arr의 요소중 7개 불러오기 :  ");
for(int i=0;i<arr2.length;i++) {
System.out.print(arr2[i]+" ");
}
}
}

posted by 스노(Snow)
:
JAVA/자바 2019. 6. 20. 23:38

Arrays.sort() 함수를 사용하여 배열을 정렬해보았습니다.

1. Arrays.sort(배열명)을 하면 오름차순으로 정렬됩니다.

2. Arrays.sort(배열명,i,j)을 하면 i부터 j까지 오름차순으로 정렬합니다.

3. Arrays.sort()에서는 내림차순을 지원하지 않지만 for문을 이용하여 오름차순을 뒤집어서 내림차순으로 만들 수 있습니다.

[원본배열]

{4,2,1,3,5}

 

[결과]

 

[코드]

import java.util.Arrays;

public class C {
public static void main(String[] args) {

//오름차순 정렬
int[] arr = {4,2,1,3,5};
Arrays.sort(arr);
System.out.println("오름차순 정렬");
for(int i=0;i<arr.length;i++) {
System.out.print(arr[i]+"\t");
}
System.out.println();
System.out.println();

//0번째를 제외하고 오름차순 정렬
int[] arr2 = {4,2,1,3,5};
Arrays.sort(arr2,1,arr2.length);
System.out.println("0번째를 제외하고 오름차순 정렬");
for(int i=0;i<arr2.length;i++) {
System.out.print(arr2[i]+"\t");
}
System.out.println();
System.out.println();

//내림차순 정렬
int[] arr3 = {4,2,1,3,5};
Arrays.sort(arr3);
System.out.println("내림차순 정렬");
for(int i=(arr3.length)-1;i>=0;i--) {
System.out.print(arr3[i]+"\t");
}
}
}

'JAVA > 자바' 카테고리의 다른 글

[JAVA] 특정범위 배열복사 Arrays.copyOfRange()  (0) 2019.06.23
[JAVA] 배열복사 Arrays.copyOf() 함수  (0) 2019.06.23
객체 지향 프로그래밍  (0) 2019.06.20
[JAVA]대소문자 변환  (0) 2019.06.19
[JAVA] 이클립스 설치  (0) 2019.06.10
posted by 스노(Snow)
:
JAVA/자바 2019. 6. 20. 00:22

[객체 지향 프로그래밍의 정의]

소프트웨어를 개발할 때, 여러 객체들로 나눠 하나하나 조립해서 완성된 프로그램을 만드는 기법을 객체 지향 프로그래밍이라고 합니다.

 

[객체의 정의]

객체란 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른 것과 식별 가능한 것을 말합니다. 예를 들자면 물리적으로 존재하는 모니터, 필통, 연필, 사람과 추상적인 강의, 수업 등이 모두 객체가 될 수 있습니다. 객체는 속성과 동작으로 구성되어 있습니다. 사람이라는 객체를 예로 들자면, 이름이나 성별 등이 속성이고 달린다, 잔다 등이 동작입니다. 자바에서는 속성과 동작들을 각각 필드와 메소드라고 부릅니다.

 

[객체 간의 관계]

관계의 종류에는 집합 관계, 사용 관계, 상속 관계가 있습니다.

집합 관계 : 부품과 완성품의 관계

ex) 자동차 - 엔진,타이어 등

사용 관계 : 객체 간의 상호작용

ex) 사람 - 자동차

상속 관계 : 상위 객체를 기반으로 하위 객체를 생성하는 관계

ex) 기계(상위) - 자동차(하위)

 

[객체 지향 프로그래밍의 장점]

객체 지향 프로그래밍은 절차 지향 프로그래밍보다 학습 난이도가 높지만, 협업이 필요한 대형 프로젝트에 적합하며 유지보수가 용이합니다.

posted by 스노(Snow)
:
JAVA/자바 2019. 6. 19. 23:35

대문자로 변환하는 함수 : toUpperCase()

소문자로 변환하는 함수 : toLowerCase()

[결과]

[코드]

public class B {
public static void main(String[] args) {
String s = "ABcdEFghiJKlMnOpQRstuVwXYz";
String s1 = s.toUpperCase(); //모두 대문자로 바꾸기
String s2 = s.toLowerCase(); //모두 소문자로 바꾸기

System.out.println("원본 자료 \t : "+s);
System.out.println("대문자로 변환 : "+ s1);
System.out.println("소문자로 변환 : "+ s2);
}
}

posted by 스노(Snow)
:
JAVA/자바 2019. 6. 10. 23:14

[이클립스 소개]

단순한 프로그램일 경우에는 명령 프롬프트에서 컴파일과 실행을 해볼 수는 있겠지만, 복잡한 프로그램을 개발할 경우, 개발자의 코딩 실수를 줄일 수 있게 키워드의 색깔 구분, 자동 코드 완성 기능 및 디버깅 기능을 갖춘 소스 편집 툴을 사용하는 것이 편리합니다.

이클립스는 자바 프로그램을 개발하기 위한 통합 개발 환경을 제공하는데, 프로젝트 생성, 자동 코드 완성, 디버깅 기능을 가지고 있습니다. 현재 이클립스는 초급 개발자부터 고급 개발자에 이르기까지 광범위하게 사용하고 있고 기업체에서 가장 선호하는 개발 전문 툴이라고 합니다. 따라서 여러분이 자바 개발자로서 일을 하는 한 이클립스의 사용 방법을 숙달할 필요성이 있어 보입니다.

 

[이클립스 다운로드]

이클립스는 자바 언어로 개발된 툴이기 때문에 이클립스를 실행하려면 JVM이 필요합니다.

 

[자바 설치하는 방법]

https://sno-machinelearning.tistory.com/2

 

[JAVA] 자바 설치 및 환경변수 설정

자바에 대해 본격적으로 공부를 시작하기 전에 먼저 설치하는 방법부터 배우겠습니다. [자바 개발 도구(JDK : Java Development Kit)] 자바 프로그램을 개발하고 실행하기 위해서는 반드시 Java SE 구현체인 자바..

sno-machinelearning.tistory.com

자바를 설치하셨으면 이클립스 압축 파일만 다운로드하시면 됩니다.

 

이클립스 압축 파일은 https://www.eclipse.org/

 

The Platform for Open Innovation and Collaboration | The Eclipse Foundation

The Eclipse Foundation - home to a global community, the Eclipse IDE, Jakarta EE and over 350 open source projects, including runtimes, tools and frameworks.

www.eclipse.org

사이트에서 무료로 받을 수 있습니다.

 

사이트에 들어가셔서 다운로드를 누르신 후, 다운로드 패키지를 클릭해주세요.

그 후, 운영체제에 맞게 설치 파일을 다운로드하시면 됩니다.

 

[이클립스 실행]

 

다운로드한 압축 파일을 해제하면 eclipse라는 디렉토리가 나오는데, 이 디렉토리 안에 있는 eclipse.exe파일을 실행하시면 이클립스가 실행됩니다.

File 에서 New → JAVA Project를 누릅니다. 없을 경우에는 Other...을 눌러서 JAVA Project를 찾아 누르시면 됩니다.

그 후, 원하시는 프로젝트 네임을 적으시면 됩니다.

그후 src를 우클릭 해서 New → Class를 클릭합니다. 그 후 Name에 클래스네임을 적고, Finish를 누르시면 됩니다.

posted by 스노(Snow)
: