본문 바로가기

반응형

분류 전체보기

(150)
spring - 블로그 예제 service, repository, viewContoroller, templates Controller: BlogService@RequiredArgsConstructor // final 이 붙거나 @NotNull이 붙은 필드의 생성자 추가@Service @RequiredArgsConstructor는 Lombok에서 제공하는 어노테이션으로, 클래스의 필드 중 final로 선언된 필드나 @NotNull 어노테이션이 붙은 필드들을 대상으로한 생성자를 자동으로 생성한다. 이 생성자를 통해 객체를 생성할 때 해당 필드들의 값이 필요하다. @Service는 Spring Framework에서 사용되는 어노테이션으로, 해당 클래스가 서비스 역할을 한다는 것을 나타낸다. Spring 컨테이너에 의해 관리되며, 주로 비즈니스 로직을 담당하는 클래스에 사용된다. private final BlogRepos..
spring 공부 - 앤티티, ORM, JPA, 스프링데이터 JPA 데이터베이스 데이터를 매우 효율적으로 보관하고 꺼내볼 수 있는 곳 DBMS 데이터베이스를 관리하기 위한 소프트웨어 database management system데이터베이스는 많은 사람이 공유할 수 있어야 하므로 동시 접근할 수 있어야한다. 관계형 DBMS 관계형데 모델 기반테이블 형태로 이루어진 데이터 저장소 ORM object-relational mapping 자바의 객체와 데이터베이스를 연결하는 프로그래밍 기법ORM이 있다면 데이터베이스의 값을 마치 객체처럼 사용할 수 있다.자바 언어로만 데이터베이스에 접근해서 원하는 데이터 받아올 수 있다.자바 언어로만 데이터베이스 다룰 수 있게 하는 도구 장점:SQL 직접 작성하지 않음객체지향적 코드 작성할 수 있기 때문에 비즈니스 로직에만 집중데이터베이스 시스..
spring 공부 - 테스트코드 테스트코드 작성한 코드가 의도대로 잘 동작하고 예상치 못한 문제가 없는지 확인할 목적으로 작성하는 코드 given-when-then 패턴 테스트 코드를 세 단계로 구분해 작성하는 방식 given : 테스트 실행을 준비하는 단계when : 테스트를 진행하는 단계then : 테스트 결과를 검증하는 단계 @DisplayName("새로운 메뉴를 저장한다.")@Testpublic void saveMenuTest(){ // given : 메뉴를 저장하기 위한 준비 과정 final String name = "아메리카노"; final int price = 2000; final Menu americano = new Menu(name, price); // when : 실제로 메뉴를 저장..
spring 공부 - 스프링부트, 계층 스프링부트 스프링은 장점이 많은 개발 도구지만 설정이 매우 복잡함개발자가 조금 더 비즈니스 로직 개발에만 집중할 수 있도록 만들어주는 도구톰캣, 제티, 언더토우 같은 웹 애플리케이션 서버 was 가 내장되어 있다.빌드 구성 단순화하는 스프링 부트 스타터 제공XML 설정 없이 자바 코드로 작성 가능JAR 이용해서 자바 옵션만으로 배포 가능애플리케이션 모니터링 및 관리 도구인 spring actuator 제공 IoC (Inversion of Control) 제어의 역전외부에서 관리하는 객체를 가져와 사용한다. public class A { private B b;} DI (Dependency Injection) 의존성 주입, 제어의 역전을 구현하기 위해 사용하는 방법어떤 클래스가 다른 클래스에 의존한다는 뜻@..
spring 공부 - JPA, AOP 회원가입기능 html 이름 등록   controllerpostMapping 어노테이션return / 페이지 @PostMapping("/members/new") // PostMapping public String create(MemberForm form) { Member member = new Member(); member.setName(form.getName()); memberService.join(member); return "redirect:/"; // redirect / 로 이동 } 회원출력 기능 html회원 목록 for each 처럼 꺼내서 하나씩 출력  ..
spring 공부 - 컴포넌트 스캔, 빈 등록 TEST 개별적으로 실행할 수 있음alt + insert 하면 자동생성assertThat(e.getMessage()).isEqualTo("이미 존재하는 회원입니다.");첫번째와 두번째 주소를비교한 후 같으면 진행 틀리면 알림 package hello.hellospring.service;import hello.hellospring.domain.Member;import org.junit.jupiter.api.AfterEach;import org.junit.jupiter.api.Test;import static org.junit.jupiter.api.Assertions.*;import hello.hellospring.domain.Member;import hello.hellospring.repository.Me..
spring 공부 - 정적 컨텐츠, MVC, API index.html 부터 시작함 템플릿 엔진: Thymeleaf 웹어플리케이션에서 첫번째 진입점이 controller index.html Hellohello    웹 어플리케이션에서 /Hello 라고 들어오면 이 메소드 실행 @Controllerpublic class HelloController { @GetMapping("hello") public String hello(Model model){ model.addAttribute("data","hello!"); // model에 담음 // 데이타를 hello 라고 넘길 꺼다 // 키가 data 벨류는 hello return "hello"; // hello.html 을 찾아감 }} templetes/hello.html에서치환되서 ..
네이버클라우드 s3 스토리지 Spring 프로젝트에서 사용하기 (NCP, Spring, 이미지) ② https://coding-hwije.tistory.com/72 요기까지 진행이 되어 있어야한다. NCP에서 s3 스토리지를 만들었다. 스프링코드 구현 난 maven을 사용했기때문에 다음과 같이 의존성을 추가해 줬다.  com.amazonaws aws-java-sdk-s3 1.11.238 내가 구글링했을때 build.gradle 은 이거해주면 된다고 하긴한다.implementation 'org.springframework.cloud:spring-cloud-starter-aws:2.2.6.RELEASE'  application.properties 에 다음과 같이 적어줬다.s3 브라우저에 입력했던 accesskey와 secretkey 써준다.spring.s3.accessKey=54CB@#$@..

반응형