Data_study_clip
close
프로필 배경
프로필 로고

Data_study_clip

  • 분류 전체보기 (238)
    • 빅데이터 (9)
    • R + 통계 (7)
    • Python +머신러닝 (8)
    • DB + SQL (23)
    • 네트워크 (12)
    • Java (45)
    • C# (1)
    • JSP(JavaServerPage) (6)
    • HTML + CSS (4)
    • JavaScript (15)
    • JavaFx (1)
    • Git (9)
    • OS (7)
    • Python (0)
    • AI (4)
    • 도서 (7)
    • 경영 (7)
    • Spring (31)
    • ElasticSearch (12)
    • DesignPattern (2)
    • Docker (4)
    • React (11)
    • 개인정보보호 (2)
    • Spring Security (1)
    • Backend (5)
    • FreeMarker (1)
    • NodeJS (1)
    • 자료구조+알고리즘 (1)
  • 홈
  • 태그
  • 방명록

Java - 어노테이션(Annotation)이란 무엇인가?

어노테이션은 JDK5 이상 버전에서부터 등장한 것으로 클래스나 매소드 또는 변수에 @를 사용하는 것을 말한다. Why we use Annotation? 어노테이션은 사전적 의미로 주석을 의미한다. 주석과는 역할이 다르지만 주석처럼 달아서 특수한 의미 부여를 할 수 있으며 기능주입이 가능하다. 이를 사용하는 가장 큰 이유는 프로그램에게 추가 정보를 제공하는 메타 데이터이기 때문에 사용한다. 어노테이션의 기능 1. 자식 클래스에 여러개의 메소드가 정의되어 있을 때 사용 해당 메소드가 부모 클래스에 있는 메소드를 오버라이딩 했다는 것을 명시적으로 선언한다. 어노테이션을 사용하지 않으면 자식 클래스에 여러 개의 메소드가 있을 경우, 어떤 메소드가 오버라이딩 되었는지 쉽게 파악하기 어렵다. 이때 오버라이드 어노테..

  • format_list_bulleted Java
  • · 2022. 1. 7.
  • textsms
OCP(Open Closed Principle) 개방 폐쇄 원칙

OCP(Open Closed Principle) 개방 폐쇄 원칙

개방 폐쇄 원칙의 가장 대표적인 예시로써 JDBC interface를 들 수 있다., 외부적으로는 여러개의 DB들을 사용할 수 있다. 이때 이것을 직접 연결하면 DB에 연결할 수록 계속 변경되어야하는데 이를방지하기 위해서 JDBC 인터페이스를 두고 계속 다른 DB가 추가되어도 JDBC만 수정하면 되도록 하는 것이다. 이런식으로 Application과는 내부적으로 단 1개의 통로를 가지고 폐쇄적이고 바깥쪽으로는 n개의 개방적으로 확장될 수 있도록 설계하는 것이 개방 폐쇄 원칙을 잘지켜서 프로그래밍하는 것이다. 이런식으로 JDBC interface는 DBMS의 종류와 관계없이 DB를 조작하기 위한 JAVA API이다.

  • format_list_bulleted Java
  • · 2022. 1. 6.
  • textsms
Java - 객체지향 - 단일 책임 원칙과 클래스 상속시에 주의할 점

Java - 객체지향 - 단일 책임 원칙과 클래스 상속시에 주의할 점

아래의 코드를 보면 단일 책임을 원칙을 위배하여 Unit이라는 클래스에서 저글링, 탱크, 정찰기 등 2가지 이상의 것들에 대해서 Unit이 책임을 지고 있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 //단일 책임 원칙을 위배하여 코드를 작성한 예시이다. package SPR_test; public class Unit { private String name; public int speed; private int status; public void attack(){ } public void move(Object unit){ } public void move(){ if(name.equals..

  • format_list_bulleted Java
  • · 2022. 1. 6.
  • textsms
객체 설계하기 및 객체의 4가지 특성(캡슐화, 상속,다형성,추상화)

객체 설계하기 및 객체의 4가지 특성(캡슐화, 상속,다형성,추상화)

