본문 바로가기

반응형

Backend

(183)
[Tiles] 프로젝트에 Tiles 적용 Tiles framework 란? 공식문서 Tiles allows authors to define page fragments which can be assembled into a complete pages at runtime. These fragments, or tiles, can be used as simple includes in order to reduce the duplication of common page elements or embedded within other tiles to develop a series of reusable templates. These templates streamline the development of a consistent look and feel across ..
[JPA] insert...ing Debugging - Controller - Service - Repository - save()... 찾았다 이 녀석 기존 프로젝트에서는 따로 ID 값을 부여하지 않아도 정상적으로 Auto Increase가 되었었다. 하지만 이번 demo프로젝트 진행시 해당 이슈가 발견되어서 이슈가 되고있다. 급한데로 count+1로 시퀀스를 강제로 늘려주고있기는 하지만 근본적인 해결책이랄까 석연찮은 부분이 있다. DB에 미리 적재된 Data가 이슈인것 같은데 H2말고 다른 DB사용시 별도로 Sequence를 관리하여 자동적으로 관리되도록 하여 특이사항이 발생하는지 정리해야겠다.
[JPA] Insert 방법 @Query(value = "INSERT INTO board (BOARD_SEQ, TITLE, CONTENT, BOARD_CTGR, BOARD_STATUS, MEMBER_ID) VALUES ((SELECT max(BOARD_SEQ)+1 FROM board), :title, :content, :boardCtgr, :boardStatus, :memberId)", nativeQuery = true) Board insertBoard(Board board); 보통은 save로 사용하지만 Query를 이용해 Insert를 해보고 싶었다. 하지만 Entity에서 요소를 못가져온다. 확인하다보니 1. @Query 내에서 직접 INSERT 문을 실행하는 것은 지원되지 않을 수 있음, 대신 JdbcTemplate 같은 다..
[Mybatis] 쿼리문 //리스트 길이 만큼 반복해서 COUNT SELECT COUNT(*) FROM public.cdp_dataset_request_variable WHERE var_seq = #{varSeq} // COUNT값 개수에 따라 1, 0 출력 SELECT COUNT(*) AS count_result FROM public.cdp_dataset_request_variable WHERE var_seq = #{varSeq} SELECT SUM(count_result) AS final_result FROM ( SELECT COUNT(*) AS count_result FROM public.cdp_dataset_request_variable WHERE var_seq = #{varSeq} ) AS counts SELECT 0 ..
[SQL] SELECT한 결과 Insert 혹은 Update SELECT 한 값 INSERT하기 INSERT INTO 테이블명 ( COLUMN1 , COLUMN2 , COLUMN3 ) SELECT COLUMN1 , COLUMN2 , COLUMN3 FROM 테이블명 WHERE 조건 SELECT 한 값 UPDATE하기 UPDATE 테이블명A SET 테이블명A.필드명 = 테이블명B.필드명 FROM 테이블명A, 테이블명B WHERE 테이블A.ID = 테이블B.ID
[Tomcat] Invalid byte tag in constant pool : 19, Tomcat로그 한글깨짐 [ Invalid byte tag in constant pool : 19 ] org.apache.catalina.startup.ContextConfig.processAnnotationsJar Unable to process Jar entry [META-INF/modules/java.base/classes/module-info.class] from Jar [file:/경로/WEB-INF/lib/java.base-2021-07-23.jar] for annotations org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 19 Invalid byte tag in constant pool : 1..
[Mybatis] 반복문 및 bind foreach : 반복문 SELECT * FROM POST P WHERE ID in #{item} "list"형태의 값으로 구분자를 ","로 구분하고, "("과 ")"로 감쌈 SELECT * FROM POST P WHERE ID in (val1, val2, val3, val4) bind : OGNL표현식으로 변수 생성 표현식으로 작성하기 용 SELECT * FROM BLOG WHERE title LIKE #{pattern}
[Mybatis] WHERE을 조금 더 편하게 사용하기 물론 여기에 나오는 것은 도움을 주는것이지 쿼리를 작성하는데 필수적인 부분은 아님 하지만 좀 더 간결하고 깔끔하게 작성하는데 도움이 될 수 있다. 아래와 같이 쿼리를 작성하면 에러가 발생한다. SELECT * FROM BLOG WHERE state = #{state} AND title like #{title} AND author_name like #{author.name} 만약 WHERE절에 아무런 조건이 붙어 있지 않은 경우 아래와 같이 쿼리가 동작하니 FAIL SELECT * FROM BLOG WHERE 만약 WHERE절에서 'WHERE AND'와 같은 구문이 만들어지는 경우 아래와 같이 쿼리가 동작하니 FAIL SELECT * FROM BLOG WHERE AND title like ‘someTitl..

반응형