Impersonator 자신의 정체를 속여서 요청을 보내는 기법 Upgrader 자신의 등급을 속이는 기법 Eavesdropper 요청을 중간에 훔쳐보는 기법 서블릿보안 4요소 인증(Authentication) 인가(Authorization) 비밀보장(Confidentiality) 데이터무결성(Data Integrity) 인증과 인가가 좀 알쏭달쏭한데 인증은 일단 로그인 자체라고 생각하고 인가는 로그인 후 사용자의 등급이라고 생각하면 될듯하다. 아이디와 패스워드를 입력후 로그인하는것은 인증. 로그인 후 관리자, 특별회원, 우수회원, 일반회원의 등급을 정하는것은 인가. 인증 인증은 4가지 방식을 지원하는데 BASIC, DIGEST, CLIENT-CERT, FORM 방식이 있다. BASIC HTTP 표준 D..
1.ServletContextListener -애플리케이션이 배포, 종료되는 순간 이벤트 발생 Spring을 사용하다보면 web.xml에 org.springframework.web.context.ContextLoaderListener 라고 작성된걸 많이들 봤을것이다. 저기에 명시된 ContextLoaderListener가 ServletContextListener를 확장한(구현한) 클래스이며 애플리케이션이 배포되는 순간 Spring Bean들을 생성하는것이다. 2. ServletContextAttributeListener -서블릿 컨텍스트에 속성을 추가, 수정, 삭제하는 순간 이벤트 발생 3. HttpSessionListener -세션이 생성, 소멸하는 순간 이벤트 발생 4. ServletRequestLi..
이클립스에서(굳이 IDE툴이 아니라도) 톰캣(더 정확히는 WAS)을 실행시키면 여러 서버설정 xml파일들이 읽힘. 이것저것 파일들이 있겠지만 사실 개발자에게 가장 중요한 web.xml도 이때 와스가 읽게됨. WAS가 구동되면서 프로젝트에 존재하는 서블릿들도 JVM에 로딩됨. *클래스가 로딩되는거지 서블릿 객체생성은 아님. *WAS에 따라서 이때 서블릿 객체를 생성하는 경우도있고 로딩만 해놓고있다가 첫 요청이 들어오면 그때 생성하는 경우도있음 WAS가 구동되면서 ServletContext 객체를 생성함. ServletContext 객체는 모든 서블릿이 공유하는 객체임. web.xml에 해당 context 객체에 저장할 파라미터를 정의할 수 있는데 web.xml에서는 기본형변수밖에 정의할 수 없음. 물론 굳..
InputStream in = null; OutputStream out = null; File file = null; try{ file = new File(path, newName); in = new BufferedInputStream(new FileInputStream(file)); out = new BufferedOutputStream(response.getOutputStream()); oldName = URLEncoder.encode(oldName, "UTF-8").replaceAll("\\+", " "); request.setCharacterEncoding("UTF-8"); response.setContentType("application/octet-stream"); response.setHead..
public fileUpload(@RequestParam("file")MultipartFile file){String filename = file1.getOriginalFilename(); String suffix = filename.substring(filename.lastIndexOf(".") + 1); String oldName = filename.substring(0, filename.lastIndexOf(".")); String newName = String.valueOf(System.currentTimeMillis()); File path = new File("경로"); FileOutputStream out = null; try{ byte[] fileData = paramFile.getByte..
WAS, DBMS 서버 등과 연결되는 Socket 관련 프로그램에서 다음과 같은 오류 메세지가 자주 발생한다. Connection reset by peer, Connection reset, Broken Pipe 이런 에러가 발생해도 정상적으로 잘 서비스되기 때문에 별로 관심을 안가졌는데 직접 데몬 서비를 만들고 관련 클라이언트를 만들다 보니 어떤 경우에 이런 에러가 발생하는지 알아야지만 대처가 가능할 것 같아서 찾아 보았다. - java.net.SocketException: Connection reset by peer: socket write error 원인: write 시 상대방 socket close 된 경우 - java.net.SocketException: Connection reset 원인: re..
출처 : http://blog.naver.com/PostView.nhn?blogId=napsis&logNo=140156257733&parentCategoryNo=8&viewDate=¤tPage=1&listtype=0&from=postList java.lang.IllegalStateException: getOutputStream() has already been called for this responseSTATUS : Closed Scenario : jsp to generate a report and on click of a button download the report xls from the server. Code in the jsp is as follows. response.setCont..
- String.valueOf() - 파라미터가 null 이면 문자열 null을 만들어서 담는다. - Casting((String) aa) - 대상이 null이면 당연하게 NullPointerException - 만약 Object 에 담긴 값이 String 이 아니라면 ClassCastException - "".toString() - 당연하게 . 으로 사용하는 만큼 대상 값이 null 이면 NullPointerException - Object 에 담긴 값이 String 이 아니어도 출력[출처] [Java] String : valueOf toString Casting 의 차이|작성자 고민덩어리
- Total
- Today
- Yesterday
- clean code
- java
- http
- OOP
- backend개발환경
- DesignPattern
- Jackson
- programming
- servlet
- go-core
- MySQL
- frontcode
- Design Pattern
- javascript
- JPA
- frontend개발환경
- toby
- spring cloud
- code
- 정규표현식
- JavaScript Core
- Git
- db
- java8
- EffectiveJava
- mariadb
- TEST
- Kotlin
- Spring
- generics
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |