본문 바로가기

분류 전체보기

(135)
Oracle(트리거생성,UPDATE,INSERT) 일단 트리거를 쓰는 이유, 고려할점에 대해서 구글링 해본 내용등를 보자 ! 활용 1.데이터 무결성의 강화 -전체 데이터베이스에 걸쳐 영향 받은 테이블을 연속적으로 변경함으로서 데이터 무결성을 강화하는데 사용될 수 있다. - 중복되었거나 파생된 데이터에 대해 트리거를 사용하는 것이 좋다. 2.참조 무결성의 강화 -연속적인 삭제 / 갱신이 일어날 필요가 있을 때 적절한 작업을 하도록 보장하는데 유용하다. - FOREIGN KEY, REFERENCE 제약을 사용할 수도 있다. - 자신의 오류 메시지를 정의할 수 있다. 3.업무 규칙의 설정 - 제약에 의해 표현될 수 있는 것보다 복잡한 제약을 표현할 수 있다. 4.감사기능의확장 -상세한 변경 내역을 추적하려면, 트리거를 적용하거나 Log Miner를 이용해 아..
Oracle(프로시저) 매게 변수 없는 프로시저 CREATE OR REPLACE PROCEDURE MEMBER IS # 사용할 변수선언 BEGIN #실행구간 PL/SQL ,EXCEPTION INSERT INTO TBL_MEMBER(MEMBER_NAME,MEMBER_PASSWORD)VALUES('TEST','1'); END MEMBER; 실행구문 EXECUTE MEMBER; 실행하게 되면 MEMBER_NAME 과 MEMBER_PASSWOR에 'TEST','1' 이 저장될것이다. 매게 변수 있는 프로시저 CREATE OR REPLACE PROCEDURE MEMBER (MEMBER_NAME IN VARCHAR2, MEMBER_PASSWORD IN VARCHAR2, MEMBER_ROLE IN VARCHAR2, MEMBER_EMAIL ..
Oracle(테이블 생성,제약조건,시퀀스) 테이블 생성 CREATE TABLE 테이블명 ( 컬럼명 타입(길이), 컬럼명 타입(길이)) . . . 컬럼명 타입(길이)) ); CREATE TABLE TBL_MEMBER( MEMBER_NAME VARCHAR2(30), MEMBER_PASSWORD VARCHAR2(50), MEMBER_ROLE VARCHAR2(30), MEMBER_EMAIL VARCHAR2(60), MEMBER_ADDRES VARCHAR2(100), MEMBER_AGE VARCHAR2(60), ); 컬럼명과 타입명, 길이만 설정했지만 NOT NULL을 추가적으로 설정할 수 있다. 위 처럼 NOT NULL을 적지않으면 디폴트로 NULL 가능이 설정된다. 테이블 생성후에도 NOT NULL 조건과 제약조건을 추가 할수 있고 삭제 할수 있다. ..
SpringSecurity(AccessDenied) 인증거부처리 인증은 성공했으나 서버자원에 접근하려 했을때 사용자의 권한이 서버자원에 접근가능한 권한이랑 일치하지 않을때 인가예외가 발생하게되는데 인가예외는 인증필터가 처리 하는게 아니고 FilterSecurityInterceptor 에서 인가 예외를 처리한다. 인가예외가 발생하게 되면 이필터가 AccessDeniedException에서 예외를 받아서 다시 예외를 throw 하게 되는데 이 예외를 어디서 받냐면 AccessDeniedException을 받아서 accessDeniedHandler를 호출한이후에 예외를 처리 하게되어 있다 중요한건 인증시도중에 발생하는 인증예외는 인증예외처리하는 필터가 받아서 처리를 하고 인가예외는 인가예외를 처리하는 필터에서 받아서 처리한다 생각해보면 그래서 인증에 성공하고나서 인증객체를..
SpringSecurity(인증실패핸들러) SpringSecurity 에서 기본적으로 제공하는 AuthenticationFaulureHandler 인터페이스를 구현 해도 된다 필자는 SpringSecurity 에서 제공하는 SimpleUrlAuthenticationFailureHandler 를 상속받아서 처리해보고자 한다. #onAuthenticationFailure 메소드를 @Override를 한다 파라미터 값들을 보면 AuthenticationException 인증예외를 전달하고 있다. 여기 인증예외는 인증을 검증할때 인증에 실패하게되면 예외를 발생하게되는데 일반적으로 Provier UserDetails 에서 사용자의 아이디가 없거나 패스워드 검증이 실패하면 인증필터가 받아서 Failur 핸들러를 호출해서 실패처리를 하게된다. public v..
ERP가 과연 무엇인가 무엇이냐 말이다 면접을 보면서 ERP 개발하는곳서 오늘 면접을 봤지만 솔직하게 ERP개발이 어떤걸 정확하게 개발하고 어떤걸 추구 하는지 잘 모르겠다 그래서 일단 구글링해서 상세하게 한번 찾아본걸 포스팅 해보겠다 ! 일단 나무위키 에서 말하는 ERP 가 무엇인지 한번 보자! 1. Enterprise Resource Planning PC의 발달로 인해 인사관리, 회계관리, 생산관리, 조달(물류)관리등 회사 내부의 관리가 필요한 모든 부분의 시스템이 통합되면서 이것이 가능해졌다. 이렇게 될 경우 부서간의 정보시스템이 다를 때 일어나는 비효율성은 줄어들고 궁극적으로 회사의 자원 관리를 더 효율적으로 할 수 있다는 이점이 있다. 초저가 ERP로는 메가박스 에서 영화관 광고를 많이 하는 경리나라가 있다. 경리나라는 아파트 관리사무..
SpringController(Exception) 처리 Controller를 작성할 때 예외 상황을 고려하면 처리헤야 하는 작업이 엄청나게 늘어난다 스프링 MVC 에서는 이러한 작업을 다음과 같은 방식으로 처리할수 있다. @ExceptionHandler 와 @ControllerAdvice를 이용한처리 @ResponseEntity를 이용하는 예외 메세지 구성 @ResponseEntity는 나중에 따로 작성할예정이고 일단 @ExceptionHandler @ControllerAdvice를 보자 @ControllerAdvice @ControllerAdviec는 AOP를 이용하는 방식이다. AOP에 대해서는 포스팅한적이 있지만 간단히 언급하자면 핵심적인 로직은 아니 지만 프로그램에서 필요한 '공통적적인 관심사'는 분리하자는 개념이다. Controller를 작성할때는 ..
SpringSecurity(인증 성공 핸들러) Form 로그인 인증필터가 인증성공후에 핸들러를 호출해서 후속작업들을 처리 하는 과정을 하고자 한다 AuthenticationSuccessHandler 인터페이스를 구현해서 클래스를 만들수가 있고 SpringSecurity에서 이미 만들어진 구현체가 있는데 그 구현체를 상속해서 AuthenticationSuccessHandler타입의 클래스를 만들어서 인증 AP에 설정할수 있다. SpringSecurity 에서 만들어진 구현체를 상속받아서 진행 하겠다. 기본 구현체중에서 SimpleAuthenticationSuccessHandler를 상속해서 호출할수 있도록 구현해보겠다. onAuthenticationSuccess @Override를 해서 여러가지 후속 작업들을 처리 할수 있다. 파라미터로 request..