JAVA 질문 정리

채상혁·2022년 5월 14일
0
  1. Spring Security 사용 어떻게 했는지?
    웹 보안의 3요소인 인증, 권한 인가, UI처리(에러 화면처리) 를 위해 사용했습니다.
    개발자가 직접 처리하던 보안 처리과정을 스프링 프레임워크에서 제공하는 스프링 시큐리티를 사용하여 쉽게 처리할 수 있습니다.

  2. SI가 어렵다고 알려져 있는데 왜 그런지 아는지?
    팀단위의 파견이 아닌 개인 파견 과 경력 뻥튀기가 있는걸로 알고 있습니다.

  3. 간단한 게시판 구현 시 예상 소요 시간은?
    한시간 반 정도 걸릴 것 같습니다.

  4. Spring Framework 사용 이유는?
    DI, AOP, POJO, MVC구조 등 틀에 맞추어서 개발할 수 있으며 일정한 품질을 보장할 수 있습니다.

  5. 서버 어떤 것 사용해 봤는지?
    AWS와 Oracle Cloud를 사용해 봤습니다.

  6. 의존성 주입(DI)하기 위한 어노테이션 종류?
    @Autowired, @Qualifier, @Inject, @Resource가 있습니다.

  7. ERP의 뜻이 무엇인가?
    전사적 자원 관리라는 뜻으로 재무, HR, 제조 등 비즈니스 전반의 운영을 지원합니다.

  8. DDL, DML, DCL이 무엇인가?
    DDL은 Data Determination Language로 데이터 정의어 입니다. 생성,수정,삭제 를 담당하고
    create, alter, drop등이 있습니다.
    DML은 Data Manipulation Language로 데이터 조작어 입니다. 테이블에 있는 행과 열을 조작하는 언어 입니다. SELECT, INSERT, UPDATE, DELETE 등이 있습니다.
    DCL은 Data Control Language로 데이터 제어어 입니다. 데이터베이스에 접근하거나 권한을 주는 역할을 하는 언어입니다.
    GRANT REVOKE COMMIT등이 있습니다.

  9. DTO와 VO의 차이점이 무엇입니까?
    Data Transfer Object와 Value Object로 VO는 사용 되는 값이 객체로 표현되며 값 변경이 없습니다. DTO는 데이터의 전송을위한 객체이며 비즈니스 로직까지 담아서 사용합니다.
    (DTO는 계층간의 데이터를 전송하기 위한 객체로써, getter/setter를 사용하여 보내는 사람은 setter를 사용하여 값을 담고, 받는 사람은 getter를 사용하여 값을 꺼내 쓴다. 이때 값의 변조를 막고 싶다면 생성자로 불변 객체로 만들어 버리면 된다. 또한 DTO의 특성상 데이터 전달만은 목적으로 사용하기 때문에 getter/setter를 제외한 다른 로직이 필요가 없다.

VO의 경우 값 그 자체를 나타내는 객체로써, 핵심은 필드 값이 같다면 두 객체를 같은 객체로 본다는 것이다. 이때 당연하게도 주소값을 비교하는 경우의 문제점을 위해서 hashcode()와 equals()를 재정의하여 필드 값이 같다면 같은 객체로 인식될 수 있도록 해주어야 한다.

출처: https://maenco.tistory.com/entry/Java-DTO와-VO의-차이 [Steady and right])

  1. private와 protected의 차이점은?
    private는 같은 클래스 내에서만 접근가능하며, protected는 같은 패키지와 자손클래스에서 접근이 가능합니다.

  2. extends와 implements의 차이점은?
    extends는 클래스를 확장하는 것이고 implements는 인터페이스를 구현하는 것이다.

  3. abstract와 interface의 차이점은?
    존재목적이 다릅니다. 추상 클래스는 그 추상 클래스를 상속받아서 기능을 이용하고, 확장시키는 데 있습니다. 반면에 인터페이스는 함수의 껍데기만 있는데, 그 이유는 그 함수의 구현을 강제하기 위해서 입니다.

0개의 댓글