반응형 Back-End/Spring Boot39 Spring Boot - Maven Repository 확인하기 💁♀️ 자바는 src/main/java 그 외의 파일은 src/main/resource에 저장됩니다. 💡 Maven Repository 💁♀️ Maven Repository에서 Thymeleaf Layout Dialect 라이브러리를 설치할 수 있습니다. ⭐ 버전 주의하기! ◾ Refresh Gradle Project를 선택합니다. 2022. 7. 22. Spring Boot - Spring DATA JPA Querydsl 💡Querydsl 💁♀️ @Query 어노테이션 안에 JPQL문법으로 문자열을 입력하기 때문에 잘못 입력하면 컴파일 시점에 에러를 발견할 수 없습니다. 이를 보완하는 방법으로 Querydsl가 있습니다. 💡Querydsl 장점 ▪️ 고정된 SQL문이 아닌 조건에 맞게 동적으로 쿼리를 생성할 수 있습니다. ▪️ 비슷한 쿼리를 재사용할 수 있으며 제약 조건 조립 및 가독성을 향상시킬 수 있습니다. ▪️ 문자열이 아닌 자바 소스코드로 작성하기 때문에 컴파일 시점에 오류를 발견할 수 있습니다. ▪️ IDE의 도움을 받아서 자동 완성 기능을 이용할 수 있기 때문에 생산성을 향상시킬 수 있습니다. 💁♀️Querydsl을 사용하기 위해서는 설정을 추가해야합니다. ▪️ pom.xml 파일의 사이에 의존성 추가 co.. 2022. 7. 22. Spring Boot - 쿼리 메소드 💡쿼리 메소드 문법 ▪️ 실제 값은 메서드의 파라미터 값으로 준다. ▪️ 알아서 where절을 만든다. find + ( 엔티티 이름 ) + By + 변수이름 💡 쿼리 메소드 Sample 및 JPQL snippet Distinct findDistinctByLastnameAndFirstname select distinct … where x.lastname = ?1 and x.firstname = ?2 And findByLastnameAndFirstname … where x.lastname = ?1 and x.firstname = ?2 Or findByLastnameOrFirstname … where x.lastname = ?1 or x.firstname = ?2 Is、Equals findByFirstname.. 2022. 7. 22. Spring Boot - Repository 설계하기 💡 JPA Repository ▪️ JPA의 담당은 JPA Repository이다. ▪️ Repository는 dao와 같은 역할을 한다. ( 액세스, write, delete... ) 💁♀️ JPA Repository 인터페이스 생성입니다. @Repository public interface SampleEntityRepository extends JpaRepository { } 출처: https://araikuma.tistory.com/329 [프로그램 개발 지식 공유:티스토리] 📃 예제 public interface ItemRepository extends JpaRepository ▪️ Item과 관련된 테이블 Repository 설계 ▪️ Item : 테이블, 변수, 컬럼... ▪️ 무조건 Lon.. 2022. 7. 22. Spring Boot - 엔티티 매핑 관련 어노테이션 어노테이션 설명 @Entity 클래스를 엔티티로 선언 ( db에 테이블을 만들 것이다. ) @Table 엔티티와 매핑할 테이블을 지정 ( 테이블 명칭 지정 ) @id 테이블의 기본키에 사용할 속성을 지정 ( PK ) @GeneratedValue 키 값을 생성하는 전략 명시 ( 키 생성 방법 ) @Column 필드와 컬럼 매핑 ( 컬럼 명칭 정하기 ) @Lob BLOB, CLOB 타입 매핑 ( Binary large object, Charactor large object. db에서 기록할 때 다른 곳에 저장해두고 주소만 지정 ) @CreationTimestamp insert시 시간 자동 저장 @UpdateTimestamp update시 시간 자동 저장 @Enumerated enum 타입 매핑 ( 컴퓨터가 .. 2022. 7. 22. Spring Boot - Thymeleaf 💡 Thymeleaf ▪️ Thymeleaf의 확장자명은 .html이다. ▪️ Thymeeleaf의 문법은 html 태그 안쪽에 속성으로 사용된다. ▪️ Thymeleaf의 장점은 코드의 길이가 짧아진다는 것이다. ▪️ 타임리프 태그는 서버와 별개로 동작한다. 🔸th:text ▪️ 텍스트 문자 출력 ▪️ " " 큰 따옴표 꼭 적을 것 데이터를 주고받을 때 Entitiy 클래스 자체를 반환하면 안되고 데이터 전달용 객체를 생성해서 사용해야한다? 요청과 응답 객체가 항상 엔티티와 같지 않기 때문이다. 🔸th:each ▪️ 반복문 ▪️ 여러 개의 데이터를 가지고 있는 컬렉션 데이터를 화면에 출력한다. ▪️ 반복함으로서 코드를 줄일 수 있다. ▪️ "itemDto" 객체는 임의로 정하고, ${itemDt.. 2022. 7. 21. Spring Boot - JPA 💡 JPA 💁♀️ JPA에 대해서 알아봅시다. ▪️ JPA ( Java Persistence API ) ▪️ 자바 ORM ( Object Relational Mapping ) 기술에 대한 API 표준 --> ORM : 객체와 관계형 데이터베이스를 매핑해주는 것 📌 문제점 ▪️ 자바 객체를 SQL을 통해 데이터베이스를 관리하게 하고 데이터베이스에 저장된 데이터를 자바 애플리케이션에서 사용하려면 SQL을 통해 다시 자바 객체로 변환하는 반복적인 작업을 해야 한다. --> 개발자가 SQL을 매핑하는 역할을 반복해야 한다. ▪️ 객체를 데이터베이스에 넣기 위해서는 SQL문을 통해 변환해서 저장해야 하고, 데이터베이스에서 객체를 다시 꺼내오기 위해서는 복잡한 SQL문을 다시 작성해야 한다. --> 결국 객체를 .. 2022. 7. 21. Spring Boot - 어노테이션 종류 💡어노테이션 💁♀️어노테이션의 종류에 대해서 알아봅시다. 💡@Controller ▪️ View를 반환한다. ▪️ () 괄호 안에 있는 경로와 컨트롤러를 매핑한다. ▪️ @RequestMapping("home")이라면, src/main/webapp/WEB-INF/views/home.jsp와 연결해준다. ▪️ 하단의 설정에 따라 "home"을 리턴하면, home 앞에는 prefix 부분, 뒷 부분에는 suffix부분이 자동으로 붙는다. ▪️ /WEB-INF/views/home.jsp가 된다. ▪️ @Controller는 jsp나 Thymeleaf등을 찾아낸다. ▪️ 결과를 json이나 문자열이 아닌 페이지로 받으려면 @Controller를 사용한다. ▪️ 주소 처리가 들어오면 page로 받는다. ▪️ 클래.. 2022. 7. 20. Spring Boot - jsp 파일 생성, web 확인 💡jsp 파일 생성 ▪️ src - main - webapp - WEB-INF - views - base - New - Other... - Web - JSP File - .jsp 파일 생성 📃index1.jsp ▪️ 서버에서 id, name값을 보내줄 것이라고 짐작할 수 있다. ▪️ return index --> index.jsp --> 만약 base하위에 index 폴더가 있다면 "base/index" 아이디 : [ ${id}] 성 명 : [${name}] 📃index3.jsp - 커맨드 객체 사용 ◾ 접근할 때, member.id, member.name으로 접근하여 사용한다. ◾ 멤버함수, 멤버변수를 호출한다. 📌static클래스 / 일반 클래스 ◾ static클래스라면 접근할 때 Member.id로.. 2022. 7. 20. 이전 1 2 3 4 5 다음 728x90 반응형