일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 내일배움캠프
- 메서드
- Diary 해우소
- 포맷은 최후의 보루
- #스파르타내일배움캠프TIL
- 회고록
- 스파르타내일배움캠프
- 생성자
- static
- Token
- KPT
- 감사기록
- 스레드
- Java
- #내일배움캠프
- Git
- Java의 이점
- #스파르타내일배움캠프
- 성장기록
- GitHub
- 해우소
- 스파르타내일배움캠프TIL
- diary
- Github_token
- TiL_1st_0419
- 변수의 다양성
- JVM
- 객체지향 언어
- 인스턴스
- 클래스
- Today
- Total
목록2024/06 (55)
몬그로이
QueryDSL 이란Domain Specific Language 를 사용하여 SQL 을 생성하는 도구Hibernate의 @Query 어노테이션을 사용하여 JPQL을 정의하거나,JDBC Template을 사용하여 직접 SQL 쿼리를 작성하는 대신 사용 타입 안정성Java 언어의 타입 시스템을 활용하므로 코드를 컴파일할 때 타입 안정성을 보장SQL 문법 오류를 미리 잡을 수 있음 객체지향적인 쿼리Java 언어의 문법을 사용하여 데이터베이스 쿼리를 표현하므로개발자가 직관적으로 이해하고 유지보수할 수 있음 동적 쿼리 작성의 용이성풍부한 문법과 메서드 체이닝을 통해 동적 쿼리를 간편하게 작성할 수 있습니다. 필요에 따라 조건을 추가하거나 조합할 수 있어 복잡한 쿼리도 효율적으로 처리할 수 있습니다. 다양한 데이..
1. Auditing- 기본 사용법- 감사기능(By)까지 추가하여 사용하는 방법 두 가지 2. Dynamic Insert/UpdateAuditing누가/언제 생성/수정 했는지 Column에 기록하는 기능 1. 메인 application 에 @EnableJpaAuditing 를 달아준다@EnableJpaAuditing@SpringBootApplicationpublic class Application { 2. Auditing 기능을 사용할 Entity 클래스 위에 @EntityListeners(AudigingEntity.class) 를 달아준다@Getter@MappedSuperclass@EntityListeners(AuditingEntityListener.class)public class TimeStamp ..
SQL : Table 명으로 쿼리짤때 쓰이는 언어 (쓰이는곳. JDBC, SQL Mapper)JPQL : Entity 명으로 쿼리짤때 쓰이는 언어 (쓰이는곳. JPQL, QueryDSL) JPQL (Java Persistence Query Language)Table 이 아닌 Entity(객체) 기준으로 작성하는 쿼리EntityManger 또는 @Query 구현체를 통해 JPQL 쿼리를 사용할 수 있다. EntityMananger.createQuery()쿼리 문자열과 Entity 를 직접 넣어서 쿼리를 작성한다.setParameter 와 같이 key, value 문자열을 통해서 쿼리 파라미터를 매핑할 수 있다.@Testpublic void testEmCreateQuery() {String qlString..
https://mongroy.tistory.com/130 SQL 03colum 선택select * table 선택FROM payments Column명 이름 바꿔 조회하기select order_id ord_no, price "가격", 대소문자 구별WHERE cuisine_type='korean'WHERE cuisine_type='Korean' 영문은 작은 따옴표(') 붙여주고한mongroy.tistory.comhttps://mongroy.tistory.com/131=0, over_time, 0" data-og-host="mongroy.tistory.com" data-og-source-url="https://mongroy.tistory.com/131" data-og-url="https://mongroy.t..
필요한 데이터가 서로 다른 테이블에 있을 때 조회하기기본 형태1. food_orders 가 가진 order_id 기준으로 조회 (payments 는 가지지 않은 id의 값도 조회됨)select *from food_orders left join payments on food_orders.order_id = payments.order_id 2. food_orders 와 payments 둘 다 가지고 있는 order_id 기준으로 조회select *from food_orders inner join payments on food_orders.order_id = payments.order_id 테이블에 이름 부여하여 활용한 left joinselect f.order_id , f.customer_..
colum 선택select * table 선택FROM payments Column명 이름 바꿔 조회하기select order_id ord_no, price "가격", 대소문자 구별WHERE cuisine_type='korean'WHERE cuisine_type='Korean' 영문은 작은 따옴표(') 붙여주고한글은 큰 따옴표 (") 붙여주기 - 문자 취급 select name "이름", email "e-mail"* e-mail 에는 dash 가 들어가 있으므로 문자로 취급해야 함value 값 지정하여 row 선택WHERE pay_type='card' value 범위 지정하여 row 선택WHERE gender 'male'WHERE age between 21 and 23WHERE age 21, 23 '해당..
subquery 문 기본 구조select column1, special_columnfrom( /* subquery */select column1, column2 special_columnfrom table1) a 음식 준비 시간이 25분 초과 하는 경우 찾아내기select order_id, restaurant_name, if(over_time>=0, over_time, 0) over_timefrom(select order_id, restaurant_name, food_preparation_time-25 over_timefrom food_orders) a 음식점의 평균 단가별 segmentation 을 진행하고, 그룹에 따라 수수료 연산하기(수수료 구간 - 5000원 미만 0.05% / 20000..
https://mongroy.tistory.com/126 ORMORM 은 DAO 또는 Mapper 를 통해서 조작하는것이 아니라테이블을 아예 하나의 객체(Object)와 대응시켜 버립니다.객체지향(Object) 을 관계형 데이터베이스(Relation) 에 매핑(Mapping) 한다는건정말 많은 난mongroy.tistory.comhttps://mongroy.tistory.com/127 Spring Data JPACasade (영속성 전이)사용 조건양쪽 엔티티의 라이프사이클이 동일하거나 비슷해야한다.예를들어, 게시글이 삭제되면 첨부파일도 같이 삭제 되어야 한다.대상 엔티티로의 영속성 전이는 현재 엔mongroy.tistory.comhttps://mongroy.tistory.com/128 페이징PagingA..