일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- SpringBoot
- git
- Board
- rpa
- Scanner
- 상속
- Uipath
- spring
- string
- Eclipse
- 이클립스
- Thymeleaf
- jsp
- 배열
- Oracle
- Java
- html
- API
- 조건문
- View
- JDBC
- MVC
- Database
- 문자열
- Controller
- db
- Array
- React
- mysql
- jquery
- Today
- Total
목록개발자 공부/🎀 스프링 공부 (18)
유정잉

[ CRUD 게시판 만들기 ] • 목록 화면(번호 1) - 전체 목록을 페이징 처리해서 조회할 수 있고, 제목/내용/작성자 항목으로 검색 과 페이징 처리를 가능하게 합니다. • 등록 화면(번호 2) - 새로운 글을 등록할 수 있고, 등록 처리 후 다시 목록 화면으로 이동하게 됩니다. • 조회 화면(번호 3) - 목록 화면에서 특정한 글을 선택하면 자동으로 조회 화면으로 이동합니다. 조회 화면에서는 수정/삭제가 가능한 화면(번호 4)으로 버튼을 클릭해서 이동할 수 있습니다. • 수정/삭제 화면(번호 4)- 수정 화면에서 삭제가 가능하고 삭제 후에는 목록 페이지로 이동합니다. 글을 수정하는 경우에는 다시 조회 화면(번호 2)으로 이동해서 수정된 내용을 확인할 수 있습니다.기능U..

- JPA를 통해서 관리하게 되는 객체(이하 엔티티객체(Entity Object))를 위한 엔티티 클래스 - 엔티티 객체들을 처리하는 기능을 가진 Repository [ @GeneratedValue(strategy = GenerationType.IDENTITY) ]AUTO(default) : JPA 구현체(스프링부트에서는 Hibernate)가 생성 방식을 결정IDENTITY : 사용하는 데이터베이스가 키 생성을 결정 MySQL이나 MariaDB의 경우 auto increment 방식을 이용SEQUENCE : 데이터베이스의 sequence를 이용해서 키를 생성. @SequenceGenerator와 같이 사용TABLE : 키 생성 전용 테이블을 생성해서 키 생성 @TableGenerator와 함께 사용..

1) start.spring.io로 SpringBoot Project 생성 -> Spring Boot Dev Tools, Spring Web, Lombok, MySQL Driver, Thymeleaf, Psring Data JAP 2) application.properties 파일에 DB 연결 설정 spring.datasource.url=jdbc:mysql://localhost:3306/yujungspring.datasource.username=rootspring.datasource.password=00000000spring.jpa.hibernate.ddl-auto=update 3) controller와 html 파일 생성 -> html에서 Thymeleaf를 통해 데이터 값 출력 -> Th..

