전체 글 92

[13주차] 스프링 1~5일차

스프링 1일 차2024/9/2 오늘은 인텔리제이 Ultimate 버전을 설치하고 스프링 프로젝트를 생성해 보았다.스프링은 프레임워크 1.0은 2004년 출시되었는데, 스프링 이전 EJB로 개발할 때의 단점을 보완해 주었다. EJB는 전체 애플리케이션을 배포해서 테스트를 진행해야 했는데, 스프링은 의존성 주입을 도입하여 간소화된 단위 테스트를 가능하게 해 주었다. 이것은 생산성 향상, 빠른 결함 발견, 그리고 결함을 예방하는 결과로 이어졌다.스프링은 중앙 집중식 예외처리를 수행할 수 있고 AOP(관점 지향 프로그래밍)를 사용해 중복된 코드를 제거할 수 있다.스프링 프레임워크는 라이브러리와 달리 전체 애플리케이션의 흐름을 제어하고, 스프링 코어 모듈 위에 독립적인 모듈을 올려서 통합하여 사용한다. 스프링 환..

[12주차] 웹 기초 4 ~ 8일차

웹 기초 4일 차2024/08/26 오늘은 지금까지 배운 HTML과 CSS를 활용하여 기초적인 웹 페이지를 두 개 만들어 보았다.첫 번째는 프로필이 나오는 웹 페이지를 했는데 처음에 이미지 소스가 화면에 보이지 않아서 당황했었는데 erm 사이에 공백이 있어서 그런 것이었다. erm은 공백 없이! 사용할 것.프로필 사진 위에 마우스 포커스를 올리거나 Follow 버튼 위에 포커스가 올라가면 사진과 색깔이 변경되는 CSS도 만들었다.  웹 기초 5일 차2024/8/27 오늘은 자바스크립트의 기본 문법에 대해 배워보았다. 자바스크립트는 배울수록 더 어려워진다고 해서 교재를 같이 읽으면서 공부하기로 했다.그리고 다음 주 금요일까지 HTTP에 대해 공부해서 내가 이해한 문장으로 발표를 준비하라는 과제가 있었다.이..

[Lesson 16 마지막 장] 그래픽 애플리케이션

1️⃣ GUI 애플리케이션의 기본 그래픽적인 외양을 가진 프로그램을 GUI(Graphical User Interface)라 부른다. 표준 자바 클래스 라이브러리에 포함되어 있는 java.awt 패키지의 AWT를 이용하면 가장 기본적인 GUI 애플리케이션 윈도를 만들 수 있다. 윈도를 만드는 방법으로는1. Frame 클래스를 상속받은 클래스를 정의한다2. 이 클래스의 서브 클래스 객체를 main 메서드 안에 작성한다3. 프레임 클래스의 생성자를 호출해서 윈도 제목을 설정한다4. setSize, setVisible 함수로 윈도의 크기를 설정하고 표시되도록 만든다 Lable 클래스의 객체를 생성해서 레이블에 문자를 표시하고 add 메서드를 이용해서 프레임에 컴포넌트 (윈도에 표시할 수 있는 부품)를 붙일 수 ..

[Lesson 15] 스레드

1️⃣ 스레드의 기본 메인 메서드부터 시작해서 차례로 실행하는 각각의 처리 흐름을 스레드라고 하는데 여러 개의 스레드를 기동 해서 코드의 여러 부분이 동시에 실행되는 구조를 만들 수 있다. 여러 개의 스레드를 기동 하면, 오래 걸리는 작업이 끝나기를 기다리지 않고 그 작업이 수행되는 중에 다른 작업을 시작할 수 있어 효율적인 처리가 가능해진다 스레드를 늘리기 위해서 java.lang 패키지의 Thread 클래스를 확장하고 run() 메서드를 정의해야 한다.class Car extends Thread { private String name; //String name을 받는 생성자 public void run() { System.out.println(name); }} start..

[11주차] 웹 기초 1~3일차

웹 기초 1일 차 2024/8/21 프로젝트가 끝나고 웹 기초가 시작되었다.오늘은 유저, 웹 브라우저, 웹 서버, WAS, 스프링 컨테이너, 데이터베이스가 어떻게 유기적으로 이어지고 호출과 응답이  이루어지는지 알아보았다.클라이언트 서버는 클라이언트가 요청을 보내면 서버는 반드시 그에 대한 응답을 준다. 요청과 응답하는 경로는 유저 > 웹 서버 > WAS > 데이터베이스 와 그 반대 순서로 요청과 응답이 이루어진다. WAS 만으로도 웹 서버의 기능을 가지고 있는데 굳이 웹 서버를 사용하는 이유로는 Nginx 웹 서버가 가지고 있는 여러 장점들 때문인데, 대표적으로 비동기 처리 방식을 사용해서 다수의 클라이언트 요청을 동시에 처리하도록 하고, Reverse Proxy가 가능해서 로드 밸런싱을 통해 각 요청..