객체지향 특성 - 다형성
·
OOP
객체지향 특성 중에 다형성에 대해 알아볼게요! 객체지향 4대 특성 중에 다형성에 대해 알아볼게요! 스프링 입문을 위한 자바 객체 지향의 원리와 이해- 김종민 지음 을 참고했습니다! 객체 지향의 4대 특성은 캡슐화, 상속, 추상화, 다형성 이 있어요. 캡! 상추다! 라고 외우면 잘 외워지니까 반드시 외우도록 해요. 다형성 : 사용편의성 객체지향에서 다형성은?? 오버라이딩과 오버로딩이 대표적인 예 라고 할 수 있어요. 오버라이딩 : 같은 메서드 이름, 같은 인자 목록으로 상위 클래스의 메서드를 재정의 오버로딩 : 같은 메서드 이름, 다른 인자 목록으로 다수의 메서드를 중복 정의 다형성은 코드를 보면서 이해하시는게 빠를거에요. {% codeblock %} class Animal { public String n..
객체지향 특성 - 상속
·
OOP
객체지향 특성 중에 상속에 대해 알아볼게요! 객체지향 4대 특성 중에 상속 대해 알아볼게요! 스프링 입문을 위한 자바 객체 지향의 원리와 이해- 김종민 지음 을 참고했습니다! 객체 지향의 4대 특성은 캡슐화, 상속, 추상화, 다형성 이 있어요. 캡! 상추다! 라고 외우면 잘 외워지니까 반드시 외우도록 해요. 상속 : 재사용 + 확장 객체지향의 상속에 대해 설명할 때 일반적으로 나오는 예 입니다. 계층도/조직도 라고 말을 하는데 이 그림 보다 아래의 그림이 객체지향의 상속을 더 잘 표현한 예라고 생각해요. 아래 그림은 상속 관계가 아니예요. 동물은 포유류의 부모가 아니고 고래의 부모가 포유류가 되는 것도 아니지요. 동물이라고 하는 것 중 분류를 세분화해서 포유류와 조류가 나오고 더 분류해서 고래, 박쥐가 ..
객체지향 특성 - 캡슐화
·
OOP
객체지향 특성 중에 캡슐화에 대해 알아볼게요! 객체지향 4대 특성 중에 캡슐화에 대해 알아볼게요! 스프링 입문을 위한 자바 객체 지향의 원리와 이해- 김종민 지음 을 참고했습니다! 객체 지향의 4대 특성은 캡슐화, 상속, 추상화, 다형성 이 있어요. 캡! 상추다! 라고 외우면 잘 외워지니까 반드시 외우도록 해요. 캡슐화 : 정보은닉 자바에서 정보은닉이라 하면 접근제어자(private, default, protected, public)가 생각날거에요. 접근제어자의 범위 먼저 봅시다. 접근제어자 설명 public 모두가 접근 가능 protected 상속 / 같은 패키지 내의 클래스에서 접근 가능 default 같은 패키지 내의 클래스에서 접근 가능 private 본인만 접근 가능 접근제어자를 통해 외부에서 ..
추상화
·
OOP
객체지향 4대 특성 중에 추상화 대해 알아볼게요! 스프링 입문을 위한 자바 객체 지향의 원리와 이해- 김종민 지음 을 참고했습니다! 객체 지향의 4대 특성은 캡슐화, 상속, 추상화, 다형성 이 있어요. 캡! 상추다! 라고 외우면 잘 외워지니까 반드시 외우도록 해요. 우선 4대 특성 중에 추상화를 설명하기 전에 클래스와 객체의 관계 먼저 알아봐요. 클래스와 객체 일반적으로 자바 클래스를 설명할 때 붕어빵 틀과 붕어빵으로 비유를 많이 하곤 해요. 그런데...? 클래스 객체명 = new 클래스(); 붕어빵틀 붕어빵 = new 붕어빵틀(); ??? 새로운 붕어빵틀을 만들었더니 붕어빵이 되었다라...? 뭔가 어색함이 느껴지네요. 다른 예제를 더 봐보죠. 사람은 클래스인가? 객체인가? JDragon 은 클래스인가?..
AWS 인스턴스 생성
·
Infra
AWS 인스턴스 생성에 관해 간단하게 알아볼게요! AWS VM 인스턴스 생성에 관한 포스팅을 해볼까 해요!(가입은 알아서~!) AWS 는 가입 후 12개월동안 무료로 이용할 수 있습니다. 인스턴스 시작 https://console.aws.amazon.com/ec2/ 로 들어가서 Amazon EC2 콘솔을 엽니다. 그러면 화면에 인스턴스 시작 버튼이 보일겁니다. 그걸 클릭! 클릭하면 단계 1 : Amazon Machine Image 선택이 나옵니다. 여기에서 Amazon Linux 2 AMI (HVM), SSD Volume Type 를 선택해 줍니다. 전 64비트(x86) 으로 선택했습니다. 이제 단계 2: 인스턴스 유형 선택이 화면에 보이실 겁니다. 여기에서는 기본적으로 t2.micro(프리티어 사용가능..
HTTP, HTTPS
·
Network
HTTP 클라이언트인 웹 브라우저가 서버에 HTTP를 통해 웹 페이지나 이미지 정보를 요청하면 서버는 이 요청에 응답하여 요구하는 정보를 제공해요. HTTP : 웹 브라우저와 서버간의 웹페이지 같은 자원을 주고 받을 때 쓰는 통신 규약이에요. HTTP는 자원을 주고 받을 때 텍스트로 교환을 해요. 바이너리 데이터도 아니고 단순한 텍스트를 주고 받기 때문에 누군가 네트워크에서 신호를 가로채면 내용이 노출될 위험이 있어요. 그리고 HTTP는 요청, 응답시에 통신 상대를 확인하지 않아요. 요청을 보낸 서버가 정말로 URI에 지정된 호스트인지, 응답을 반환받는 클라이언트가 정말로 요청을 시도한 클라이언트인지도 확인할 수가 없죠. HTTPS 그래서 HTTPS 가 등장하게 됐어요. HTTPS 는 HTTP의 통신을 ..
엔티티 json 변환시 생겼던 문제
·
Spring
이 엔티티를 json 형식으로 html로 보내려고 했는데 아래와 같은 오류가 났어요 ㅠㅠ. pom.xml 에 jackson-databind 도 추가해줬는데 안됐어요... ERROR 16972 --- [nio-8080-exec-2] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.http.converter.HttpMessageNotWritableException: Could not write JSON: I..
Application Context 에 대해서
·
Spring
Application Context 전체 계층 구조에서 최상단에 위치한 컨텍스트 서로 다른 서블릿 컨텍스트에서 공유해야하는 Bean 들을 등록할 수 있다. 웹 어플리케이션 전체에 적용 가능한 프로퍼티, DB연결, 로깅 기능에 이용된다. Servlet Context에 등록된 Bean은 이용할 수 없다. Servlet Context에 동일한 Bean이 있는 경우 Servlet Context의 Bean이 우선 적용된다. 하나의 컨텍스트에 적의된 AOP 설정은 다른 컨텍스트의 Bean에는 영향을 미치지 않는다. Servlet Context 서블릿에서만 이용되는 컨텍스트 다른 서블릿과 공유하기 위한 Bean들은 Application Context에 등록해놓고 사용해야 한다. DispatcherServlet은 자신..
추상클래스와 인터페이스에 대하여
·
JAVA
추상클래스 && 인터페이스 추상클래스는 abstract 라는 키워드와 함께 선언된 클래스예요. (추상 메소드를 포함할 수도 있고 하지 않을 수도 있고). 추상클래스는 인스턴스화 될 수 없지만 상속될 수 있어요. 추상클래스를 상속받는 클래스에서는 일반적으로 부모클래스에 있는 모든 추상메소드들을 구현해야 해요. 그렇지 않은 경우엔 해당 서브클래스 또한 abstract 로 선언되어야 합니다. 추상클래스와 인터페이스 차이 추상클래스와 인터페이는 인스턴스로 만들지 못해요. 메소드 구현부가 있는 메소드와 없는 메소드 모두 가질 수 있어요. 인터페이스의 모든 변수엔 public static final , 메소드에는 public abstract가 붙어있어요.(생략가능) 추상클래스엔 static, final 이 아닌 변..
기능에 대해서
·
Basic
아 피자먹고 싶다 안녕하세요.JDragon 입니다. 이전 블로그를 청산?하고...티스토리로 돌아와 글을 쓰려고 합니다. 정적블로그는 신경써야 할게 많아서... 티스토리로 컴백!! 이번 포스팅은 어떤 특정 기술에 대해서? 뭐 이런 주제가 아니고 코딩을 하는데 있어 기본적인 개념에 대해 생각해보는 글이에요. 기능이란 뭘까요 위 질문에 대답이 선뜻 나오지 않았습니다. (Method 요! Function이요! 라고 영어단어를 말 하려다 안했지요...) 어떤 작업을 하기 위한 행위? 일까요? 사실 정확하게 기능이란 무엇이다! 라고 딱 잘라서 말하지는 못할까... 생각합니다. 뭐라 생각하든 자유니까요! 하지만 자신이 가지고 있는, 사용하는 언어로 무엇인지 말은 할 수 있어야 한다고 생각합니다. 제가 생각하는 기능이..
NamedParameterJdbcTemplate
·
Spring
NamedParameterJdbcTemplate 클래스는 인덱스 기반의 파라미터가 아닌 이름 기반의 파라미터를 설정할 수 있도록 해주는 템플릿 클래스다. 인덱스 기반의 파라미터를 전달받는 물음표를 사용하지 않고 이름 기반의 파라미터를 쿼리에서 사용할 수 있도록 지원한다. @Repository public class BoardDao { private NamedParameterJdbcTemplate jdbc; // insert private SimpleJdbcInsert insertAction; public BoardDao(DataSource dataSource){ this.jdbc = new NamedParameterJdbcTemplate(dataSource); this.insertAction = new ..
미니 WAS 만들기.
·
JAVA
WAS = Web Application Server 톰캣과 같은 웹서버를 사용할 때, WAS에 대해 조금이라도 아는 것이 도움이 되기에 정리를 해봅니다. 과정은. 1) 접속 2) 요청 3) 응답 4) 연결close 4단계 과정입니다. 1) 접속 우선 main 메소드를 사용할 Main 클래스를 만들어 줍니다. public class Main { public static void main(String[] args) { MiniWAS was = new MiniWAS(); was.start(); System.out.println("was 를 시작하겠습니다~"); } } MiniWAS 클래스에서 Connector 클래스의 생성자를 이용해 포트번호를 connector 객체로 보냅니다.public class Mini..