imsooo

[우리FIS 아카데미(우리FISA) 4기 클라우드 엔지니어링 과정] 5주차 회고 본문

IT/우리 FISA

[우리FIS 아카데미(우리FISA) 4기 클라우드 엔지니어링 과정] 5주차 회고

imsooo 2025. 2. 8. 17:09

 
설 연휴로 일주일 동안 푹 쉬고
다시 열심히 우리 FISA에서 공부 ing💪
 
 
🚝 5주 차 회고 시작~
 


 
월요일
 
본격적인 web 개발을 위한 웹 페이지 이동 기술 공부와 실습을 진행했당
 
● 웹 실습을 위한 eclipse 설정

1. help → Eclipse MarketPlace

  1) Eclipse Enterprise Java and Web Developer Tools 다운

 

2. Open Perspective에서 Java EE 선택

3. WAS 다운

 1) 아래 사이트 접속하여 Download에서 원하는 버전 선택
 

Apache Tomcat® - Apache Tomcat 10 Software Downloads

Welcome to the Apache Tomcat® 10.x software download page. This page provides download links for obtaining the latest version of Tomcat 10.1.x software, as well as links to the archives of older releases. Unsure which version you need? Specification versi

tomcat.apache.org

 

2) 원하는 버전으로 운영체제에 맞는 것 다운 (나는 10.1 버전 다운)

 

4. File → New → Dynamic Web Project 생성

 1) 프로젝트 이름 입력

 

 2) Target runtime에서 New Runtime 버튼 선택

 

 3) 방금 다운로드한 Apache Tomcat v10.1 선택 후 Next >

 

 4) Browse...로 tomcat 있는 폴더 선택

 5) Finish

 

5. 생성

 
● Servlet

자바를 기반으로 동적인 웹 애플리케이션을 개발하기 위한 서버 측 언어다.

HTTP 프로토콜을 통해 client의 요청을 처리하고 응답을 생성하는 데 사용되며 , 비즈니스 로직과 실제 통신 가능한 Controller 기능으로 주로 개발한다.

Servlet은 생명주기 관리, 요청 처리, 응답 생성, 세션/속성 관리 기능을 하는 주요 메소드들이 존재한다.

 

HttpServlet

  • init() - Servlet 생성 후 초기화
  • doGet() - GET 방식 요청을 처리
  • doPost() - POST 방식 요청을 처리
  • service() - 모든 요청을 처리
  • destroy() - Servlet 종료 시 자원 해제

HttpServletRequest

  • getParameter() - client가 전송하는 데이터 반환
  • setCharacterEncoding() - 요청 객체 인코딩
  • getRequestDispatcher() - forward 방식으로 이동
  • setAttribute() - 요청 범위 데이터 저장

HttpServletResponse

  • sendRedirect() - redirect 방식으로 이동
  • getWriter() - 2byte 출력 객체
  • setContentType() - 브라우저에 응답 포멧과 인코딩 설정

 
 
 

 
월욜 점심은 달인대보칼국수에서 ~!
칼국수 집에서 육회비빔밥 맛있다는 소식을 듣고 갔는데
양이 어마어마했다..
내가 좋아하는 야채들만 들어가서
너무 맛있게 잘 먹음
🩷
 


화요일
 
JSP를 배우고 실습을 진행했습니당
JSP에 간단히 설명하자면 
 
● JSP

JSP(JavaServer Pages)는  동적 웹 페이지를 생성하기 위해 HTML 내에 자바 코드를 삽입할 수 있게 해주는 도구이며, 내부적으로는 서블릿으로 변환되어 실행된다.

 

 JSP tag
요소 형식 용도
지시자 <%@  %> 페이지 설정, 외부 파일 포함
스크립틀릿 <%      %> 자바 로직 구현
표현식 <%=    %> 변수/메서드 결과 출력
선언부 <%!     %> 전역 변수/메서드 정의

EL

  • 기존의 <%= %> 스크립트 표현식을 ${ }로 대체

 

JSTL

  •  태그 기반 로직 처리를 위한 표준 라이브러리
  • <%  %> 대신 <c:if>, <c:forEach> 같은 태그로 제어문 구현

 
입니다 ㅎ 
 

