Java, Spring/09일 (6) 썸네일형 리스트형 9일차 1 - Java Project Import하기, 서버환경에서 띄우기 자바프로젝트 import하기 day5 프로젝트 압축해가져가 (밤톨이 같은 일부 ‘.’ 으로 시작하는 파일 압축못하는 압축프로그램 피해) 압축해 가져갔다치고 프로젝트 삭제해봐 체크해야 하드디스크에서도 삭제돼. 이제 압축풀고 Import Browse..하면 workspace자동으로 잡히고 새로운게 프로젝트 밑에 나타나 finish하면 끝. 다른 방법으로 war이용 export->WAR File 주의 : Export source files체크안하면 class파일만 export돼. 소스코드 챙기려면 반드시 체크. overwrite 는 체크해도 잘 안되니까 반드시 지우고 다시 만들어.. import->WAR File 글자 깨졌으면 property에서 UTF-8로... war파일 언제쓰지? 우리가 tomcat을 이.. 9일차 2 - Model2 개념 복습 및 로그인에 적용 Model2 복습해볼까? MVC (Model View Control) : Model과 View 분할해서 업무를 비지니스로직과 프레젠테이션 레이어로 분리하기 위한거지. 중간에 Controller를 두고.. 이걸 웹에서 채용한게 Model2이고 기존방식을 model2와 구분하기 위해 model1이라고 한거지. Controller를 두개로 분할을 하지.. 왜? 각각의 action에 대한 controller를 따로따로 만들고 나서 각각 요청이 들어오게 하면 컨트롤하기 쉽지가 않아. 그래서 front controller를 만들고 모든 요청이 다 여기로 들어오게해. 어떻게? deploy descriptor 즉 web.xml에 servlet을 맵핑시켜놓고 어떠한 요청이 있을 때 front controller(즉, D.. 9일차 3 - properties 파일 적용하기 이어서.. 현재는 Action이 추가될 때 마다 DispatcherServlet을 수정해야 하잖아. ModelAndView mav = null; if(command.equals("/Login.do")){ controller = new Login();//upcast mav = controller.handleRequestInternal(request, response); } else if(command.equals("/LoginAction.do")){ controller = new LoginAction(); mav = controller.handleRequestInternal(request, response); } 이거 좀 귀찮어.. 그래서 property파일을 만들거야. (이런경우 보통 property파일.. 9일차 4 - 게시판 List구현 & JSTL BoardList 할거야. 1. Bean 설정파일(dispatcher-servlet.properties) 에 등록 #로그인 폼 /Login.do=controller.Login #로그인 확인 /LoginAction.do=controller.LoginAction #게시판 리스트 /BoardList.do=controller.BoardList #게시판 글쓰기 폼 /BoardInsert.do=controller.BoardInsert #게시판 글쓰기 데이터를 DB에 저장 /BoardInsertAction.do=controller.BoardInsertAction #게시판 상세보기 /BoardView.do=controller.BoardView #글수정 폼 /BoardUpdate.do=controller.BoardUpd.. 9일차 5 - 게시판 글쓰기, 글보기 구현 이제 ‘글쓰기’ 해보자. 1. dispatcher-servlet.properties 에 BoardInsert.do추가 #로그인 폼 /Login.do=controller.Login #로그인 확인 /LoginAction.do=controller.LoginAction #게시판 리스트 /BoardList.do=controller.BoardList #게시판 글쓰기 폼 /BoardInsert.do=controller.BoardInsert 2. action class만들어 (BoardInsert : 여기서는 입력폼으로 이동해야 하는데 뿌려주거나 데이터 넘겨줄 일은 없지.) package controller; import javax.servlet.http.HttpServletRequest; import javax.se.. 9일차 6 - connection pooling, JNDI 음.. 현재 파일마다 DB접근하잖아.. 컨트롤러 마다 BoardDao호출하면 메서드마다 getConnection()하잖아.. 이게 현재 로컬에서 혼자만 돌리니까 문제가 없지만 이게 동접자가 많아지면 이야기가 틀려지지.. 어제까지 동접자 1000명이 메스컴타고 10000이 될 수도 있잖아. 이래서 뻗어버리느니 일정 숫자이상이면 튕겨버리는게 낫잖아.. 그래서 connection pool을 만들어.. 이 넘이 jdbc를 호출해서 db에 붙어.. 이걸 붙일때 어떻게 붙이느냐.. max를 100개라고 커넥션갯수를 지정하면 알아서 100개를 연결해 놔. 우리가 쓸려고 하면 남은게 있으면 써.. 그러니까 접속하는 시간이 안걸려.. 그리고 일정용량이상의 의도하지않은 사람이 접속하려고 하면 접속이 안되서 DB서버가 안정.. 이전 1 다음