IT/development210 [jpa] querydsl 세팅(feat. 환경설정만 다룸) 목차 JPA를 사용할 때 동적 및 복잡한 쿼리 작성 시 querydsl은 선택이 아닌 필수인데 이게 세팅하기가 좀 까다로움 그래서 이 곳에 내가 나중에 보기위해 메모를 해둠 처음 한번만 해두면 나중엔 복붙/수정해서 사용하면 됨 이 글에서는 querydsl 기본 세팅 방법만 다룸 mybatis와 비교해서 개인적으로 제일 좋은 점은 mybatis는 런타임 때 해당 쿼리를 돌려봐야지만 에러를 알 수 있지만 querydsl은 자바코드라서 오탈자가 문법 에러가 있으면 컴파일단계에서 바로 알 수 있다. querydsl 세팅 방법 😎 build.gradle 설정 😄 // 스프링부트 2.6x 버전에서 세팅함 buildscript { ext { queryDslVersion = "5.0.0" } } plugins { id.. IT/development 2022. 11. 21. [mybatis] mybatis 배열 저장(feat. foreach) 위와 같이 insert를 1개 이상 하는 로직을 만들게 되었고 미래의 내가 보기 위해 기록한다. 😄클라이언트에서 배열로 값을 받아서 DB에 저장하는 기능이 필요했다.참고로 mysql과 Oracle은 문법이 다르다.Oracle은 아직 안해봐서 그건 나중에 알아보겠다.Controller@RequestParam(value = "변수명[]") String[] avengers 이런식으로 받음@PostMapping("")public ResponseEntity createArray(@RequestParam(value = "avengers[]") String[] avengers) throws Exception{Service.insertAvengers(avengers);생략...Servicepublic void ins.. IT/development 2022. 11. 21. [mybatis] mybatis 동적쿼리(feat. <where></where>) mybatis Dynamic SQL 😃계속 실수 했던 동적쿼리이다.오늘 나는 이걸 이해 했지만 미래의 넌 또 까먹을 수 있으니 여기에 메모해 둔다.동적 WHERE회원 테이블에서 회원이름과 이메일의 존재에 따라 동적으로 WHERE을 붙여서 검색하는 예시이다.기존에는 mapper xml에서 아래처럼 작성했었다. 쿼리를 작성하고는 반드시 단위 테스트를 여러번 해봐야 한다는 걸 또 깨달았다.(그걸 이제 알았니? 😥) SELECT * FROM member WHERE member_name = #{memberName} WHERE email = #{email} 역시 개발하면서 JUnit으로 단위 테스트를 계속.. IT/development 2022. 11. 20. [mybatis] foreach parameterType hashmap 예제 미래의 나를 위해 기록한다. 😃mybatis에서 foreach를 돌릴 때 list는 이제 좀 익숙해 졌는데 map은 아직 좀 서툰 느낌이 들어 기록한다.예제는 동적으로 insert문의 내용과 SELECT문의 내용을 채우는 예제이다.아직은 완성형이 아니고 아이디어만 녹인거라 코드가 매우 허술하지만 업데이트 해 나갈 것이다. jpa를 쓰지 않는 프로젝트에서 쿼리문 작성 시 오탈자 방지와 퍼포먼스 향상을 위해 작성하는 중결국 단순반복 노가다를 많이 줄이기 위함이다.테이블 생성CREATE TABLE `t_member`(`user_seq` bigint auto_increment,`user_id` varchar (250),`user_name` varchar(250),primary key(user_seq));소스m.. IT/development 2022. 11. 20. [jQuery]radio/checkbox 체크 여부 확인 목차 [jQuery]radio/checkbox 체크 여부 확인 라디오 버튼 체크 여부 확인 체크된 값의 길이 유무로 체크하는 방법(물론 다른 방법도 있음) // name이 radio인 라디오 버튼 체크 여부 확인 예제 if($(':radio[name="radio"]:checked').length < 1){ alert('라디오버튼을 체크 해주세요.\n안그러면 못넘어 갑니다!!!!!!!'); // 첫번 째 라디오버튼에 포커스 $(':input:radio[name=radio]:eq(0)').focus(); return false; } 체크박스 체크 여부 확인1 // name이 checkbox인 체크박스 체크 여부 확인 예제 if($(':radio[name="checkbox"]:checked').length <.. IT/development 2022. 11. 19. [IDE/SVN]eclipse svn branch 생성 목차 eclipse svn branch 생성 프로젝트를 진행하다 보면 같은 프로젝트를 다르게 관리해야 되는 경우가 생김, 이 때 브랜치를 만들어서 관리하면 효율적임 브랜치를 따로 가져가고 최종 반영 시 메인 브랜치인 trunk 브랜치와 merge해서 통합시키면 됨 eclipse에서 생성하는 걸 가정 그리고 기존 프로젝트와 동일한 프로젝트명은 기존 프로젝트를 덮어 쓰게 되니 branch아래의 프로젝트 명을 변경해주는 걸 권장 바뀐 프로젝트명으로 check out 받아서 작업하면 됨 위 처럼 프로젝트명을 변경해서 check out받는 방법도 있고 svn의 switch 기능을 이용해서 main에서 다른 branch로 변경해서 관리하는 방법도 있음 위처럼 210928_xxx라는 branch를 새로 생성 한 상태.. IT/development 2022. 11. 19. [springBoot] 페이지네이션 처리(feat. MariaDB) 목차 페이지네이션 처리 관련해서 미래의 내가 보기 위해 기록 😃 웹개발의 기초 중 기초라고 할 수 있는 페이지네이션(페이징) 처리에 대해서 간략하게 정리 그동안은 원리를 제대로 이해하지 못하고 썼다면 이제 핵심위주로 잘 정리해 보자. 시간 상 페이징 처리는 디자인은 위처럼 하나도 안 이쁘지만 데이터가 잘 나오는지 위주로 작성함 개발환경 back-end: springBoot 2.6.13(jdk 1.8)/mybatis 3.5.9/h2 database H2 2.1.214 (2022-06-13)(mode는 mySQL로 설정) front-end: thymeleaf/javascript/jQuery 예시를 위한 테이블 CREATE TABLE t_board( board_id bigint auto_increment, t.. IT/development 2022. 11. 19. [spring boot/mybatis] 쿼리 로그 정렬 및 기타(feat. log4jdbc) 목차 mybatis log4j 쿼리 로그 정렬 및 기타 😄 mybatis와 log4j를 처음 사용할 때는 아래처럼 쿼리가 일렬로 나오고 parameter값이 "?"로 표시된다. 짧은 쿼리면 상관 없지만 긴 쿼리의 경우에는 Parameters로 나온 값을 ?에 복붙을 해서 쿼리를 실행해 봐야 된다. 시간도 시간이고 가독성도 안좋아서 개발시에는 여간 불편한게 아니다. 그래서 log4jdbc를 이용해서 쿼리를 보기 좋게 정렬/정리하는 방법을 기록한다. log4jdbc 의존성 추가 🤗 maven 기준 pom.xml에 의존성 추가 org.bgee.log4jdbc-log4j2 log4jdbc-log4j2-jdbc4.1 1.16 gradle 기준 build.gradle에 의존성 추가 // 여기에 추가 dependen.. IT/development 2022. 11. 19. [mybatis] map을 list로 받아서 화면에 그리기 목차 미래의 내가 보기 위해 기록함 테스트 테이블 😃 CREATE TABLE `tmp_board`( `board_seq` bigint auto_increment, `title` varchar (30), `contents` varchar (30), `name` varchar (30), `reg_date` timestamp, `update_date` timestamp, primary key(board_seq) ); mapper xml SELECT * FROM t_board ORDER BY reg_date DESC mapper interface 😊 package study.tmp11.mapper; import org.apache.ibatis.annotations.Mapper; import study.tmp11.. IT/development 2022. 11. 19. [IDE]dbeaver 한글 깨짐 조치 dbeaver 한글 깨짐 조치dbeaver 최초 실행 후 인코딩 설정 때문에 데이터에서 한글이 깨져서 나올 수 있음1. dbeaver.ini 수정😀dbeaver는 이클립스 기반이라서 ini파일로 간단하게 조치가 가능함권한 때문에 편집이 안될 수도 있으니 반드시 에디터를 관리자 권한으로 실행관리자 실행해도 안될 경우 ini파일을 바탕화면으로 빼서 편집 후 복사 붙여 넣기아래처럼 dbeaver.ini파일을 에디터로 열어서 인코딩 설정 추가-Dfile.encoding=UTF-8출처 : https://bbokkun.tistory.com/167 DBeaver UTF-8 설정, 한글깨짐 해결하기DBeaver 기본설명 (위키백과) DBeaver는 SQL 클라이언트이자 데이터베이스 관리 도구이다. 관계형 데이터베이스.. IT/development 2022. 11. 18. 이전 1 ··· 18 19 20 21 다음