오버로딩과 오버라이딩의 차이는 무엇인가요?오버로딩은 같은 메서드 이름을 사용하는데 매개변수의 개수나 타입이 다른 것이고,오버라이딩은 부모의 메서드를 상속받아 재정의해서 사용하는 것입니다. 오버로딩이름이 같아도 매개변수 개수, 타입, 순서를 다르게 해서 같은 이름으로도 여러 개의 함수를 정의할 수 있는 것을 말합니다.이는 프로그램의 유연성을 높이고 결과적으로 코드를 깔끔하게 하는 효과가 있으며 같은 클래스 내에서 사용합니다. 오버라이딩상위 클래스가 가지고 있는 메서드를 하위 클래스가 재정의 하는 것을 말합니다.상속 관계 클래스에서 사용되며 static, final 로 선언한 메서드는 오버라이딩이 불가능합니다. 예제 코드상위 클래스 → 하위 클래스 오버라이딩public class Animal { publ..
mybatisAlias.xml (마이바티스설정파일)typeAliases 에 package 의 name속성에 매퍼파일에서 반복적으로 사용될 패키지명을 정의해 주면 편리하다 아니면 type과 alias 속성으로 하나씩 다 지정해 주어도 된다이렇게 하면 alias 속성의 값으로 대신 쓸 수 있다 lprod_SQL.xml (매퍼파일)패키지명 생략하고 클래스명만 지정 가능하다 --> mybatisAlias.xml (마이바티스설정파일) "_"를 사용한 컬럼명을 사용 시 카멜케이스로 읽어준다ex) 테이블 컬럼명이 member_id인 경우 jsp화면단에서 이 값을 사용 시 memberId로 사용 LprodServiceImpl.java다오 대신 매퍼인터페이스를 사용한다@Servicepu..
pom.xml 에 의존 관계 정의스프링 JDBC(Java DataBase Connectivitiy) https://mvnrepository.com/artifact/org.springframework/spring-jdbc org.springframework spring-jdbc ${org.springframework-version} ${org.springframework-version} 이거는 위에 5.2.5.RELEASE 이렇게 정의가 되어있어서 버전을 가져다 쓰는 것이다 ojdbc6 (oracle java database connectivity 드라이버)https://mvnrepository.com/artifact/com.oracle.database.jdbc/ojdbc6..
회원 등록 폼에서 입력값 검증 에러 발생 시 insert 하지 않는 코드 작성했다 메서드 매개변수의 도메인 클래스에는 @Validated를 지정하고그 직후에 BindingResult를 정의한다여기에는 요청 데이터의 바인딩 오류와 입력값 검증 오류 정보가 저장된다 @PostMapping("/registerForm01Post") public String registerForm01Post( @Validated Member member, BindingResult brResult) { log.info("registerForm01Post->member : " + member); //1) true : 문제발생, 2) false : 문제없음 log.info("brResult.hasErrors() : "..
스프링 MVC는 Bean(자바빈 클래스, ArticleVO) Validation(유효성검사) 기능을 이용해 요청 파라미터 값이 바인딩된(멤버변수에 세팅된) 도메인 클래스(ArticleVO)의 입력값 검증을 한다 pom.xml에 의존성 추가해 준다https://mvnrepository.com/artifact/org.hibernate/hibernate-validator org.hibernate hibernate-validator 5.2.5.Final public class Member { @NotBlank private String userId; @NotBlank(message = "사용자명을 입력해주세요") @Size(max = 3, message = "최대 3글자까지만 작성해주세요"..