
이제 문제는, 템플릿 자체가 HTML gudxo 그러니까 HTML의 포맷을 가지고 있단 말이다. 즉 이 자체가 백엔드 개발임에도 불구하고 사용자단의 기계 형태에 영향을 받도록 되어 있으니까, 템플릿을 받아다가 뭔가 서버 작업을 해야 하고 이런 일들이 생기는 것. -> 문제 : 유지보수하기가 굉장히 까다로워진다. 그래서 이 두 개를 완전히 분리하도록 시도. 동적 문서 => 핵심은 Data. 서버는 데이터만 신경써서 보내겠다! 클라이언트 입장에서 보면 request 의 의미는 서버에게 뭔가 입출력을 해달라는 것이다. 그래서 여기서 나오는 개념이 C / R / U / D 가 된다. 이걸 통칭해서 생성된 개념이 소위 RESTful API 결국 WAS 단에서 API도 구현을 해야 한다. 구현된 API에 의해서 어..

이제 양방향으로! 양방향 상호작용 => 누가 누구랑 상호작용을 어디까지 했다더라. 어딘가에는 기록을 남겨두어야 한다. ===> 그래서 웹을 구성하는 요소가 더 늘게 된다. 상태는 전이, 이걸 기억해야 함. 이 기억이 데이터베이스다 기억은 클라이언트에서 쿠키로 구현한다. 서버는 많으니까 아예 데이터베이스를 구축해버린다. 쿠키 key-value 기억을 위해 존재하는 구현체. HTTP는 Stateless 이기 때문에, 상태 개념이 아예 없다. 그러니까 프로토콜 수준에서 전후 맥락이란 게 없다. ex. 로그인 클릭 시 정보가 서버로 간다. 반대로 오는 응답도 있다. 그림으로 살펴보면 로직을 만드는 것인데, 이 로직은 기본적으로 데이터를 가져오는 것과 이 데이터를 왜 가져와야 하고, 어떤 이유로 가져와야 하는지 ..

최초의 웹 서비스 구조 티모시 버너스 리 라는 양반이 HTML과 HTTP를 묶어서 Web이라는 구조를 만들었고, 이 HTML은 문서 형태다. 가장 기본 구조는 클라이언트가 http request를 보내면(GET 요청) 서버는 서버에 위치한 리소스를 찾아서 response를 보내준다. 그러면 클라이언트는 HTML을 수신한다. HTML은 태그를 보유하고 있는데, 이걸 해석해서 문서를 읽는다. 이제 조금 더 발전해서, 스타일 개념을 적용하게 된다. 기존 HTML에다가 스타일을 적용시키게 된다. 이제, 정적인 것에서 동적인 것도 하고 싶다. 움직임을 주는 것을 추가해야한다. 그게 Script. 최초로는 모카 스크립트, 이름을 바꿔서 Live Script, JavaScript 되었다. 자바스크립트가 중요한 것은!..

웹 서비스의 가장 핵심 1) HTTP + HTML (CSS) 2) WAS (CGI) 3) DB URL과 URI Uniform Resource Identifier Uniform Resource Locator 식별이 되고, 위치 지정을 해야 한다. 정리하자면 웹은 기본적으로 무언가를 요구하고, 거기에 대한 응답이 오는 구조로 되어있다. 여기서 가장 중요한 것은 기본적으로 얘들이 전부 아스키 코드 형태(문자열) 로 되어 있다. 웹 서비스 기본 구조
엔드포인트"엔드포인트"는 컴퓨터 네트워크에서 특정 서비스나 기능에 접근하기 위한 통로나 경로를 가리키는 용어이다. 주로 웹 개발이나 API (Application Programming Interface)와 관련이 있다. 1. 웹 개발에서의 엔드포인트웹 개발에서는 엔드포인트는 서버의 특정 경로를 나타낸다.예를 들어, "https://example.com/users"라는 URL에서 "/users"가 엔드포인트가 될 수 있다.이 엔드포인트는 사용자 정보를 다루는데 사용될 수 있다. 2. API에서의 엔드포인트API에서 엔드포인트는 API에서 제공하는 특정 기능이나 자원에 대한 URL 경로를 의미한다.클라이언트는 이러한 엔드포인트를 통해 서버의 특정 기능을 호출하거나 데이터를 요청할 수 있다.예를 들어, "/..
자바 ORM 표준 JPA 프로그래밍(김영한 저) 책의 QnA 파트 괄년 내용을 그대로 가져왔다. 유의해서 JPA 공부에 활용하려구... Q1. ORM 프레임워크를 사용하면 SQL과 Database는 잘 몰라도 되나요? A1. No. ORM 프레임워크가 애플리케이션을 객체지향적으로 개발할 수 있도록 도와주긴 하지만 데이터는 결국 관계형 데이터베이스에 저장된다. 테이블 설계는 여전히 중요하고 SQL도 잘 알아야 한다. 그리고 ORM 프레임워크를 사용할 때 가장 중요한 점은 객체와 테이블을 매핑하는 것이다. 매핑을 올바르게 하려면 객체와 관계형 데이터베이스 양쪽을 모두 이해해야 한다. 따라서 데이터베이스 테이블 설계나 SQL을 잘 몰라서 ORM 프레임워크를 사용한다는 것은 ORM의 본질을 잘못 이해한 것이다...
1. 메서드 이름 위에 @Query 가 안 붙으면 이것만 보고 추론을 해서 쿼리를 만드는 것이고, 컴파일 에러를 잡아주진 않지만, 실행할 때 이 쿼리를 만든 다음에 시작하기 때문에 그래도 애플리케이션이 동작하면서보단 켜자마자 에러가 발생하는 게 나으니까, 이런 면에서 더 좋다. 2. Optional 은 원하는 걸 주거나 예외를 터뜨리거나 (매번 헷갈리는 내용...) 3. Timestamp 와 setStamp 등록시간과 수정시간이 중요한 경우가 있고, 등록자와 수정자가 중요한 경우가 있고, 어떤 건 다 중요한 경우가 있다. 즉, 어떤 테이블은 필요가 없을 수도 있다는 말이다. 더 많이 쓰는 것을 부모 클래스로 빼서 처리하자. 4. DB 설계에서 연관관계를 맺으면 여러 제약조건이 생기므로 지양하기도 한다. ..