스프링 DB 종류 및 변천사 1. H2 DataBase- 개발이나 테스트 용도로 가볍고 편리한 DB, 웹화면 제공 2. 순수 Jdbc- 20여년 전에 쓰였던 노가다성 DB 3. 스프링 JdbcTemplate- 순수 Jdbc에서 중복을 제거하고 보다 쓰기 편리하게 나온 템플릿 4. JPA- 개발자들이 직접 SQL 문을 작성하지 않아도 자동으로 작성해줌- 스프링만큼이나 오래된 기술 5. 스프링 데이터 JPA- JPA를 편리하게 쓸 수 있도록 감싼 기술 1. H2 DataBase- 개발이나 테스트 용도로 가볍고 편리한 DB, 웹화면 제공https://www.h2database.com/html/main.html 다운로드 받은 파일 압축 풀고 bin 폴더에서 터미널 켜서 설치chmod 755 h2.sh./h2...
1. Form public class Member { private Long id; // 시스템이 저장하는 id private String name; public Long getId() { return id; } public String getName() { return name; } public void setId(Long id) { this.id = id; } public void setName(String name) { this.name = name; }}public class MemberForm { private String name; public String getName() ..
스프링 빈 등록하는 2가지 방법- 실무에서는 주로 정형화된 컨트롤러, 서비스, 리포지토리 같은 코드는 컴포넌트 스캔을 사용한다.- 정형화되지 않거나, 상황에 따라 구현 클래스를 변경해야 하면 설정을 통해 스프링빈으로 등록한다.(DB가 정해지지 않았을 때 구현한 코드를 추후 DB가 정해졌을 때 소스코드 수정 없이 @Bean 에 등록된 생성자만 수정해서 교체할 수 있음) 1. 컴포넌트 스캔 + 자동 의존 관계 설정- @Repository, @Service, @Controller 애노테이션을 달고 @Autowired 하는 방법 2. 자바 코드로 직접 스프링 빈 등록- @Repository, @Service, @Autowired 애노테이션을 제거하고 진행- 최상단에 SpringConfig.java 클래스를 만..
학원에서는 member, board 별로 패키지를 생성했는데, 여기선 이렇게 용도별로 패키지를 생성하는 부분이 흥미롭다.뭐가 더 나은지는 아직 모르겠다. 개발자 만의 스타일이 다른건지, 아니면 이런 방식이 좀더.. 요즘스러운 방식인지. repository -- 좀더 개발자스러운 네이밍service -- 비즈니스 로직을 구현하기 때문에 비즈니스 스러운 네이밍. 테스트케이스를 작성할 때, 번거롭게 테스트 클래스를 만드는 것 보다클래스 이름 선택 + Command T 누르면 자동으로 생성됨. package hello.hellospring.service;import hello.hellospring.domain.Member;import hello.hellospring.repository.MemberRepos..
팀 단위로 막대한 양의 코드가 짜여져있는 상태에서 사실상 테스트코드 없이 일일이 돌려보는 것은 불가능.테스트 주도 개발 (TDD) 는 구현 메서드를 만들고 -> 테스트케이스 작성해서 돌려보는 것이 아니라!테스트케이스를 먼저 작성한 후 -> 해당 테스트 케이스를 통과할 수 있도록 구현 메서드를 만드는 것! package hello.hellospring.repository;import hello.hellospring.domain.Member;import java.util.List;import java.util.Optional;public interface MemberRepository { Member save(Member member); Optional findById(Long id); O..
오랜만에 Spring을 하려니 뭐가 뭔지 .. 잘 안잡혀서 부랴부랴 인프런에서 스프링 입문 강의를 들었다.듣고 있는 중이다.기억할만한 것들을 적어보겠다. - 빌드해당 프로젝트 디렉토리에서 터미널 열고./gradlew buildcd build/libsjava -jar hello-spring-0.0.1-SNAPSHOT.jar- gradle 로 만들어진 프로젝트"hello~" 이 부분엔 build 해서 만들어진 jar 파일 이름 전체를 적어주어야 함.(maven 으로 빌드하면 war 로 되던데, 그 때에도 java -jar 로 해야 하더라.) package hello.hellospring.controller;import org.springframework.stereotype.Controller;import..
https://wikidocs.net/231152 https://wikidocs.net/book/14314 ※ 이 글은 데이콘 새싹 해커톤의 GPTs 교육 내용을 이해하기 위해 작성한 교육자료 요약문임을 밝힙니다. 0. LangChain 이란?- 자연어 처리(NLP) 기능을 강화하고, 언어 모델을 응용 프로그램에 통합하기 위한 도구 및 프레임워크를 제공하는 라이브러리- 여러 AI 기술을 하나의 유연한 인터페이스에 결합하며, 복잡한 대화형 AI 시스템을 보다 쉽게 개발할 수 있도록 지원 0-1. 주요 특징다양한 언어 모델 지원구성 요소 기반 설계 (모듈화)확장성 (클라우드 + 로컬)0-2. 기능프롬프트 템플릿문서 로더 -- 다양한 형식의 문서점보 검색벡터 스토어 -- 벡터 데이터 저장 및 검색 시스템...
아니 . pom.xml 에 dependency 추가하고 톰캣으로 서버 실행하면 Library 좌라락 다운받아질 줄 알았는데 안되는 거에요갈길이 구만리인데..@Entity 이거 쓰고 싶어서 Jakarta import 시키고 싶은데 이게 이렇게까지 안될 일입니까?? 이 텅 빈 라이브러리를 채워봅시다.. 우선 pom.xml 에 필요한 라이브러리를 올립니다. jakarta.persistence jakarta.persistence-api 프로젝트 파일을 우클릭해서 Build 어쩌구를 눌러서 진행해줍니다.java: error: release version 21 not supported이런 에러가 뜰 수 있습니다. 프로젝트의 Java 버전과 JDK 버전, Project Structure -> Langu..