본문 바로가기

교육

(93)
[Servlet]상태정보 유지 1. ServletContext웹 어플리케이션 시작 시 생성웹 어플리케이션 내릴 때 제거웹 어플리케이션 단위init()함수에서 servletconfig.getServletContext()service()함수에서 this.getServletContext()servletContext 변수web.xml에서 선언파라미터 이름파라미터 값 변수 추출sc.getInitParameter("파라미터이름");웹 어플리케이션 단위 정보 공유sc.setAttribute("이름",값);sc.getAttribute("이름");2. HttpSession클라이언트가 처음 접속 시 생성클라이언트가 접속 종료 시 제거Session ID가 삭제될때브라우저가 종료될 때invalidate();호출 시유효시간이 경과되었을 때클라이언트 단위클라..
[Servlet] 중요 파일들 의미와 위치 1. 웹 어플리케이션구조루트 디렉토리WEB-INFlib컴파일된 .jar파일들이 위치classes컴파일된 .classes파일들이 위치web.xml서버가 올라갈 때 실행여러 환경설정을 할 수 있음실행 순서최초 실행 시메모리로딩서블릿 객체 생성ServletConfig 객체 생성init(ServletConfig)최초 실행이 아닐 시HttpServletRequest, HttpServletResponse 객체 생성service(req,res) 실행서버가 내려갈때destroy()실행서블릿 등록 법web.xml이름풀패키지명이름/사용할 이름annotation클래스 위에 @WebServlet("/사용할 이름");요청 방식에 따른 실행doGet(req,res);get방식으로 호출 했을 때doPost(req,res);post..
[Servlet&JSP] 개발 환경 구축 1. JDK설치www.oracle.com/index.htmlJava SEJDK 다운로드환경 변수 설정JAVA_HOME내컴퓨터 오른쪽 클릭 후 설정고급 시스템 설정고급탭->환경변수시스템변수->새로 만들기JAVA_HOME, jdk 경로 입력Path설정시스템 변수의 Path 더블클릭맨 앞에 %JAVA_HOME%\bin; 입력맨 앞에 입력하는 이유path는 맨 앞부터 찾기 때문2. WAS설치톰캣 설치http://tomcat.apache.orgJDK와 맞는 버전 설치3. 이클립스 설치www.eclipse.orgJAVA EE에 맞는 것 다운로드dynamic web project로 생성target runtime다운받은 tomcat 버전 설정톰캣 경로 설정
[Servlet&JSP] 기본 배경 지식 1. 자바 개발 플랫폼Java SE(Standard Edition)데스크탑, 서버, 임베디드JDK(Java Development Kit)JVM(Jave Virtual Machine)과 컴파일러, 디버거, 어플개발 도구들 포함JRE + Tool, Tool API들JRE(Java Runtime Environment)JVM과 핵심적인 클래스들과 지원파일만 포함Java EE(Enterprise Edition)SE에서 웹 서버 역할 추가컨테이너등을 표준화JSP, Servlet, EJB, JDBC, JNDI, JTA, EJB등등WAS(Web Application Server)JAVA EE 스펙에 따라 제품으로 구현톰캣오픈소스아파치제우스한국제품티맥스 소프트Java ME(Micro Edition)모바일, 셋탑박스, P..
[10일차][dp2] 4개의 수 - 문제 설명3개의 숫자를 이용해 4번째 숫자를 만족하는 경우의 수를 구하기1,2,3이 주어지고 4를 만족하려면1+1+1+11+1+22+1+11+2+12+21+33+1위와 같이 총 7가지가 있다.- 입력1 // 테스트 케이스1 2 3 4 // 1,2,3이 주어지고 4를 만들기- 출력#1 7 // 테스트케이스, 4번째 숫자를 만드는 중복순열의 경우의 수- 입력 예시3 1 2 3 4 1 2 3 7 1 2 5 15- 출력 예시#1 7 #2 44 #3 1843- 코드#include "stdio.h" int input[3];int goalSum;int numOfCombination[21]; int main(int argc, const char * argv[]) { int T; scanf("%d", &T); for..
[10일차][dp2] 행렬의 곱셈시 최소 곱셈 수 구하기 - 문제 설명A1부터 AN까지의 N개의 행렬을 곱하려고 함A1이 1*2 행렬 A2가 2*3 행렬 A3이 3*2 행렬일때(A1*A2)*A3을 하는경우 ((1*2)*(2*3)) *(3*2)((1*3) * (3*2)) ->1*2*3으로 6번(1*2) -> 1*3*2로 6번총 12번을 하게 되고A1*(A2*A3)을 하는 경우(1*2)*((2*3) *(3*2))((1*2) * (2*2)) ->2*3*2으로 12번(1*2) -> 1*2*2로 4번총 16번의 연산을 하게 되기 때문에행렬 곱셈의 최소 횟수는 12다.- 입력1 // 테스트 케이스3 // 행렬 3개1 2 2 3 3 2 //1*2행렬, 2*3행렬, 3*2 행렬- 출력#1 12 // 테스트케이스, 행렬 곱셈의 최소 횟수- 입력 예시3 2 2 3 3 5 3 1..
[10일차][그래프] 최장거리 구하기 - 문제 설명0->N노드로 가는 최장거리 구하기위의 경우 4 + 8 + 1 로 13이다.- 입력1 // 테스트 케이스4 7 // N, 엣지 갯수0 1 4 // 출발, 도착, 거리0 4 51 2 81 3 32 4 13 4 4- 출력#1 13 // 테스트케이스, 최장거리- 입력 예시3 2 3 0 1 1 0 2 1 1 2 6 4 7 0 1 9 0 2 3 0 3 7 1 4 2 2 3 8 2 4 1 3 4 8 4 6 0 1 10 0 2 7 1 4 2 2 3 10 2 4 3 3 4 10- 출력 예시#1 7 #2 19 #3 27- 코드#include "stdio.h" int N, E;int graph[1001][1001];int destinationNum[1001];int distance[1001]; void fin..
[10일차] [DP2] 소수의 합 - 문제 설명a와 b사이의 소수들의 합을 구하여라a가 2고 b가 7이라면 3+5로 8이다.- 입력1 // 테스트 케이스1 10 // 1<