나중에 읽기 쉽게 만들기위해 메모쓴 거 그대로 복붙 Spring이란 = jsp + servlet 을 제약을 둬서 만든 것 -> 어려운 유지보수,복잡성을 위해... Spring이 만들어짐-> 코드를 읽기 어려우면 ? 분활화를 함. 모듈끼리-> 그리고 jsp servlet은 서버 의존성과 호환성으로 인해, 서버 이전의 어려움이 있다.->spring은 설정 및 배포관련 frame(틀)을 만들어 개발자들에게 부담을 줄여줌, 그러나 오류가 나면 오류를 찾기 어려움. 틀을 만들어 놔서... * 복잡성 : 코드를 읽기 어렵다 특징 : 1. POJO 기반 개발 = 자바를 씀 2. 경량성(Lightweight) = 필요한 기능만 선택적으로 사용 가능함(?) 3. ..
패키지 복붙하면 경로를..ㅎ 바꿔야함 예를 들어 ex02 로 jsp를 실행하려면 무조건 controller를 거쳐야 한다! 따라서 jsp 파일에서 실행해도 안열림... sts 실행 파일 두개나 있음 ... 오류가 나니깐 확인하기. lombok 설치하고 오류가 잇었음 sts-bundle이 두 개나 있었고 하나에는 sts.txt에 vm 자바경로 써놓고 하나에는 롬복 깔아놨었음
Spring에서 서버 꼬임 오류가 떴다. 확인해야 할 것 첫 번째, 1 web.xml 오타찾기 필터 추가하는 과정에서 오타가 발생했다ㅎ 본인이 실수해서 생긴 오타.. 생각보다 잘 발견못하니깐이럴 땐 gpt로 오타 검사만 해보자! 확인해야 할 것 두 번째,2 현재 해당 포트를 사용 중인 프로세스를 확인하기 cmd - 관리자 권한으로 열기를 선택 netstat -ano | findstr :8080 사용중인 pid 번호를 확인하고 taskkill /PID 번호 /F 프로세스 종료 시키기. 동일한 프로세스(프로세스 ID : 2312) 가 IPv4와 IPv6 모두에서 8080 포트를 수신 대기하고 있음을 나타낸다. 하나의 프로세스가 두 개의 네트워크 스택(IPv4와 IPv6)에서 동시에 수신 대기 중..
게시판 페이지(list.jsp) 에서 로그인 먼저 만들기 로그인 LoginController(servlet) 만들기 @WebServlet("*.go") 경로를 설정해서 .go 로 끝나는 모든 요청에 응답해야함 "login" 이 포함 되어 있고 GET 요청이면 loginGET(request,response) 로 POST 요청이면 loginPOST(request, response) 로 @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { if(requestURI.contains("login")) { System.out.println..
로그인 기능 추가 전 코드 https://github.com/hoongji/MVC_first 오늘의 과제 게시판 (list.jsp) 에서 '글 작성' 버튼을 클릭 로그인 servlet (login.do) loginController loginGET : login.jsp 페이지 읽어오기 loginPOST : login.jsp 데이터(userid , password) 를 서버로 보내기 -> 얘를 임의로 저장해야함! (세션 이용 ) if 로그인 = yes이면 , register.jsp 이동 (servlet에서 판단하고 보내기!) 로그인=no, login.jsp 이동 ** 로그인 확인 페이지 이동하면 경로에 대한 정보가 사라집니다. 이걸 "임의로 저장" 하는 방식에 대한 고찰이 필요 => session 쓰기. ..
댓글 기능 detail.jsp 자바 스크립트 기능 추가 작성 $(document).ready(function(){ getAllReplies(); // 함수 호출 코드 추가 $('#btnAdd').click(function(){ let boardId = $('#boardId').val(); // 게시판 번호 데이터 let memberId = $('#memberId').val(); // 작성자 데이터 let replyContent = $('#replyContent').val(); // 댓글 내용 let obj = { 'boardId' : boardId, 'memberId' : memberId, 'replyContent' : replyContent }; console.log(obj); // $.ajax로 송수..
과정 요약 1. DB 연결 private static BoardDAO dao; 2. dao = BoardDAOImple.getInstance(); 3. 전체 게시판 내용(list)을 DB에서 가져오고, 그 데이터를 list.jsp 페이지에 전송 List list = dao.select(); System.out.println(list); String path = BOARD_URL + LIST + EXTENSION; //servlet을 거치도록 함 (포워딩) RequestDispatcher dispatcher = request.getRequestDispatcher(path); dispatcher.forward(request, response); request.setAttribute("list", list);..
명세서와 기본 설정 2024.04.11 - [4월] - 2024.04.11_ MVC 패턴 @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // .do 로 끝나는 애들이 옴 String requestURI = request.getRequestURI(); String requestMethod = request.getMethod(); System.out.println("호출 경로 : " + requestURI); System.out.println("호출 방식 : " + requestMethod); if(requestURI.con..
MVC 패턴 - 애플리케이션 전체를 모델, 뷰, 컨트롤러의관점으로 구분하는 패턴 쓰는 이유 : 유지보수 - 주로 웹에서 쓰인다. (SCR에서만 가능한 패턴) MVC Model 2 servlet 이 컨트롤러 jsp는 view * MVC 를 활용한 웹 애플리케이션 구조 * Model : 웹 애플리케이션에서 Model은 애플리케이션의 데이터 및 비즈니스 로직을 포함하는 부분을 가리킵니다. MVC 패턴에서 Model은 데이터와 비즈니스 로직을 의미합니다. Domain : 도메인은 애플리케이션이 해결하고자 하는 문제 영역 입니다. 예를 들어, 은행 application에서 계좌, 고객, 거래 등이 도메인 모델에 속합니다. 즉, 도메인 모델은 비즈니스 로직에서 의미 있는 데이터 객체들을 표현합..
명세서 다시 보기 jQuery를 사용하여 Ajax 요청을 보내고, 응답을 처리하여 HTML을 동적으로 생성하는 기능을 구현한 것이다. - type : HTTP 요청 방식-> GET - url : 서버로 요청할 URL -> ../search.do 여기서 '..'은 현재 페이지의 URL이 'http://localhost:8080/Web08_Ajax/03_JQuery_Ajax/index.html'인 경우, '../search.do'는 'http://localhost:8080/Web08_Ajax/search.do'로 해석된다. '03_JQuery_Ajax' 디렉토리의 상위 디렉토리인 'Web08_Ajax'로 이동하라는 의미 - data : 요청 시 함께 전송할 데이터 여기서는 'keyword'라는 이름으로 사용..