본문 바로가기

전체 글

(71)
7/8 Contoller FrameWork Spring의 구조를 만들어보자. Controller들의 공통점은 멀까? -request를 가지고논다. -viewresolver를 쓴다. 그치만 vo가 다르다. -반복적인 행위가 들어간다. 각방에서 반복적인 수행을하지말고 공통적인..? 정문에서 한번만 수행하는식으로 한다. 그 정문을 FrontController라고 칭한다. 한번만든건 고치지않는다 라는 오래된 규칙때문에 이 의존관계를 끌어야하는데 . 결합도를 낮춰야 좋은 개발이다. Handler Adapter랑 HandlerMapping 중간에있는 결합을 끊기위해 중요한 역할 FrongControlleㄱ 요청 종류 상관없이 모두 받고 뒤에있는 ㅐㅂㄱ엔드 컨트롤러는 하나의 요청만 처리해서 하나의 핸들러라고한다. 앞에서 요청을 받고 요청을 판단해서 뒷단에있는 백엔드컨트롤러로 보낸다. 작업을 ..
파일업로드 db연동 Part(3.eo) FileItem 2.점대 prodImage;//파트하나를의미함 상품의 이미지는 어디로 저장하나? 미들티어 어디에다가 상품이미지 저장하고 그 저장이미지경로가있음 -> prodImg는 진자이미지가아니고 이미지에대한 메타정보이다. -> contoller에서 1. 저장 2. 저장명을 꺼낸다. 3. 그것을 디비에다가 넣는다. part나 fileitem을 가지고 놀아야한다. https://spring.io/projects/spring-framework Spring Framework spring.io https://docs.spring.io/spring-framework/docs/current/javadoc-api/ https://docs.spring.io/spring-framework/docs/..
파일업로드 만들어보기 get 방식 body가없고 , req안의 값을 쿼리스트링의 형태로 넘기는데 파일은 못넘김 그래서 method를 반드시 post로 해야한다. **post는 body가있다. enctype="application/x-www-form-urlencoded 입력한 모든 문자열을 인코디응ㄹ해서 %로 시작하는 문자로 바꾼다는 의미 파일은 이진데이터로 넘겨야하는데 enctype을 해버리면 문자열로 넘겨버리기 때문에 안된다. enctype="multipart" -body를 여러개로 쪼개겠다. 바디를 여러개로 쪼개면 하나하나 그룹에 이름이 필요한데 그걸 part를 여러개로 만든다. part를 몇개로쪼갤거냐가 필요함 그래서 넣는 subtype이 form-data 폼태그를 통해 입력한 개수대로쪼개진다는의미 part가 독립적으로..
보안프레임워크2 MakePrincipalFilter - 인증을 구현하기위한 객체는 principal이고 거기안에는 request를 넣어줘야함 ( 근본적으로 setter를 가지고있지않아서) 그래서 adapter를 가지고 principal객체를 변경한거다. (누군가가 로그인했을때만 동작) 오늘 1. 접근제어 2. -접근제어 1.보호대상이되는 자원 필요 일부는 보호자원 일부는 비보호자원 -> 얘네를 식별 2.보호자원에대한 접근허용 , 사용자에게 역할을 줘야함 (role이 필요함) 3.롤을 가지고있는 사용자가 접근을 허용할것인지 말것인지 여부 결정 , 허가목록 안에 포함되어있으면 접근 허용 왼쪽이 보호자원 오른쪽이 ROLE 부여 ->CONTROLLER 에서 허가목록만들면 응집력이 너무 낮다. 보호정책바뀌면 모든 컨트롤러 다바꿔..
WAS와 Server의 차이? 그리고 Web Container 란? 들어가며 Servlet 을 공부하던 도중 컨테이너라는 용어가 자주 등장했는데, 컨테이너의 예로 톰캣을 있다는 글을 보았다. 나는 톰캣을 WAS로 알고 있었는데, 그럼 컨테이너와 WAS는 같은것인가? 헷갈리는 부분을 명확히 해야할 것 같아서 이에 대한 정리를 하고자 한다. Web Server란? 클라이언트의 request(요청)을 받아 정적인 컨텐츠(html, css, js)를 response(응답)하는 서버. 예) Apache, Nginx, IIS, WebtoB 등 WAS 란? Web Application Server 클라이언트의 request(요청)을 받아 DB 조회나, 어떤 로직을 처리해야하는 동적인 컨텐츠를 response(응답)하는 서버. 예) Tomcat, WebLogic, WebSphere, ..
ctrtl+F
보안 FrameWork(security principal, jasypt) private void decryptMember(MemberVO member) {//디코딩 String encodedRegno1 = member.getMemRegno1(); String encodedRegno2 = member.getMemRegno2(); String regno1 = textEncryptor.decrypt(encodedRegno1); String regno2 = textEncryptor.decrypt(encodedRegno2); member.setMemRegno1(regno1); member.setMemRegno2(regno2); } principal을 사용할려면 req을 쓸수있어야하는데 그곳이 controller이다. 그치만 req 안에 어느 메소드도 principal 을 담을 만한데가..
Filter 필터란? - 필터는 “HTTP 요청과 응답을 변경할 수 있는 재사용 가능한 코드”이다. - 필터는 객체의 형태로 존재하며 클라이언트로부터 오는 요청(request)과 최종 자원(서블릿/JSP/기타 문서) 사이에 위치하여 클라이언트의 요청 정보를 알맞게 변경할 수 있으며, 또한 필터는 최종 자원과 클라이언트로 가는 응답 (response) 사이에 위치하여 최종 자원의 응답 결과를 알맞게 변경할 수 있다. Decorating Filter Pattern 1. 필터는 비지니스 로직이 해야할일을 대신하지않으며 있어도 되지만 없어도됨 2.재사용가능한 객체 형태로 이용 16바이트 3. 필터를 필요하다면 여러개를 만들어 줌 was는 그걸로 필터체인을 형성하고, 각각의 필터는 필터순서를 가진다. 4. 데코래이팅이 가장핵..