Unit 저글링 = new 저글링(); Unit 시즈탱크 = new 시즈탱크(); Unit 레이스 = new 레이스(); Unit 뮤탈 = new 뮤탈(); Unit뮤탈= new뮤탈(); unitMove(저글링); unitMove(시즈탱크); unitMove(레이스); unitMove(뮤탈); private void unitMove(Unit unit){ if(is저글링){... }else{... } // 이런식으로 다형성을 가지게 할 수 있음. unit.move() } 객체의 3가지 요소 1. 상태유지 ( 객체의 상태 ) 객체는 상태 정보를 저장하고, 유지되어져야하며 이러한 속성(variable)은 변수로 정의 되어져야 한다. 이러한 속성값이 바뀜으로 인하여, 객체의 상태가 변결될 수 있어야 한다. 2...

  • format_list_bulleted Java
  • · 2022. 1. 5.
  • textsms
[Java] - 메이븐 웹프로젝트 생성방법

[Java] - 메이븐 웹프로젝트 생성방법

우선 이클립스의 메이븐 프로젝트 생성버튼을 클릭한다. 워크 디렉토리를 지정하면 다음과 같은 창이뜨는데 여기서 'maven-archetype-webapp' 을 검색하여 선택한다. 이후 생성된 프로젝트에는 아래 경로에 main폴더와 test폴더를 생성해줘야한다. (메이븐이 생성해주지 않기 때문에) -src/main/java -src/test/java -톰켓 설정 -propertise -> targeted runtimes에 톰켓 체크 -JDK 버전설정 메이븐은 기본적으로 JDK 1.5 버전이 디폴트값이기 때문에 사용하고자 하는 JDK 버전을 플러그인 해준다. pom.xml 파일의 build부분이 컴파일에 대한 부분이다. 따라서 이부분에 jdk 설정을 작성해준다. ( 태그를통해) maven 프로젝트 폴더 구조 ..

  • format_list_bulleted Java
  • · 2020. 11. 4.
  • textsms
[Java] - 메이븐 프로젝트

[Java] - 메이븐 프로젝트

Maven Java기반의 프로젝트의 라이프사이클을 관리 할 수 있도록 도와주는 빌드도구를 Maven이라한다. 컴파일과 빌드르 동시에 수행하거나 테스트하는 것은 물론이요 서버 배포에 필요한 war파일 생성과 같은 자원관리를 할 수 있는 환경이 조성되어있는 빌드 도구로서 라이브러리 관리기능 또한 매우 유용하다. 프로젝트를 진행하다보면 수많은 라이브러리들을 활용하게 되고 점점 많아지는 라이브러리들을 일일히 관리하기 힘들어지게 된다. 그런데 Maven은 코드 몇줄로 필요한 라이브러리들을 가져올 수 있고 해당 라이브러리가 필요로하는 다른 의존라이브러리 까지 자동으로 불러와준다. pom.xml 파일에 필요한 라이브러리만 적으면 Maven이 알아서 다운받고 설치해주고 경로까지 지정해준다. 1 2 3 4 5 6 7 8..

  • format_list_bulleted Java
  • · 2020. 11. 4.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • ···
  • 8
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (238)
    • 빅데이터 (9)
    • R + 통계 (7)
    • Python +머신러닝 (8)
    • DB + SQL (23)
    • 네트워크 (12)
    • Java (45)
    • C# (1)
    • JSP(JavaServerPage) (6)
    • HTML + CSS (4)
    • JavaScript (15)
    • JavaFx (1)
    • Git (9)
    • OS (7)
    • Python (0)
    • AI (4)
    • 도서 (7)
    • 경영 (7)
    • Spring (31)
    • ElasticSearch (12)
    • DesignPattern (2)
    • Docker (4)
    • React (11)
    • 개인정보보호 (2)
    • Spring Security (1)
    • Backend (5)
    • FreeMarker (1)
    • NodeJS (1)
    • 자료구조+알고리즘 (1)
최근 글
인기 글
최근 댓글
태그
  • #메모습관 #신정철
  • #보통주
  • #우선주
  • #TDD #JunitTest
  • #Hadoop #RDBMS #NoSQL #MapReduce
  • #빅데이터 #빅데이터의 특징 #빅데이터의 정의 #빅데이터란 #빅데이터특성 #3V #5V
  • #의존성주입 #DI #Spring
  • #보통주와우선주
  • #데이터 수집기술
  • #ApacheServer
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.