게시글
질문&답변
2022.09.07
Spring Cloud OpenFeign 부터 계속 DTO쪽 에러가 발생하는데 원인을 모르겠습니다.
안녕하세요. 상세한 설명 감사합니다. 제가 깃허브 공유하려고 실습프로젝트를 옮기기 또 잘되고 그러네요. 우선 깃허브 url 공유하겠습니다. application.yml 에서 카카오 클라이언트 id, secret 이랑 loginForm client_id= 이부분만 삭제했습니다.
- 0
- 2
- 501
질문&답변
2022.09.01
3:40 부분 activeProfiles에 dev 출력과 로그 출력이 안 됩니다
application-dev.properties 기본 포트가 8081 이어서 http://localhost:8080/api/health/feign-test 로 하면 에러가 나오지 않나요..?
- 1
- 2
- 185
고민있어요
2022.02.21 23:19
QueryDSL 5.0 버전 gradle 설정 공유합니다. (TREATED_PATH 발생시)
- 1
- 2
- 3.1K
질문&답변
2021.11.27
안녕하세요. 간단한 인텔리제이 질문이 있습니다.
감사합니다. 혹시나 저와 같은 증상이 있는분을 위해 공유합니다. (사진) Editor > Code Style > Java > Code Generation 탭 > Final Modifier 에서 체크 풀면됩니다.
- 0
- 2
- 379
질문&답변
2021.09.06
Caused by: org.postgresql.util.PSQLException: Large Objects may not be used in auto-commit mode. 의 원인을 잘 모르겠습니다..
자문자답입니다. 이 다음 강의 이어서 진행했는데 해결이 되었습니다.
- 0
- 1
- 427
질문&답변
2021.08.05
안녕하세요. query에 대해 질문이 있습니다.
안녕하세요 강사님. JPA부터 다시 복습하고 오느냐 우선 중단하고 다시 연관관계부터 하면서 좀 늦었습니다 ! 위에 제가 질문했던 size에 관한건 이해가 다 됐습니다 ! 근데 다른 질문이 있습니다. 제가 사전 데이터를 이렇게 집어 넣었구요. 강사님꺼 전에 강의 다시 들어보면서 참고 많이 되었습니다. 그래서 쿼리를 보면 /* select professor from Professor professor where professor.username = ?1 or professor.position like ?2 escape '!' */ result = [Professor(id=5, userid=null, position=교수, sal=0, hiredate=null), Professor(id=6, userid=null, position=교수, sal=0, hiredate=null)] 이렇게 result로 출력결과 봤을 때 '교수' 라고 되어 있는 값만 나오는것도 확인을 했습니다. 그리고 공부하다 보니 like vs contains 에 대해도 알게 되었습니다. @Test void dynamicQuery4 () throws Exception { String nameParam = " 공학 " ; String nameParam2 = " 공학 " ; List Department > result = searchDepartment4 ( nameParam , nameParam2 ) ; System . out . println ( "result = " + result ) ; } private List Department > searchDepartment4 ( String nameCond , String locCond) { return queryFactory . selectFrom ( department ) . where ( departmentEq (nameCond) . or ( departmentLike (locCond))) . orderBy ( department . id . desc ()) . fetch () ; } private BooleanExpression departmentEq ( String nameCond) { return nameCond != null ? department . name . eq (nameCond) : null ; } private BooleanExpression departmentLike ( String locCond) { return ! StringUtils . hasText (locCond) ? null : department . loc . contains ( " 공학 " ) ; } 1) 여기서 제가 궁금한건 검증작업을 assertThat 으로 작성해서 할 때 교수라는 position 만 가지고 있는 사람만 OK 하고 싶은데요. 이걸 찾아보니 이렇게 하면 professor1, professor2 이쪽에 오류가 발생해서 이렇게 하는건 아닌거 같아서 assertThat(result).filterOn(professor) ' , 'QProfessor' 이렇게 밖에 안나오더라구요. 그래서 어떤방법으로 해야되는지 잘 모르겠습니다. assertThat ( result ) . extracting ( "position" ) . containsExactly ( professor1 , professor2 ) ; @BeforeEach void before () throws Exception { queryFactory = new JPAQueryFactory ( em ) ; Department departmentA = new Department ( " 정보통신공학과 " , "101 호 " ) ; Department departmentB = new Department ( " 컴퓨터공학과 " , "102 호 " ) ; Department departmentC = new Department ( " 음악과 " , "103 호 " ) ; Department departmentD = new Department ( " 국어국문과 " , "104 호 " ) ; em . persist ( departmentA ) ; em . persist ( departmentB ) ; em . persist ( departmentC ) ; em . persist ( departmentD ) ; Professor professor1 = new Professor ( " 김교수 " , " 교수 " , departmentA ) ; Professor professor2 = new Professor ( " 박교수 " , " 교수 " , departmentA ) ; Professor professor3 = new Professor ( " 조교수 " , " 부교수 " , departmentB ) ; Professor professor4 = new Professor ( " 최교수 " , " 부교수 " , departmentC ) ; Professor professor5 = new Professor ( " 이교수 " , " 전임강사 " , departmentD ) ; em . persist ( professor1 ) ; em . persist ( professor2 ) ; em . persist ( professor3 ) ; em . persist ( professor4 ) ; em . persist ( professor5 ) ; } @Test void dynamicQuery3 () throws Exception { String nameParam = " 김교수 " ; String positionParam = " 교수 " ; List Professor > result = searchDepartment3 ( nameParam , positionParam ) ; assertThat ( result . size ()) . isEqualTo (2) ; System . out . println ( "result = " + result ) ; } private List Professor > searchDepartment3 ( String nameCond , String positionCond) { return queryFactory . selectFrom ( professor ) . where ( nameEq (nameCond) . or ( positionLike (positionCond))) . fetch () ; } private BooleanExpression nameEq ( String nameCond) { return nameCond != null ? professor . username . eq (nameCond) : null ; } private BooleanExpression positionLike ( String positionCond) { return ! StringUtils . hasText (positionCond) ? null : professor . position . like (positionCond) ; } 2) 여기서 like 와 contains 의 차이점도 알게되었는데요. 여기서 결과값을 보면 result = [] 아무것도 안나오는데 이유를 잘 모르겠습니다..! @Test void dynamicQuery4 () throws Exception { String nameParam = " 공학 " ; String nameParam2 = " 공학 " ; List Department > result = searchDepartment4 ( nameParam , nameParam2 ) ; System . out . println ( "result = " + result ) ; } private List Department > searchDepartment4 ( String nameCond , String locCond) { return queryFactory . selectFrom ( department ) . where ( departmentEq (nameCond) . or ( departmentLike (locCond))) . orderBy ( department . id . desc ()) . fetch () ; } private BooleanExpression departmentEq ( String nameCond) { return nameCond != null ? department . name . eq (nameCond) : null ; } private BooleanExpression departmentLike ( String locCond) { return ! StringUtils . hasText (locCond) ? null : department . loc . contains ( " 공학 " ) ; } 1) DDL CREATE TABLE DEPARTMENT ( int(4) deptno NotNULL PRI varchar(16) dname NotNULL varchar(100) loc ) CREATE TABLE PROFESSOR ( int(11) profno NotNull PRI varchar(50) name NotNull varchar(50) userid NotNull varchar(20) position NotNull int(10) sal NotNull datetime hiredate NotNull int(11) comm int(11) deptno NotNull MUL ) 3) 원하는 최종 SELECT SQL SELECT deptno, dname, loc FROM department WHERE dname LIKE conat('%', '공학', '%') ORDERY BY deptno DESC 입니다. 감사합니다.
- 0
- 4
- 578
질문&답변
2021.07.21
안녕하세요. query에 대해 질문이 있습니다.
안녕하세요. 강사님 제가 개인적으로 해보다가 질문이 있어서 다시 남기게 되었습니다. 제가 이런식으로 해보았는데요. 쿼리도 /* select department from Department department where department.name = ?1 or department.name = ?2 or department.name = ?3 or department.name = ?4 or department.loc = ?5 */ 이렇게 다 나가구요. /* select department from Department department where department.name = '컴퓨터공학과'1 or department.name = '정보통신공학과'2 or department.name = '음악과'3 or department.name = '국어국문과'4 or department.loc = '104호'5 */ 이렇게 해서 assertThat(result.size()).isEqualTo(5)); 로 하면 org.opentest4j.AssertionFailedError: expected: 5 but was : 4 Expected :5 Actual :4 4라고 나오더라구요. 저는 왜 4인지 잘 모르겠습니다. ㅜ 감사합니다. @Test void testDepartment () throws Exception { String nameParam1 = " 컴퓨터공학과 " ; String nameParam2 = " 정보통신공학과 " ; String nameParam3 = " 음악과 " ; String nameParam4 = " 국어국문과 " ; String locParam = "104 호 " ; List Department > result = searchDepartment ( nameParam1 , nameParam2 , nameParam3 , nameParam4 , locParam ) ; assertThat ( result . size ()) . isEqualTo (5) ; } private List Department > searchDepartment ( String nameParam1 , String nameParam2 , String nameParam3 , String nameParam4 , String locParam) { BooleanBuilder builder = new BooleanBuilder () ; if (nameParam1 != null ) { builder . or ( department . name . eq (nameParam1)) ; } if (nameParam2 != null ) { builder . or ( department . name . eq (nameParam2)) ; } if (nameParam3 != null ) { builder . or ( department . name . eq (nameParam3)) ; } if (nameParam4 != null ) { builder . or ( department . name . eq (nameParam4)) ; } if (locParam != null ) { builder . or ( department . loc . eq (locParam)) ; } return queryFactory . selectFrom ( department ) . where ( builder ) . fetch () ; }
- 0
- 4
- 578
질문&답변
2021.05.26
강사님 QueryDSL이 안됩니다..
안녕하세요. 강사님 강의 도중 질문이 있어서 문의드립니다.~ OrderRepository 랑 OrderService 수정 후에 주문 내역부분에 서 500에러가 발생합니다. 그래서 확인해보니 템플릿 파싱 에러라고 하는데 이런 경우에는 어디쪽을 살펴보면 괜찮을까요? There was an unexpected error (type=Internal Server Error, status=500). An error happened during template parsing (template: "class path resource [templates/order/orderList.html]") org.thymeleaf.exceptions.TemplateInputException: An error happened during template parsing (template: "class path resource [templates/order/orderList.html]") Exception processing template "order/orderList": An error happened during template parsing (template: "class path resource [templates/order/orderList.html]") (사진) (사진) (사진) 감사합니다.
- 0
- 3
- 5.7K
질문&답변
2021.05.11
postman에서 400 에러가 발생합니다.
(사진) 안녕하세요 강사님. 처음에 강의에 나온대로 했는데도 같은 증상입니다. ㅜ 그리고 처음 스크린샷은 10:19 에 나오는대로 "id": 2 가 나오게 할려고 했었습니다.
- 0
- 3
- 869
질문&답변
2021.05.04
영상 06:09쯤 단축키가 궁금합니다.
안녕하세요. 아이고.. 제가 6:09 초에 있는걸 17:10 이라고 잘못썼네요 ㅎㅎ;;
- 0
- 2
- 175