-
[JSP] JSP 페이지는?Legacy/JAVA 2015. 9. 7. 22:12
웹 컨테이너는 JSP 페이지 전체를 서블릿 클래스의 소스 코드로 변환하고, 그 다음에 그 소스 코드를 컴파일 한다.즉 다음과 같은 과정을 거친다. JSP 페이지 -> 서블릿 클래스의 소스 코드 -> 서블릿 클래스의 클래스 파일 -> 서블릿 객체 -> 서블릿JSP로 작성한 페이지가 서블릿 클래스로 변환된 코드는 work\Catalina\localhost에서 확인할 수 있다. JSP 문법에는 3가지 형태가 있다. , ${ }, 나 와 같은 XML 태그 형태이다.
-
[VM] Not enough physical memory ... 에러 해결법Legacy/문제해결 2015. 9. 3. 19:54
출처 - http://kit2013.tistory.com/203 VMware Workstation 버전은 10.0.2 build-1744117이다. VM(Virtual Machine)을 부팅하려다가 갑자기 아래와 같은 에러가 떳다. Not enough physical memory is available to power on this virtual machine with its configured settings.... 최근에 Windows 업데이트를 한 데다가 드라이버 업데이트까지 한 상태라 다시 복원시켜도 안되길래 구글링했더니 해결책 여러가지가 나와있었다. 다음은 해결책 리스트이다. 첫 번째 해결법 Run as Administrator. VMware Workstation이 설치된 디렉토리로 가서 vmw..
-
[Web] 웹 페이지 한글 깨짐Legacy/문제해결 2015. 8. 27. 11:15
처음 HTML을 공부하면서 HTML 문서 안에 한글을 넣었더니 한글이 깨지는 경우가 많이 발생합니다.이 문제는 브라우저에서 데이터를 읽는 방식과 우리가 저장한 방식이 다르기 때문입니다.자세한 내용은 다음 링크를 참조하세요. euc-kr과 UTF-8의 차이위 링크에서 문제 해결을 위해 주목할 것은 이것입니다. euc-kr로 작성된 한글은 UTF-8로 읽을 수 있습니다. 하지만 그 반대는 안됩니다.처음 HTML 페이지를 만드는 사람은 ANSI로 페이지를 저장하게 되는데요, 이 ANSI가 EUC-KR을 지원하고 있습니다. ANSI로 저장하게 되는 이유는 메모장이 기본적으로 ANSI로 저장하도록 설정되어있기 때문인데요, 저장할 때 이것을 바꿔줄 수 있습니다. ANSI에서 UTF-8로 바꿔주면 됩니다. UTF-8..
-
[Web] 웹 서버와 웹 어플리케이션Legacy/Web 2015. 8. 26. 22:25
웹 서버는 웹 브라우져의 URL 요청에 의해 HTML문서를 제공하는 역할을 한다.하지만 웹 페이지를 동적으로 구성하기 위해서는 웹 서버만 필요한 것이 아니다.동적으로 웹 페이지를 구성하기 위해서는 웹 서버뿐만 아니라 웹 어플리케이션의 도움이 필요하다.웹 어플리케이션은 요청에 대한 HTML문서를 생성해서 웹 서버에게 보내준다.(CGI의 경우는 웹 서버와는 독자적으로 움직이지만)보통의 경우 웹 어플리케이션은 웹 서버의 모듈 형태로 존재한다. 웹 서버로 들어온 요청을 웹 서버가 HTML문서라면 바로 응답을 해주지만,PHP, JSP같은 페이지가 요청된 경우 그에 맞는 웹 어플리케이션을 호출한다. 그리고 그 웹 어플리케이션이 만들어낸 결과를 다시 웹 서버가 받아서사용자에게 보내주게 된다.
-
[JSP] JSP(Java Server Pages)와 자바 서블릿(Java Servlet)Legacy/JAVA 2015. 8. 26. 22:10
참고 - 뇌를 자극하는 JSP & Servlet, 위키백과 JSP와 서블릿은 둘 다 동적으로 HTML 문서를 생성하는 기술이다.JSP는 HTML 문서 안에 Java 코드를 포함하고 있는 반면,자바 서블릿은 자바 코드 안에 HTML을 포함하고 있다. 이 둘 중 JSP가 더 선호되고 있지만, JSP는 서블릿을 기반으로 하는 기술이기 때문에 서블릿에 대해서도 알아야 한다. 서블릿에 대해,서블릿은 자바를 기반으로 하는 웹 어플리케이션 프로그래밍 기술이다. 이 기술에서는 자바 클래스 형태로 웹 어플리케이션을 작성해야 하는데, 그 클래스를 서블릿 클래스라고 한다. 이 서블릿 클래스를 작성할 때는 지켜야할 규칙이 있다. (참고 - 서블릿 규격서(Servlet Specification)) 첫째, 서블릿 클래스는 jav..
-
SQL Injection 공격시 공백 문자 필터링 우회 문자들Legacy/Web Hacking 2015. 7. 22. 02:17
출처 - http://binaryu.tistory.com/31 SQL Injection 공격시 공백 문자 필터링시 우회 방법 1. Tab : %09 - no=1%09or%09id='admin' 2. Line Feed (\n): %0a - no=1%0aor%0aid='admin' 3. Carrage Return(\r) : %0d - no=1%0dor%0did='admin' 4. 주석 : /**/ - no=1/**/or/**/id='admin' 5. 괄호 : () - no=(1)or(id='admin') 6. 더하기 : + - no=1+or+id='admin'
-
IP MasqueradingLegacy/Network 2015. 7. 19. 04:05
출처 - http://nsinc.tistory.com/100IP Masquerade(또는 MASQ, IPMASQ)란 리눅스의 NAT(Network Address Translation) 기능으로써 내부 컴퓨터들이 리눅스 서버를 통해서 인터넷 등 다른 네트워크에 접속할 수 있도록 해주는 기능입니다.내부 컴퓨터들이 생성한 모든 네트워크 요청은 MASQ를 통해서 리눅스 서버의 외부 공인IP로 변환되어 인터넷에 연결되기 때문에, 외부에서는 리눅스 서버의 IP만 알 수 있을 뿐, 내부 컴퓨터의 존재를 전혀 알 수 없습니다. 이는 높은 보안성이라는 장점을 제공하지만, 반면에 외부에서 먼저 내부컴퓨터와 통신을 시도할 수 없기 때문에 상당한 제약으로 작용할 수 있습니다.이러한 제약은 포워딩(iptable 이용)을 통해서..
-
증감연산자 i++와 ++i의 차이Legacy/General 2015. 7. 17. 14:08
for 루프를 사용하다보면 자주 사용하게 되는 변수 i이 i 변수에 1을 더하는 i++와 ++i는 서로 차이가 있다.결론부터 말하면 ++i가 더 성능이 좋다고 할 수 있다.++i는 내부적으로 다음과 같이 동작한다.1. i의 값을 1 더한다.2. i의 값을 반환한다. i++는 내부적으로 다음과 같이 동작한다.1. i의 현재 값을 보관한다. (현재 실행되는 명령문에서는 이 보관된 값이 사용되어야 하니까)2. i의 값을 1 더한다.3. 보관했던 값을 반환한다. 2동작을 수행하는 것과 3동작을 수행하는 것(i++은 ++i에 보관하는 과정이 추가된 것이므로)은 많은 경우 성능 차이를 가져온다.i++와 ++i는 현재 행에서 사용되는 값이 원래의 값을 사용하는가 1이 더해진 값을 사용하는가의 차이도 존재하지만for(..