전체적인 흐름사용자 요청 (Client Request)사용자가 웹 브라우저를 통해 특정 URL을 요청합니다.Controller요청이 들어오면 스프링 프레임워크는 적절한 컨트롤러로 요청을 전달합니다.컨트롤러는 URL 요청을 매핑하고 요청을 처리합니다. 예를 들어, 사용자가 /user/list URL을 요청하면 UserController가 이를 처리합니다.Service컨트롤러는 비즈니스 로직을 처리하기 위해 서비스 계층을 호출합니다. 서비스 계층은 비즈니스 로직을 담당합니다.예를 들어, UserController는 UserService를 호출하여 사용자 목록을 가져옵니다.Mapper (Interface 및 XML)서비스 계층은 데이터베이스와 상호 작용하기 위해 매퍼를 호출합니다. 매퍼는 MyBatis와 같은..
@PostConstruct, @PreDestroy 이 두 애노테이션을 사용하면 가장 편리하게 초기화와 종료를 실행할 수 있다. [ @PostConstruct, @PreDestroy 애노테이션 특징 ]최신 스프링에서 가장 권장하는 방법이다. 애노테이션 하나만 붙이면 되므로 매우 편리하다.패키지를 잘 보면 `javax.annotation.PostConstruct` 이다. 스프링에 종속적인 기술이 아니라 JSR-250 라는 자바 표준이다. 따라서 스프링이 아닌 다른 컨테이너에서도 동작한다. 컴포넌트 스캔과 잘 어울린다.유일한 단점은 외부 라이브러리에는 적용하지 못한다는 것이다. 외부 라이브러리를 초기화, 종료 해야 하면 @Bean의 기능을 사용하자. [ 정리 ]@PostConstruct, @PreDestr..
@Controller와 @RestController는 둘 다 스프링 MVC 애플리케이션에서 사용되는 어노테이션으로, HTTP 요청을 처리하는 컨트롤러를 정의할 때 사용됩니다. 그러나 두 어노테이션은 약간의 차이가 있습니다. [ @Controller ]@Controller 어노테이션이 붙은 클래스는 전통적인 스프링 MVC의 컨트롤러로 간주됩니다.주로 HTML 뷰를 반환하는 데 사용됩니다.메서드가 String, ModelAndView, View 등과 같은 HTML 뷰를 반환하도록 정의될 수 있습니다.기본적으로 데이터를 JSON이나 XML 형식으로 반환하지 않습니다.import org.springframework.stereotype.Controller;import org.springframework.web.b..
@Componentscan과 @Configuration + @Bean은 비슷한 목적을 가지고 있지만 약간 다른 방식으로 작동합니다. [ @Componentscan ] 이 어노테이션은 Spring에게 특정 패키지 이하에서 컴포넌트를 찾아서 Bean으로 등록하라고 지시합니다. Spring은 해당 패키지와 그 하위 패키지를 스캔하여 @Component, @Repository, @Service, @Controller 등과 같은 어노테이션이 붙은 클래스를 찾아 빈으로 등록합니다.구성 요소 스캔은 스프링이 클래스 경로에서 구성 요소를 찾아서 자동으로 빈으로 등록하는 메커니즘입니다. 구성 요소는 주로 @Component 어노테이션이 붙은 클래스들을 말합니다. 그러나 @ComponentScan은 @Component 외..
모델 어트리뷰트(Model Attribute)와 리퀘스트 파라미터(Request Parameter)는 웹 애플리케이션에서 데이터를 전달하는 방식에 있어서 차이가 있습니다. [ 모델 어트리뷰트 (Model Attribute) ]모델 어트리뷰트는 컨트롤러에서 뷰로 데이터를 전달하는 데 사용됩니다.주로 컨트롤러에서 처리한 결과나 데이터를 뷰에 전달할 때 사용됩니다.Spring MVC의 Model 객체를 통해 뷰로 전달됩니다.뷰 템플릿(JSP, Thymeleaf 등)에서는 모델 어트리뷰트에 접근하여 화면에 데이터를 표시합니다.@Controllerpublic class MyController { @GetMapping("/example") public String example(Model model) {..
[ 다양한 의존관계 주입 방법 ]1. 생정자 주입 2. setter 주입(=수정자 주입) 3. 필드 주입 4. 일반 메서드 주입 1) 생성자 주입 : 생성자를 통해서 의존 관계를 주입 받는 방법 특징 : 생성자를 호출 시점에 딱 1번만 호출 되는 것리 보장 됨. "불변, 필수" 의존관계에 사용 (=공연 중간에 배우가 바뀌면 안 됨, final) 중요 : 만약 생성자가 딱 1개만 있다면 @Autowired를 생략해도 된다 !! (생성자가 2개 이상이면 안 됨)@Componentpublic class OrderServiceImple implements OrderService{ private final MemberRepository memberRepository; //final이 있으면 무조..

@ComponentScan : 클래스를 스캔해서 스프링 빈으로 등록해줌 (기존AppConfig와 다르게 @Bean으로 등록 X)컴포넌트 스캔을 사용하면 `@Configuration` 이 붙은 설정 정보도 자동으로 등록되기 때문에, AppConfig, TestConfig 등 앞서 만들어두었던 설정 정보도 함께 등록되고, 실행되어 버린다. 그래서 `excludeFilters` 를 이용해서 설정정보는 컴포넌트 스캔 대상에서 제외했다. 보통 설정 정보를 컴포넌트 스캔 대상에서 제외하지는 않지만, 기존 예제 코드를 최대한 남기고 유지하기 위해서 이 방법을 선택했다. 1) AutoAppConfig에 @ComponentScan 등록package hello.core;import org.springframework.c..