pwoogi
자신의 왜곡된 경험을 진실이라고 생각하지 말자

분류 전체보기 27

에러일지 [07/29] H2 error: "Syntax error in SQL statement ... expected identifier"

조용히 하루를 넘어가는 날이 없다 문제 Spring security를 이용하여 H2 DB와 연결하는 과정중에 SQL 상태 메시지에 [*]가 있는 위치에 구문 오류가 있다고 표시된다. 테이블에 대한 식별자가 필요한데 user 가 여기의 identifier(식별자) 라는 의미가 대체 무엇일까? Syntax error in SQL statement "select user0_.user_id as col_0_0_ from [*]user user0_ where user0_.email=? limit ?"; expected "identifier"; SQL statement: select user0_.user_id as col_0_0_ from user user0_ where user0_.email=? limit ? [..

에러일지 2022.07.29

작문과 비슷한 프로그래밍

1970년대 '시스템 프로그래밍' 용도의 언어들이 만들어졌다 어셈블러, 컴파일, 텍스트 편집기 같은 프로그래머 도구, 운영체제(OS) C언어와 C++언어 C언어 C언어는 현재 사용하고 있는 거의 모든 컴퓨터 시스템에서 사용할 수 있는 프로그래밍 언어 벨 연구소, 데니스 리치 (개발자) 오늘날의 C프로그램은 30~40년전의 코드와 비슷한 수준 C언어가 가지는 장단점 장점 : 1. C언어로 작성된 프로그램은 다양한 하드웨어로의 이식성이 좋다 2. C언어는 절차 지향 프로그래밍 언어로, 코드가 복잡하지 않아 상대적으로 유지보수가 쉽다 3. C언어는 저급 언어의 특징을 가지고 있으므로, 어셈블리어 수준으로 하드웨어를 제어할 수 있다 4. C언어는 코드가 간결하여, 완성된 프로그램의 크기가 작고 실행 속도가 빠르..

Spring MVC Architecture

앞으로 쭉 함께 가야할 녀석이니까 기본이 가장 중요할 것 같다 그래서 오늘은 MVC에 대한 정리를 해볼까 한다 우선 이번주차에 과제는 알아할 내용들을 최대한 빠르게 습득하는데 목적을 두었다. 그러다보니 Back에서 이해됐던 부분들이 Front에서 이해하지 못하는 부분들과 겹쳐서 많은 혼란이 있어서 연습했던 프로젝트는 대 실패.. 다음엔 Front에 많은 투자를 하지 않으면서 기능구현에 최대한 목표를 두어야겠다. MVC 패턴 MVC 패턴이란 사용자의 요청을 처리하고 다시 사용자에게 반환하는 과정을 3가지 역할 Model, View, Controller 로 구분해서 처리하는 개발 방법을 의미한다. 즉, 사용자가 웹 브라우저를 통해서 URL을 호출하면 Controller에서 요청들을 받고 그안에서 로직이나 데..

게시판 만들기 (Usecase Diagram & API)

간단한 기능이 있는 게시판 만들기 Usecase Diagram 시스템과 사용자의 상호작용을 다이어그램으로 표현한 것 즉, 사용자의 관점에서 시스템의 서비스, 기능, 외부와의 관계에 대해서 다이어그램으로 표현한 것을 말한다. 1. 제목, 작성자명, 작성 날짜를 조회하기 2. 조회할 때 날짜 기준으로 내림차순 정렬하기 3. API 호출할 때 입력된 비밀번호와 일치여부 판단하기 4. 비밀번호를 비교하여 동일할 때만 글이 수정, 삭제되게 하기 API로 다시 정리하기 Feature Method URL Return 게시글 작성하기 POST /api/posters Poster 게시글 조회하기(날짜기준 내림차순) GET /api/posters List 게시글 비밀번호 입력하기 POST /api/posters Poste..

Cookie 와 Cache (그리고 Session)

cookie 와 cashe 는 무엇일까? 그전에 HTTP의 특징을 알아야한다. 1. HTTP의 특징 a. Stateless 프로토콜 클라이언트의 상태 정보를 가지지 않는 서버 처리 방식이다. 클라이언트와 첫번째 통신에서 데이터를 주고 받았다 해도, 두번째 통신에서 이전 데이터를 유지하지 않는다. b. Connectionless 프로토콜 클라이언트가 서버에 요청(Request)을 했을 때,그 요청에 맞는 응답(Response)을 보낸 후 연결을 끊는 처리방식이다. +) HTTP 1.1 버전에서 연결을 유지하고, 재활용 하는 기능이 Default 로 추가되었다. (keep-alive 값으로 변경 가능) 그러나 실제로는 데이터 유지가 필요한 경우가 많다. 정보가 유지되지 않으면, 매번 페이지를 이동할 때마다 ..

PUT, PATCH

