개발 공부/WEB 33

인터넷 네트워크

IP (Internet Protocol) 역할 - IP 주소에 메세지를 전달할 수 있도록 정해놓은 규칙 - 서버를 찾기 위함 - packet이라는 통신 단위로 데이터 전달 IP 프로토콜의 한계 클라이언트는 대상 서버가 패킷을 받을 수 있는 상태인지 모름 패킷 소실 패킷 전달 순서 문제 발생 TCP (Transmission Control Protocol) : 전송 제어 프로토콜 프로토콜 계층 TCP특징 연결 지향 - TCP 3way handshake 가상연결 (연결 하고 데이터 보냄) 데이터 전달 보증 ( 메세지 누락 됨을 알 수 있음) 순서 보장 신뢰할 수 있는 프로토콜 현재는 대부분 TCP사용 UDP(User Datagram Protocol) : 사용자 데이터그램 프로토콜 속도 : TCP보다 UDP가 ..

개발 공부/WEB 2024.01.04

Mybatis

return false를 하지 않은 경우 기본 이벤트 처리하러 감 =>href url처리하러.. service ( ) : 요청방식과 무관. 요청시마다 호출되는 메서드. 요청방식이 get/post인 경우 자동호출됨. 구분하고 싶지 않은 경우 service( ) 오버라이딩 하면 됨. nio 패키지 : 입출력보다 확장된 패키지. 출력에서 제공되지 않던 path에 관련된 라이브러리 제공해줌. contentType // 다운로드 할 파일의 형식 ex) 이미지/png, 이미지/jpg String contentType = Files.probeContentType(path); 파일의 형식을 찾으려하다보니 path인자가 필요함. 첨부파일로 무조건 다운로드를 할 경우 : attachment 응답파일 내용을 파일로 만들어주..

개발 공부/WEB 2023.08.02

싱글톤패턴/ 파일 업로드

서블릿마다 service객체와 respository객체가 생성되어 메모리 낭비가 서블릿을 하나로 묶는 방법 서비스 객체를 싱글톤 패턴으로 만드는 방법 java -cp 클래스 1) .class찾아 JVM에 로드 2) ByteCode 검증 3) Byte -> Binary 재해석 4) 0,1로 해석된 내용 기억(Method영역) 5) static변수 자동초기화 6) Main( ) 호출 - Java SE 싱글톤패턴으로 변경하기 미리 생성된 service객체를 반환만 해준다 파일 업로드할때 요청 형식을 바꿔야 함. 첨부할때 규칙 ajax 다음페이지로 넘어가지 않고 바로 첨부가능!

개발 공부/WEB 2023.07.19

session / MVC

html -> jsp로 확장자 변경할 경우 property에서 인코딩 UTF-8해주어야 함 응답할 형식을 한번 만 결정해주어야 한다. 실행할 때 include태그를 이용하여 포함하면 정상 포함된다. 로그인 여부에 따라 메뉴가 바뀌도록 설정 로그인에 마우스를 가져가면 아래와 같이 path경로가 뜸! http://localhost:888/frontback/jsp/login.html 스타벅스코리아 상대경로보다 사용 권장 세션 속성(이름 :"loginedId")을 제거 요청 성공 시 , 중복된 경우 status를 서블릿에서 ( id 중복시 0, 사용가능 시 1로 설정) 응답 CustoemrRepository - selectById() 재사용 return타입으로 성공실패를 확인하지 않고 예외처리로 확인한다. id..

개발 공부/WEB 2023.07.14

Session Tracking : 상태 정보 유지기술

SessionTracking : 상태 정보 유지기술 (쿠키/세션) Cookie / Session / Storage 쿠키 : 클라이언트쪽 정보유지 세션 : 서버쪽 정보유지 왜 해야되는가? Http는 요청/응답/연결끊김의 구조이다. 클라이언트와 서버측에서 연결이 끊겨 있음. 계속 연결 되어 있는것 처럼 보일 필요가 있음. 로그인 성공 후 , 상품조회 , 장바구니 넣기를 이용하여 저장하려고 함. 서로 다른 서블릿 1.첫번째 서블릿을 요청하여 로그인 성공 응답을 받음 2. 장바구니 넣기 작업을 해서 장바구니 담기 성공 응답 받음 3. 결제하기를 또 다른 서블릿 요청 (로그인 성공한 사용자 / 로그인 안 한 사용자 구분 필요) 연결이 끊어진 구조이기 때문에 로그인 성공된 정보를 기억할 수 없음. (웹서버는 기억력..

개발 공부/WEB 2023.07.13

jsp / Servlet

Servlet? 웹 클라이언트의 요청을 처리할 수 있는 클래스. HttpServlet을 상속하여 만들어짐 jsp파일-> Servlet으로 동작 기존방식 - 클라이언트의 요청을 jsp파일로 받음 서블릿 - 클라이언트의 요청을 Servlet으로 직접 받음 MVC패턴 Model - Java View - JSP파일 (보여지는 용도) Controller - Servlet (요청을 처리하는 역할) HTML/CSS/JS - 정적 사이트 JSP(Java) - 동적사이트 사용자의 입력을 위해 페이지가 필요하고, 입력한 내용이 처리되려면 특정 jsp파일로 요청을 해야만 함 jsp파일 하나가 사용자의 입력을 받을 수 있고, 입력받은 내용으로 서버에 전달하게 됐을때 입력받은 내용들을 서버로 요청하여 서버에서 이 데이터를 받아..

개발 공부/WEB 2023.07.12

redirect / forward

redirect request객체는 응답 후 바로 사라 짐. 서버측에서 header값만 응답. 응답받아서 요청하는 구조 클라이언트에서 재요청하도록 응답 header설정필요 response.sendRedirect("http://www.naver.com"); 클라이언트 측의 주소 url이 변경 된다 http://localhost:8888/back/a 에서 http://www.naver.com 으로 주소구조가 바뀜 ex) 소셜 인증 forward RequestDispatcher rd; rd = request.getRequestDispatcher("/c"); rd.forward(request.response); 기존페이지에서 사용되었던 request의 parameter와 attribute를 forward에서 사..

개발 공부/WEB 2023.07.11

Servlet

확장자가 .java인 파일 자바의 일반적인 클래스와 동일한 개념 웹을 다룰 수 있도록 해주는 "HttpServlet"클래스를 상속받은 클래스를 의미 웹서버에서 서블릿/JSP 실행 불가. 서블릿/JSP실행기가 있어야 실행 가능 서블릿/JSP실행 엔진용 WS : 톰캣, 레진, 웹로직/웹스피어/제우스 - 웹로직/웹스피스/제우스 (톰캣X) WAS (WebApplicationServer) : WebServer + ApplicationServer + 다양한서비스 웹서버연동 : 톰캣 + 아파치 / 톰캣 + IIS / 톰캣 + nginx ------------------------------------------------------------------------------------------------------..

개발 공부/WEB 2023.07.10

ajax / jquery

getCurrentPosition( ) : 현재 위치 확인 가 watchPositon( ) : 변경되는 위치 확인 가능 doPost( ) 자동 호출 String a = request.getParameter("id"); SOP (a) = abc // id에 입력한 값이 나옴. servlet을 요청하면 서버에서 servlet이 실행 됨 1.응답 형식을 결정 response.setContentType("text/html;charset=utf-8"); 2.응답 출력 스트림 얻기 PrintWriter out = response.getWriter(); 3. 응답 내용 출력 out.print(id + "가입성공"); 렌더링 엔진: 기존 내용을 싹 지우고 (clear) 화면에 보여줌 XMLHttpRequest 1. 요..

개발 공부/WEB 2023.07.05