본문 바로가기
오버로딩(Overloading)과 오버라이딩(Overriding) 개념 오버로딩 (Overloading) 확장 같은 이름 함수(메소드)를 여러개 정의하고, 매개변수의 유형과 개수를 다르게하여 다양한 유형의 호출에 응답할 수 있게 하는 것 기존에 없는 새로운 메소드를 추가하는 것 -메소드 이름이 같아야함 -매개 변수의 개수 & 타입이 달라야함 -리턴 타입 상관 없음 -같은 클래스 내에서 적용 사용하는 이유: 1. 같은 기능의 메소드를 하나의 이름으로 사용할 수 있다. 2. 메소드 이름을 절약할 수 있다. 오버라이딩 (Overriding) 재정의 상위 클래스로부터 상속받은 메서드를 하위 클래스가 재정의해서 사용하는 것 -매개 변수 & 타입이 동일 -리턴 타입 동일 -상속 관계에서 적용 -상위 클래스의 static 메소드는 클래스의 속하는 메소드이기 때문에 오버라이드 되지 않음 .. 2022. 11. 13.
GET POST 차이 / forward redirect 차이 GET POST차이 get은 url에 데이터가 노출되나 post는 노출 되지 않는다. get은 데이터의 위치가 header이고, post는 body이다. get은 중요한 정보를 다루면 안된다. (파라미터에 다 노출이 되어있기 때문에) get은 길이 제한이 있다. ex 게시물 선택 post는 데이터를 전송할 떄 길이 제한이 따로 없어 용량이 큰 데이터를 보내거나 보안이 필요한 부분에많이 사용한다. ex 게시판 글 등록 Forward Redirect차이 Forward : client가 웹 브라우저에서 요청 시 forward는 client에게 보여지지 않는 페이지에서 작업을 하게된다. 그러므로 client페이즤 이동을 모르게 되며, url도 변경 되지 않는다. client가 요청을 하게 될 때 생성되는 객체는.. 2022. 11. 12.
조인이란? 유니온과 조인의 차이점 조인 두 개 이상의 테이블을 서로 연결하여 데이터를 검색할 때 사용하는 방법 조인을 왜 사용하나 -여러 테이블의 데이터를 조합하고 처리하기 위해 inner join && outer join inner join : 조인이 되는 키 값을 기준으로 교집합 outer join : 정상적으로 조인 조건을 만족하지 못하는 행들을 보기 위해 사용된다. 즉, 어떤 집합을 기준으로 조인되는 다른 집합과의 연결에 실패했더라도 그 결과를 추출하는 조인을 말한다. outer join종류 -LEFT OUTER JOIN -RIGHT OUTER JOIN -FULL OUTER JOIN natural join 두 테이블 간의 동일한 이름을 갖는 모든 컬럼들에 대해 등가조인(EQUI JOIN)을 수행한다. self join 하나의 테이.. 2022. 11. 12.
RESTful API 이해 RESTful API 두 컴퓨터 시스템이 인터넷을 통해 정보를 안전하게 교환하기 위해 사용하는 인터페이스 REST Representational State Transfer(REST)는 API 작동 방식에 대한 조건을 부과하는 소프트웨어 아키텍처 처음엔 인터넷 같은 복잡한 네트워크에서 통신을 관리하기 위해 지침으로 만들어졌다 REST기반 아키텍처를 사용해 대규모 고성능 통신을 안정적으로 지원할 수 있다 API개발자는 여러 아키텍처를 사용해 API를 설계할 수 있다 REST 아키텍처 스타일을 따르는 API를 REST API라고 한다. REST 아키텍처를 구현하는 웹 서비스를 RESTful 웹 서비스라고 한다. RESTful API라는 용어는 일반적으로 RESTful 웹 API를 나타낸다. 하지만 REST A.. 2022. 11. 10.
BindingResult 와 rejectValue 스프링 회원가입 유효성 검사 스프링 프레임워크로 사용자 회원가입과 로그인을 컨트롤할 controller 코드중에서 사용한 주요 메소드를 간략히 정리했다. @PostMapping("/signup") // Post: 회원가입 진행 public String signup(@Valid UserCreateForm userCreateForm, BindingResult bindingResult) { if (bindingResult.hasErrors()) { return "signup_form"; } if (!userCreateForm.getPassword1().equals(userCreateForm.getPassword2())) { bindingResult.rejectValue("password2", "passwordInCorrect", "📌패스.. 2022. 11. 3.