점심은 전에 뼈해장국 품절이라 못 왔던
'해장본가'에 왔습니당
 
이날은 순댓국이 전부 매진이었음
 
오랜만에 먹는 뼈해장국인데 진짜 맛있다
국물도 약간 칼칼해서 매운맛 안 시켜도 시원하게 먹을 수 있었음
굿!!
 
 


수요일
 
 
전 날 배웠던 JSP의 태그인
EL tag와 JSTL에 대한 본격적인 연습을 했고,
JNDI를 사용한 DB연결 과정도 배웠당
 
참고로 JSTL을 사용하기 위해서는 

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

와 같은 라이브러리 호출이 꼭 필요함!
 

 

전날 지나가면서 본 솥밥집에 왔습니당
 
두부꽈리고추 솥밥?을 시켰고
밥을 비벼 오른쪽 그릇에 옮긴 후 
위 주전자를 솥에 부어서 숭늉을 만들어 먹을 수 있습니당👍
 


목요일
 
목요일엔 비동기방식인 AJAX에 대해 배웠다
비동기는 페이지를 갱신하지 않고도 데이터를 보여주는 것을 말하는데
자세한 건 아래에 정리해 뒀습니다!
 
● AJAX

AJAX는 웹페이지를 전체 새로고침하지 않고 데이터를 동적으로 갱신할 수 있게 해주는 비동기식 통신 방식이다.  HTTP 요청을 통해 서버와 통신하며 서버 측 언어와 무관하게 독립적으로 사용된다. 

 

XMLHttpRequest

비동기 처리를 위한 객체로 JS에서 지원하는 API이다. 요청과 응답 처리 두 가지를 다 하는 단일 객체이며 응답 처리 responseText나 reponseHTML로 응답값을 받는다.

open()은 요청 메소드(GET, POST 등)와 서버 url을 초기화하고, send()는 open()으로 초기화된 요청을 서버로 전송한다.

 

 예시

function loadDoc() {
  const xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
  	if (xhr.readyState === 4 && xhr.status === 200) {
   		document.getElementById("demo").innerHTML = this.responseText;
        }
   };
  xhttp.open("GET", "ajax.jsp");
  xhttp.send();
}

 
 
● DOM

DOM(Document Object Model)은  HTML, XML 문서의 프로그래밍 인터페이스로 DOM을 통해 웹 페이지를 실시간으로 동적 변경할 수 있다.

 
 
 


 
금요일


눈이 많이 내렸네용

나무에 눈이 쌓인 모습이 예쁘지만

미끄러우므로 다들 조심❄️
 
금요일은 쿠키와 세션에 대해 배우고 나서
간단한 웹페이지 만드는 프로젝트를 했습니당
 
●  쿠키

쿠키(Cookie) 웹 브라우저와 웹 서버 간의 상태 정보를 유지하기 위해 사용되는 작은 데이터 조각으로 client의 컴퓨터에 상태 정보 값을 저장한다. 이름-값 쌍, 만료 시간, 도메인, 경로 등의 정보를 쿠키에 포함한다

 

 사용 예시

// 쿠키 객체 생성
Cookie cookie = new Cookie("userName", "John");

// 쿠키 유효 기간 설정 (초 단위)
cookie.setMaxAge(60 * 60);

// 응답에 쿠키 추가
response.addCookie(cookie);

 

 
●  세션

세션(Session)은 사용자의 상태 정보를 서버 측에 저장하고 관리하는 것을 말한다. client가 세션에 직접 접근할 수 없으며 서버에 데이터를 저장하므로 더 많은 정보를 저장할 수 있고 보안성이 높다. 

 

  사용 예시

HttpSession session = request.getSession();
session.setAttribute("userName", "John");
session.setAttribute("userID", "1);

 

 

 여기 블루리본 받은 라멘집이라 해서
기대하고 먹었는데
진짜 맛있는 라멘집이네용
끝까지 느끼하지 않게 먹었음!! 
행복🥰
 
밥 먹고 돌아와서 팀원들과 열심히 프로젝트를 진행했습니당💻
 


이번 주 엄청 추웠는데

다들 고생 많았습니다

 

다음 주도 화이팅!!

🖐️🖐️