본문 바로가기

전체 글65

[컴퓨터 구조] 데이터 1. 정보 단위 비트(bit) - 0과 1을 표현할 수 있는 가장 작은 단위 - n비트로 2의 n승 의 정보 표현 가능 - 프로그램은 수많은 비트로 이뤄져 있음 크기 : 비트 2024. 4. 5.
[컴퓨터 구조] 전반적인 흐름과 내용 0. 스터디를 시작하며 현재 네이버클라우드캠프 데브옵스 8기 과정을 수행하면서, 수업시간 때 모르는 용어들을 만나면서 수업 내용의 이해가 더딘 경험이 꽤 있었다. 또한 점점 더 실력있는 개발자가 되기 위해서는 프로그래밍 언어의 문법뿐만 아니라, 컴퓨터의 근간을 알아야 한다는 생각이 들었다. 그래서 앞으로 컴퓨터 구조와 운영체제에 대해서 공부해보고자한다. 1. 컴퓨터가 이해하는 정보 데이터 - 정적인 정보 ex) 숫자, 문자, 이미지, 동영상 - 컴퓨터 내부에 저장된 정보 - 데이터는 컴퓨터가 이해할 수 있는 0과 1의 형태로 변환되어 처리됨(이진법) - 데이터는 명령어에 의해 처리 명령어 - 컴퓨터에게 작업을 수행하도록 지시하는 요구사항 ex) 연산, 조건 판별 - 프로그램을 실행하거나 데이터를 처리하기.. 2024. 4. 4.
java.sql.SQLException: Cannot create JDBC driver of class '' for connect URL 'null' 분명히 잘 실행되었는데, 모든 Controller들을 pageController로 변경하고 FrontController를 생성해서 거쳐가도록 코드를 수정하던 중에 오류가 발생했다. 연결할 url이 없다니..일단 모든 파일의 경로를 확인했으나 이상 無. 그래서 구글링을 통해 아래의 3가지 방법을 시도해봤다. 1. Tomcat 확인 2. web.xml 확인 3. server의 server.xml 확인 1~2번 확인하고 3번을 시도해보던 중에 server.xml에서 데이터베이스 연결 정보 설정 코드가 누락되어 있는 것을 확인. 이렇게 데이터베이스 연결 정보 설정 코드를 추가하니 오류 없이 제대로 실행되었다. Mission Clear. 2024. 4. 3.
javax.servlet.ServletException: 파일을(를) 찾을 수 없습니다. 알아보니 이 오류는 서블릿 컨테이너가 JSP 파일을 찾지 못해서 발생하는 것으로, 주로 이런 문제는 JSP 파일의 경로가 올바르게 설정되지 않았거나 JSP 파일이 존재하지 않는 경우에 발생한다고 한다. 그래서 아래의 방법을 순서대로 시도해봤다. 1. JSP 파일의 경로 확인 2. JSP 파일명 오타 확인 1번은 확인해보니 모두 이상 無. 2번은 역시나 실제 JSP 파일명과 Controller에서 요청한 JSP 파일명과 달랐다. 소문자와 대문자의 차이로 인해 JSP 파일이 존재하지 않다고 판단된 것이였다. 실제 JSP 파일명과 Controller에서 요청한 JSP 파일명을 동일하게 변경해주고 다시 실행해봤다. 그러나 여전히 오류는 해결되지 않았다. 혹시 다른 오류로 인해 이 오류도 발생한 것인가 싶어서, .. 2024. 4. 2.
네이버클라우드캠프 67일차(4/2) 1. MVC 패턴- 공통 코드가 모든 컨트롤러에 산재되어있음- 클라이언트는 각각의 컨트롤러를 호출해야 하는 단점이 있음( 공통 처리가 어려움)2. 프론트 컨트롤러- 기존 서블릿들로 구성한 MVC 모델에서 더 발전된 단계- 공통 처리 가능- Front Controller만 서블릿이고 Controller A, B, C는 서블릿이 아닌 POJO(only java언어)임- Front Controller는 View에 해당하는 JSP와 상호작용함.- 이때, Controller A, B, C는 페이지 컨트롤러임 2. 개발자의 2024. 4. 2.
The declared package "" does not match the expected package "" 오류 이클립스로 폴더 생성해서 제대로된 위치에 java 파일을 생성한 후 실행하자, 이런 오류가 발생했다. 검색해보니 소스 코드의 패키지 선언과 실제 파일의 위치가 일치하지 않을 때 발생하는 오류였다. 즉, 패키지 위치를 이클립스가 제대로 인식하지 못해서 발생하는 오류인 것이다. 종종 발생한 오류라서 익숙하다. 평소에 시도하는 방법은 '파일 삭제 후 다시 생성하여 기존 파일의 코드를 복붙하기'이다. 이번엔 구글링을 통해 '파일을 다른 패키지에 옮겼다가 원래의 패키지로 다시 옮기기'라는 새로운 문제해결 방법을 찾아서 시도해보았다. 새로운 방법을 적용해봤지만 여전히 오류가 해결되지 않아서 결국 평소에 하던 방법으로 오류를 해결했다. Mission Clear. 2024. 4. 2.
네이버클라우드캠프 61~62일차(3/27~3/28) 1. 웹 애플리케이션- 웹 브라우저를 통해 클라이언트와 상호작용하는 소프트웨어더보기ex) 웹사이트, 온라인 쇼핑몰, 소셜 미디어 플랫폼 등의 웹 서비스 2. Servlet(서블릿)- 클라이언트의 요청을 처리하고, HTML,XML, JSON 등과 같은 다양한 형식의 데이터를 처리하며, 응답을 생성하는 등의 작업을 수행하는데 사용더보기ex) Client 가 로그인하면 서블릿은 그 정보를 확인하고 로그인이 되었는지 여부를 알려줌ex) Client 가 새로운 정보를 입력하면, 서블릿은 그 정보를 받아서 처리하고, 필요하면 데이터베이스에 저장- Java 언어로 작성되며, Java EE(Java Enterprise Edition) 환경에서 Dynamic Web Project로 개발됨- javax.servlet.G.. 2024. 3. 28.
네이버클라우드캠프 47일차(3/13) 1. Javascript에서 스타일을 설정하기 - JavaScript의 스타일 속성에 접근할 때는 camelCase를 사용- HTML, CSS에서는 kebab-case를 사용해야 함 따라서, JavaScript에서 스타일을 설정할 때는 아래와 같이 CSS에서 사용하던 스타일 이름을 약간 수정해야 함background-color => backgroundcolortextalign => textAlignfont-size => fontsize 1) 방법 3가지// h1의 스타일 속성 중 배경색을 흰색으로 설정// 방법 1h1.style.backgroundcolor = 'white'; // 방법 2h1.style['backgroundColor'] = 'white';// 방법 3: CSS의 스타일 이름을 그대로 사.. 2024. 3. 13.
forEach문 1. forEach문- JavaScript 배열에서 사용할 수 있는 내장 메소드 중 하나- 배열의 각 요소에 대해 주어진 함수 실행 즉, 해당 배열의 요소를 하나씩 다 끄집어 낸다고 생각하면 된다.for문을 돌리지 않아도 forEach문을 사용하면 모든 요소들을 하나씩 접근할 수 있다.array.forEach(function(element, index, array) { // element: 배열의 현재 요소 // index: 배열의 현재 요소의 인덱스 // array: forEach가 호출된 배열 자체 // 여기서 주어진 함수는 배열의 각 요소에 대해 실행됩니다.});  1) 사용 방법- 내장된 forEach- 직접 구현한  forEach 2024. 3. 13.