CRUD CRUD는 대부분의 컴퓨터 소프트웨어가 가지는 기본적인 데이터 처리 기능인 Create(생성), Read(읽기), Update(갱신), Delete(삭제)를 묶어서 일컫는 말이다. 사용자 인터페이스가 갖추어야 할 기능(정보의 참조/검색/갱신)을 가리키는 용어로서도 사용된다. DBMS DBMS란 Database Management system의 준말로 데이터를 한곳에 모은 저장소를 만들고 그 저장소에 여러 사용자가 접근하여 데이터를 저장 및 관리 등의 기능을 수행하며 공유할 수 있는 환경을 제공하는 응용 소프트웨어 프로그램이다. 공유 저장소(서버)를 구축하고 사용자들에게 접근정보를 공유하여 데이터를 처리할 수 있는 인터페이스를 제공하고 복구기능과 보안성 기능 또한 제공한다. REST API RES..

생성자 this( )

생성자.. 🤦‍♂️🤷‍♂️ 진짜 얘 때문에 너무 고생했다. 오늘은 생성자에 대해서 욕, 아니 이야기 해보겠다. 1. 생성자 인스턴스가 생성될 때마다 호출되는 '인스턴스 초기화 메서드' 객체를 만들때 기본적인 개념은 아래의 구조의 순서대로 흘러간다. a. 객체생성 b. 인스턴스(iv) 초기화 c. 객체가 가지고 있는 기능(메서드) 사용 여기서 생성자는 인스턴스 생성시 수행할 작업(iv 초기화)에 사용된다. 그렇다면 어떤 조건들이 있을까? 이름이 클래스 이름과 같아야 한다. 1. 아래의 Java 클래스 이름과 타입변수명을 적어둔 것을 확인할 수 있다. class Java{ int a = 5; int b = 4; //매개변수 없는 생성자(기본 생성자) Java(){ } //매개변수 있는 생성자 Java(int..

하드웨어 (직접회로, 무어의법칙)

1. 가로세로 1cm 프로세서 칩 카메라에 사용되는 SD 카드도 불과 몇 년 전과 비교해도 용량은 훨씬 크고 가격은 더 저렴함. 그렇다면 컴퓨터는? 20년 전보다 많은 회로가 부품 내부에 들어가 있다. 배선이 더 미세하고 연결 핀의 수가 훨씬 더 많고 조밀하게 배치되어 있다. 데스크톱 PC 회로기관(1990년대) 프로세서와 메모리 같은 부품은 기판에 장착되거나 꽂혀 있고 반대쪽에 인쇄된 전선으로 연결하는 방식 인쇄 회로 기판의 무수한 버스 2. 컴퓨터의 전자회로 논리 게이트(logic gate) - 찰스 펫졸드 한 개나 두 개의 입력 값을 바탕으로 단일 출력 값을 계산해 낸다. 전압이나 전류 같은 입력 신호를 이용하여 전압이나 전류인 출력 신호를 제어한다.(어떤 논리적 계산을 수행함) 논리 게이트의 부품..

[JAVA] 알고리즘 LV.1 추가 학습 정리

학습 출처 : 프로그래머스 모든 문제가 프로그래머로써 입문단계라는게 놀라웠다 기초단계는 아직 시작도 안했다는 것.. 문제도 아직 남았지만 CS지식도 학습해야하기 때문에 마무리 겸 복습을 해보자. 스킬체크 입력 받은 문자열을 공백을 포함하여 함께 나누고 인덱스 짝수번째, 홀수번째의 문자를 대문자, 소문자로 치환하기 받은 문자열을 문자배열에 하나씩 넣어줄 때 String[] str = s.split(""); 그 중에 공백을 찾아서 변수를 리셋해주고 나머지 글자가 짝수번째인 경우에는 대문자, 홀수번째인 경우에는 소문자로 바꿀 때 for(int i=0; i0) { answer[cnt]=(int)(n%10); n/=10; System.out.println(n); cnt++; } return answer; } } ..

[JAVA] 알고리즘 입문 LV.1(1/1)

지난 풀이과정중 반복문, 제어문, 조건문에서 활용될 수 있는 많은 method들을 다시 한 번 기억하자 substring, charAt, toString, sort, of(LocalDate) 등등 아래 문제들에 대한 출처 - 프로그래머스 1. 내적 문제를 풀기 이전에 내적이 대체 무엇인지 궁금한 분들은 보아라. (출처-소나기님 블로그) 난 이과도 아니고 살짝 읽어보고 우선 내게 필요한 지식만 가져왔다 벡터의 내적은 a의 성분을 (x1, y1, z1)라 하고 b의 성분을 (x2, y2, z1 )라 하면 a·b = x1*x2 + y1*y2 + z1*z2 또 다른 공식으로는 a·b = ||a|| ||b|| cos θ 즉, x1*x2 + y1*y2 + z1*z2 = ||a|| ||b|| cosθ이 공식이 성립이..