목록분류 전체보기 (240)
요르딩딩
[68강. EL에서 함수 이용하기 JSTL:function]${fn:endsWith( fileName, '.zip') }"> style="${style}"> ${fn:toUpperCase(fileName)} // 파일명 대문자로 바꾸기+ JSTL function만들기도 공부해보기[69강. 코드 분리를 위한 사전 설명]- client => servlet (model) 업무 서비스 (entity) DAO DBMS => jsp => client[70강. 서비스 함수 찾아내기] - getNoticeList() - getNoticeList(int page) - getNoticeList(String field, String query, int pa..
[57강. 목록 페이지도 MVC model2로 수정하기]- 앞서 한 내용 복습강의[Controller]- request.setAttribute, forward, doGet메소드, [JSP]- EL방식 : ${list[0].writerId}- List list = (List) request.getAttribure("list") for(Notice n : list) { // 저장소 종류 : page, request, session, application pageContext.setAttribute("n", n); ${n.id}}[58강. View페이지 은닉하기]-순서 : controller -> JSP(view) : view를 호출하지 못하도록 은닉하기- 뷰파일 위치 : WEB-INF..
API Server (오토스케일링 판단해야함.)Runtime VM Serverless CloudRun -> Knative구글 클라우드: n2 Appengine(Standard - SDK , Flex)... L7, L4 : WAF(보안) 필요하면 사용Cloud AmorSpot VM GPU cloudLambda Labs : https://lambdalabs.com/인프라 설정시 비용을 잘 봐야한다. 멀티 스레드 서버 : 자바에서 많아야 500개 (예시. 은행창구) 50000개하려면 100대 필요 : C10k (10000) -> 20대 사용복잡한것도 처리 유용!!!Node.js server : 싱글 스레드가 루프형식 (예시. 스타벅스)주문은 한명이 받고, 바리스타들이 커피제조비지니스로직이 무거운 경우, 문제..
[46강. JSP MVC model1을 model2 방식을 변경]- model2 : 컨트롤러와 뷰의 소스코드가 분리- 컨트롤러는 디스패처를 활용해 포워딩한다.- web.xml -> dispatcher-servlet -> contorller -> view- redirect : 새로운 요- forward : 작업을 이어갈 수 있도록 공유 (reqeust를 사용)// Controller...request.setAttribute("result", result); // 값 담기ReqeustDispatchert dispatcher = request.getRequestDispatcher("spage.jsp");dispatcher.forward(request, response); // request 와 response..
[36. 계산기 서블릿 완성하기]@Webservlet("/calcpage")public class Calc extend... protected void service(HttpServletRequest request...){ Cookie[] cookies = request.getCookies(); String exp ="0"; if(cookies != null) for(Cookie c : cookies) if(c.getName().equals("exp")) { exp =c.getValue(); break; } /// out.write("~~~..
[26. Application 객체와 그것을 사용한 상태 값 저장]# 웹서버 -> 서블릿 context# 서블릿 = 문맥 # form태그에 endpoint가 동작한다.# 서블릿은 호출하고 사용되면, 다시 메모리로 돌아간다.# 1개의 화면에서 1개의 입력창에 숫자들을 반복적으로 입력하여 계산을 하는 경우, 매번 입력된 수를 기억하고 있어야한다. 이럴때 서블릿을 사용한다. ServletContext application = request.getServletContext(); application.setAttribute("key", value); 를 통해 저장소에 값을 저장하여 유지할 수 있다. application.getAttribute("key");를 통해 저장소의 값을 불러온다.Servle..
[15. GET요청과 쿼리 스트링]1. http://localhost/hello?cnt=3 : 쿼리 스트링 (GET) -> 문자열로 넘어간다.int cnt = Integer.parseInt(request.getParameter("cnt")); 2. 대신 위의 코드의 경우 cnt값이 없으면, 오류가 발생한다. [16. 기본값 사용하기]- /hello?cnt=3 ---> "3"- /hello?cnt= ---> ""- /hello? ---> null- /hello ---> nullString temp = request.getParameter("cnt");int cnt = 0;if (temp != null && !temp.equals("")){ // Null과 ..
[04. 톰캣 설치 ]아파치 톰캣 사이트에서 압축파일 다운로드bin (바이너리) > startup.bat 클릭하면 실행됨 (바로 꺼진다면, java home이 환경변수 설정이 안되어있어서 그럼.)실행 후 바로 종료된다면 !!!java home 경로 지정 window기준 : 시작 > 시스템 > 시스템정보 > 고급 시스템 설정 > 환경변수 > 시스템변수 > JAVA_HOME (jdk경로 지정해야함. 사용자마다 다름)JAVA_HOME변수가 없다면 생성.또는 포트가 이미 사용중인지 확인 할것재가동 후 브라우저에 localhost:8080 입력하면, 고양이 사이트가 자동으로 뜸 ->(index.jsp가 실행되는것임.) [05. 웹문서 추가]홈 디렉터리 : apache/webapps/ROOT/ 웹문서가 위치 : ..