본문 바로가기

분류 전체보기

(426)
[iOS] Table View 구현 테이블 뷰 구현 이론 iOS에서 가장 많이 사용하는 패턴 중 하나가 delegate 패턴이다. 이를 이해하기 위해 큰 도움이 된다! 테이블 뷰 구현은 보통 5단계로 구분된다. 테이블 뷰 배치 프로토타입 셀 디자인 & Cell Identifier 지정 데이터 소스, 델리게이트 연결 데이터 소스 구현 델리게이트 구현 데이터소스는 UITableViewDataSource 프로토콜을 채택한다. 이는 테이블 뷰의 데이터를 표시하기 위한 다양한 메서드가 선언되어있다. 테이블 뷰는 어떤 데이터를 어떠한 디자인으로 어떻게 표현해줄지 모른다. 이를 위해 UITableViewDataSource 프로토콜에 선언해놓았다. // MARK: - Table view data source override func tableView(..
[iOS] Delegate Pattern [Design Pattern] Delegate Pattern 토이프로젝트 진행중 Delegate Pattern에 대한 이해가 부족하다고 생각되어 다시 정리한다. 딜리게이트 패턴의 코드가 어떻게 적용되고 실제 앱에서 어떠한 방식으로 실행되는지 확인하는것이 중요하다! Delegate Pattern Delegate Pattern 을 이해하기 이전에 Protocol에 대해서 먼저 익히도록 한다. Protocol Basic Swift의 강력한 기능중 하나인 Protocol. 이 프로토콜이란게 무엇인지 알아보도록 한다. 애플 공식문서에 정의된 프로토콜은 아래와 같다. A Protocol defines a blueprint of methods, properties, and other requirements that ..
[JSP] Action Tag Action Tag Action Tag란? JSP 페이지 내에서 어떠한 동작을 하도록 지시하는 태그이다. 예를 들어 페이지 이동, 페이지 include 등등이 있다. 우선은 'forward', 'include', 'param' 태그에 대해 알아보자. forward, include, param 태그 forward forward태그는 이름 그대로 현재의 페이지에서 다른 특정페이지로 전환할 때 사용한다. main.jsp 페이지 입니다. include 현재 페이지에 다른 페이지를 삽입할 때 사용한다. sub.jsp 페이지 입니다. 다시 sub.jsp 페이지 입니다. param forward 및 include 태그에 데이터 전달을 목적으로 사용되는 태그이다. 이름과 값으..
[JSP] Request & Response 객체 그리고 지시자 지시자, Request & Response 객체 지시자 JSP 페이지의 전체적인 속성을 지정할. 때 사용한다. page, include, taglib이 존재하며, 형태로 사용한다. page : 해당 페이지의 전체적인 속성을 지정 include : 별도의 페이지를 현재 페이지에 삽입 taglib : 태그 라이브러리의 태그 사용 page 지시자 페이지의 속성을 지정할 때 사용하며 주로 사용되는 언어 지정 및 import 문에 많이 사용한다. ex) page.jsp include.jsp page test2 taglib 지시자 사용자가 만든 tag들을 태그 라이브러리라고 부르며, 이러한 태그 라이브러리를 사용하기 위해 taglib 지시자를 사용한다. uri 및 prefix 속성이 존재하며, uri는 태그 라이브..
[JSP] Servlet Lifecycle & JSP 태그와 동작의 이해 Servlet Servlet : 웹 프로그래밍에서 클라이언트의 요청을 처리하고 그 결과를 다시 클라이언트에게 전송하는 Servlet 클래스의 구현 규칙을 지킨 자바 프로그래밍 기술 간단히 말하여 Servlet이란 자바를 사용하여 웹을 만들기 위해 필요한 기술이다. 클라이언트가 어떠한 요청을 하면 그에 대한 결과를 다시 전송해주어야 하는데, 이러한 역할을 하는 자바 프로그램이 servlet이다. 일반적인 웹 서버는 정적인 페이지만 제공한다. 그렇기에 동적 페이지를 제공하기 위해서 웹 서버는 다른 곳에 도움을 요청하여 동적인 페이지를 작성해야 한다. 여기서 웹 서버가 동적 페이지를 제공할 수 있도록 도와주는 어플리케이션이 servlet이다. 클라이언트에서 servlet 요청이 들어오면 서버에서는 servle..
Servlet & doGet() & doPost() 그리고 MVC 패턴 Servlet 서블릿은 HttpServlet라는 클래스를 상속받는다. 서블릿은 java언어를 사용하여 웹 프로그램을 제작하는 것. Servlet(interface)
웹 취약점 진단 관련 끄적임 웹 취약점 진단 관련한 끄적임 1. 단순 정보 노출 단순 정보 노출 취약점은 말 그대로 민감한 정보가 노출되는 것으로 개발 과정의 코멘트 (소스 코드 내 주석) 또는 에러 메시지 등에서 의도하지 않은 정보가 노출되는 취약점을 의미한다. 판단기준은 아래와 같다. 에러 페이지에 웹 서버 또는 WAS 버전 정보, 절대경로, 에러메시지 노출 HTML 소스보기를 통해 확인시, 주석 형태로 남아있는 테스트용 아이디/패스워드, 관리자 페이지 URL 정보 존재할 경우 HTTP 헤더를 통한 서버관련 정보 노출 등과 같은 기준으로 취약 상태를 판단하며 파악할 수 있다. 실제 존재하는 페이지에서 어플리케이션명을 없애고 폴더명만 기재하여 접속해보고, 어플리케이션명에 1을 적고 접속해보면 403, 404 등의 HTTP Stat..
Web 기본 지식 웹이란 무엇인가? 웹 해킹을 포함한 다양한 분야에서의 해킹은 본래의 의도와는 다른 행위를 발생시키는 것을 의미한다. 이러한 의도치 않은 행위를 발생시키기 위해서는 설계 또는 운영의 약점을 찾을 수 있어야 한다. 물론 이를 위해서는 해당 시스템에 대한 설게자 또는 운영자보다 더 높은 이해도를 가지고 있어야 한다. 인터넷상의 서비스 중 HTTP를 이용하여 정보를 공유하는 통신 서비스를 웹, 서비스를 제공하는 대상을 웹 서버, 서비스를 받는 사용자를 웹 클라이언트 라고 부른다. 초기 웹은 저장된 문서의 내용을 출력해 사용자에게 제공하는 간단한 서비스였다. 이것이 시간이 지남에 따라 발전하고 적응하며 사용자의 입력과 입력에 따른 기능 수행이 추가되고 업무, 금융, 쇼핑 등 다양한 분야에서 사용할 수 있도록 발전..