목록자바 (13)
kimmgamjja
작업하다가 이 부분에서 에러 발생 list.removeIf(entry -> aId.equals(entry.get("A_ID").toString())); 에러내용은 Local variable 변수명 defined in an enclosing scope must be final or effectively final 찾아보니 람다식과 관련이 있는 에러였다 자바 컴파일러가 파라미터로 사용하는 변수와 로컬 변수를 구분하지 못해서 발생하는 에러라고 한다로컬 변수는 람다식 안에서 바꿀 수 없기 때문에해당 로컬 변수를 class 단에서 선언을 한 뒤 사용하면 된다 @RequestMapping("/test")public class HomeController { String aId = ""; public ..

removeIf()- ArrayList 의 메소드로, 인자로 전달된 조건을 충족하는 list 의 원소들을 삭제- 자바 8부터 가능- 람다식 이용하여 삭제public boolean removeIf(Predicate filter) - Predicate : 인자, 람다 표현식으로 전달가능, 아이템 필터링 조건 - entry 는 list 의 각 맵을 나타낸다 - id 와 entry(list의 각 맵) 에 A_ID 를 비교하여 두 값이 일치할 경우 list 에서 해당 원소를 삭제한다. https://kdhyo98.tistory.com/38 [Java] ArrayList 조건 삭제 'removeIf'서론 arrayList 경우 내가 삭제하고 싶은 애를 삭제하고 싶은 경우 for문을 돌리고, if문을 통해 삭제하는 ..

디버깅 모드로 재기동하는데 갑자기 이러한 에러가 발생했다 (OK 버튼 누르면 팝업이 꺼지고 정상적으로 작동하긴 함.. ) 근데 디버깅 모드로 재기동할때마다 이 에러 팝업이 뜨는 게 신경쓰여서 원인을 찾아보니서버 실행 시 JVM 에서 해당 클래스를 로드하면서 breakpoint 를 생성할 행 번호가 없어서 뜬다는 것 하지만 JVM 로드 후 IDE가 로드되면서 breakpoint를 생성하기 때문에 경고를 무시해도 사용에는 문제가 없다는 것이었다 그래도 만약 이 에러 팝업이 뜨는 게 신경쓰인다면 이 팝업에서 Don't tell me again 에 체크 후 OK 버튼을 눌러도 된다 아님 STS 에서 상단에 Window - Preferences - Java - Debug 를 들어가면 Warn when u..

이러한 에러가 발생 이미 프로세스가 사용중인 상태일 때 발생하는 에러다 명령 프롬프트 창을 켜고 명령 프롬프트 창에서netstat -ano 명령어를 친다 이 중에서 본인이 설정한 포트 번호를 찾으면 되는데 보통 기본 서버 포트는 8080이다 그리고 본인이 설정한 서버 포트 번호가 적힌 로컬주소의 PID를 찾아낸다 위 사진에서 0.0.0.0:8080 의 PID 는 21268 이다 마지막으로 taskkill /f /pid [프로세스 ID] ex ) taskkill /f /pid 21268 이 명령어를 쳐주고 톰캣을 다시 실행해보면 정상 실행된다 https://mkil.tistory.com/466 tomcat Address already in use : bind 해결방법Spring Boot 기동..
Spring 에서 2개 이상의 DB 연동 및 접속 *참고로 저는 mysql을 사용하고 있습니다! 이미 DB 에 연동되어 있는 상황에서 또다른 DB를 연동하려면 기존 DB 접속정보와 분리하여 연동하려는 DB 접속정보를 적어주고 파일경로 또한 분리해줘야한다. - 기존 DB 접속 정보가 적힌 xml 파일 Asia/Seoul true 이 기존 DB 접속정보가 적힌 파일에 dataSource BeansqlSessionFactory BeanMapperScanner..
자바에서 리스트 정렬하는 방법 중에 Stream sorted() 방법이 있다 나는 - 컨트럴러 : 사용자 요청에서 정렬방향( sort ), 정렬 기준 컬럼 ( sortTxt)를 파라미터로 받아옴- 서비스단 : 받은 파라미터를 기반으로 Java Stream API 의 sorted() 메서드 사용하여 리스트 정렬 이러한 형태로 작업했다 * 서비스단 : List> list = new LinkedList();list.addAll(resultList);if(sort.indexOf("asc") > -1){ // 오름차순 if(sortTxt.indexOf("NUMBER_1") > -1 ){ list = list.stream() .sorted((s1, s2) -> Long.valueOf(s1.get(sort..
기존 자바 소스 list = list.stream().sorted((o1, o2) -> Integer.valueOf(o1.get("NUMBER").toString()).compareTo(Integer.valueOf(o2.get("NUMBER").toString())) ).collect(Collectors.toList());list 를 stream().sorted() 를 이용해 정렬해주려다가 Exception>java.lang.NumberFormatException++Exception Message>For input string: "10000000000"++Stack Trace>java.lang.NumberFormatException: For input string: "10000000000" 이러한 에러가..
foreach문 (C.BRANCH LIKE CONCAT('%',TRIM('${item}'),'%') OR C.PHONE LIKE CONCAT('%',TRIM('${item}'),'%')) mybatis foreach문 지원 태그- collection : 전달받은 인자. 배열(Array) 혹은 리스트(List) 형태만 가능ex)배열 예시String[] testArray={"1", "2", "3"} - 배열 파라미터를 Map을 통해 넘겼을 경우1. DAOpublic ListgetTestList(String[] userArray) { HashMap map =new HashMap(); map.put("testArray",testArray); return sqlSession.selectList("..

* Collection Collections.swap( list, index1, index2 ) Collections.swap( list, index1, index2 ) 는 리스트에서 index1과 index2의 위치를 바꾼다import java.util.Arrays;import java.util.Collections;import java.util.List;public class Example { public static void main(String[] args) { List words = Arrays.asList("A", "B", "C", "D"); Collections.swap(words, 0, 3); System.out.println(words); //..
String.valueOf()와 Object.toString() 문자열 형변환에 쓰임 - String.valueOf()와 Object.toString() 의 차이 1) Object.toString() : null값을 문자열로 형변환시 NullPointerException 을 발생시킴public static void main(String args[]) { Object obj = null; System.out.println(obj.toString()); // NullPointerException 오류 발생 } 2) String.valueOf() : 전달받은 파라미터가 null이 전달될 경우 문자열 "null"을 반환public static void main(String args[]) { ..