개발중 (632) 썸네일형 리스트형 List<vo> 에서 특정(고유 일련번호로) vo 찾기 지금 구현중 인 것은 일련번호 (고유 일련번호) 를 보냈을 경우에 LIST 에서 특정한 VO 를 반환 해줘야 하는 상황이다. SQL 쿼리로 생각하면 그냥 이렇게 하면 되지만 SELECT * FROM TABLENAME WHERE 일련번호 = #{==} 난 JAVA 에서 할꺼니까 늘 어려운 JAVA 람다식을 한번 더 들여다 보자. findAny 순서에 상관없이 조건에 충족한 요소를 찾고 싶을 때 public IssueVo getIssueInfo ( int seq ) { IssueVo vo = BinsooList.parallelStream() .filter(p -> p.getseq() == seq) .findAny() .get(); return vo; } 💡 글이 도움이 되었다면 Click 💡 MYBATIS 에서 LIKE 절 사용하기 검색어를 입력할 때는 특정한 언어를 찾는다기 보다는 "이 단어가 포함이 되어있는지를 확인해줘 : )" 되게 간단한 문제인데 인터넷에 누가 이상한 정보 올려놔서 내가 다시 기록 틀린 예 AND LMTR_WORD LIKE '${litrSearchWord}' AND LMTR_WORD LIKE '%'+${litrSearchWord}+'%' 맞는 예 AND LMTR_WORD LIKE '%${litrSearchWord}%' org.mybatis.spring.MyBatisSystemException: nested exception is 에러 org.mybatis.spring.MyBatisSystemException: nested exception is nested exception is ~~~ Error querying database. Mapped Statements collection does not contain value for issueCode.codeList123 이게 못 찾아가겠다는 오류인 것 같은데 DAO 에서 BATIS 를 못찾아가고 있는 이 상황이 🤦♀️ 시도 ✖ mapper nane 바꿔보기 ✖ vo 확인해보기 ✖ result type 바꿔보기 다영선배 찬스 아래에서 발생한 문제이다. 우리 시스템은 설정 파일 자체에서 SqlSession 명까지 선언을 해주었다. 그래서 아래처럼 일치시켜 줘야 한다. 쿼리 생성 API 고민하기. 쿼리를 생성해야 하는데 ,. 일반 쿼리 / 구문 쿼리 / 인접 쿼리 / 제외 쿼리를 각각의 쿼리로 만들다 보니깐. 엥 ? 겹치는 기능들이 너무 많아. 일반 쿼리 생성 - 조합시 OR EX ) ("영양정보") OR ("탄수" AND "화물") OR ("당류") OR ("영양소") public String createBasicKeyword( String beforeKeyword ) { /* * 키워드 구분 * 개행을 기준으로 줄 바꿈을 진행 합니다. */ String[] keywordList = beforeKeyword.split("\n"); String[] wordList; Stream stream; int index = 0; /* * 키워드 가공 * - 띄어쓰기가 있다면 * - 큰따옴표로 감싼 후 AND.. java - String[] 을 Stream<String>으로 ㅂ만든 후 JOIN String[] list = str.split("\n"); Stream stream = Arrays.stream(list); str = stream.map(name -> "'" + name + "'" ).collect(Collectors.joining(",")); 1. '\n' 을 기준으로 문자열 배열 (list) 을 만든다 String[] list = str.split("\n"); 2. list 를 기준으로 stram 생성 Stream stream = Arrays.stream(list); 3. stream 이용해서 join str = stream.map(name -> "'" + name + "'" ).collect(Collectors.joining(",")); String[] => forEach 사용법 String 배열을 forEach 문으로 쓰고 싶다면 ? private void binsooForEach( ) { String[] list = {"A","B","C"}; Stream stream = Arrays.stream(list); stream.forEach(x -> { }); } 드래그 앤 드랍 기능 참고 사이트 기록 드래그 앤 드랍 기능을 개발하기는 했는데 개발 전에 알았다면 좋았을 것같은 사이트 기록 여기 SQL 삽질 기록 : ( 사용자 통계를 뽑아야 한다. 검색 조건은 고객사 별로 뽑아야 하고, 자 천천히 생각을 해보자. 1. 로그 정보 + 고객 정보 액션 로그 테이블과, 고객 테이블을 기준으로 user_seq 가 일치하는걸 추출 🤣 액션 로그에는 데이터가 존재하지 않지만 고객정보에 존재한다면 그 고객의 NULL 인 데이터도 필요해 그러기 위해서 RIGHT OUTER JOIN 을 사용했다. SELECT L.user_seq , COUNT(L.action_seq) AS CNT , L.action_seq , U.user_seq FROM ACTION_LOG_3 AS L RIGHT OUTER JOIN ( SELECT U.* FROM USER U ) AS U ON L.user_seq = U.user_seq GROUP BY L.user_se.. 이전 1 ··· 44 45 46 47 48 49 50 ··· 79 다음