문자열 비교할 때 equls와 == 의 차이는 무엇일까?
·
개발기록/JAVA
상황회사에서 이메일을 발신하는 기능이 있다.원래는 등록자와 담당자에게만 갔는데, 처리자에게도 발신하도록 하는 기능을 추가하기로 하였다.추가를 하면서 이전 값과 새로운 값 즉 문자열에 대해 비교를 하여 분기를 해야하는데 equals가 아닌 == 으로 했더니 내가 원하던 조건이 성립되지 않았다.원인 파악chatGpt에 물어봤더니 아래와 같이 답해줬다.복사하기 붙혀넣기가 아닌 일부 내용만 발췌해서 적었다.== 연산자기본 자료형(int, char, boolean 등)은 값을 비교한다객체에서는 참조(메모리 주소)를 비교한다.즉, 두 객체가 동일한 메모리 주소를 가리킬 때만 true를 반환String a = new String("hello");String b = new String("hello");System.ou..
[JPA] jdbc:h2:mem:testdb 안될 때
·
개발기록/JAVA
안녕하세요 성장형개발자입니다.문제JPA를 책을 보면서 따라하던 중에 h2 database를 사용하려고 했습니다.책에서는 JDBC URL : jdbc:h2:mem:testdb 으로 설정하라고 해서, 그대로 진행을 했는데 실패가 되었습니다.과정위와 같은 문제 발생하여 구글링을 해보니 보안에 따른 이슈로 인해 책에 나온 버전과 현재 버전이 상이하여 발생하였습니다.// 참고 -> https://velog.io/@lehdqlsl/spring-boot-h2-memtestdb-not-found-%EB%AC%B8%EC%A0%9C해결저는 application.property에 추가를 해서 진행하였고, 정상 작동되었습니다.spring.jpa.show_sql=truespring.h2.console.enabled=truesp..
Test 코드 작성 시 java.lang.Exception: No runnable methods 발생 원인 해결하기
·
개발기록/JAVA
안녕하세요 성장형 개발자입니다.JPA를 회사에서 사용하는데, 한번도 사용해본 적이 없어 공부하던 중 처음 보는 에러가 발생하여 기록문제테스트 코드를 작성하려는데 실행가능한 메소드가 없다며 Exception 발생과정검색을 하기 전 에러 코드를 보며 생각해보기java.lang.Exception: No runnable methods at org.junit.runners.BlockJUnit4ClassRunner.validateInstanceMethods(BlockJUnit4ClassRunner.java:191) at org.junit.runners.BlockJUnit4ClassRunner.collectInitializationErrors(BlockJUnit4ClassRunner.java:128) at org.j..
error: package org.junit does not exist import org.junit.Test;(최우선 확인)
·
개발기록/JAVA
안녕하세요 성장형 개발자입니다.책을 보면서 따라해보는 중에 구글링을 했는데, 근본적인 확인 방법이 없어서 제가 올려둡니다.문제테스트 코드를 작성하면서 import를 하는데, 존재하지 않는다고 에러가 발생error: package org.junit does not exist import org.junit.Test;과정에러를 그대로 긁어서 구글링을 했더니, 빌드 옵션을 바꾸는 설명들이 있음.물론 그런 해결도 있을 것이라고는 생각하지만, 이 방법이 아니라 Gradle에 dependency를 추가하지 않은 기억이 남.해결방법build.gradle의 dependency에 없었음.아래에 추가 후엔 에러 사라짐.gradle, maven 별로 추가하는 방법은 아래 참고.gradledependencies { tes..
Caused by: java.lang.ClassNotFoundException: org.apache.tomcat.util.descriptor.tld.TldParser
·
개발기록/JAVA
안녕하세요 성장형 개발자입니다. Tomcat으로 자바 실행 시 아래와 같이 에러가 난 경우에 대해 해결 방법을 공유하겠습니다. Caused by: java.lang.ClassNotFoundException: org.apache.tomcat.util.descriptor.tld.TldParser Caused by: java.lang.NoClassDefFoundError: org/apache/tomcat/util/descriptor/tld/TldParser Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].StandardContext[]]..
import Class가 나오지 않을 때 해결법(feat.IntelliJ)
·
개발기록/JAVA
안녕하세요 성장형 개발자입니다. 개발을 하다보면 여러 클래스를 사용하게 됩니다. 그렇다 보면 아래와 같이 빨갛게 되는 부분이 많이 접하실 텐데요 그래서 자바에서 특정 Class가 import가 되지 않을 경우에 대해 해결법에 대해서 공유드릴려고 합니다. 먼저 Logger라는 부분이 문제입니다. 제가 해결했던 방법은 build.gradle부분에서 해결을 했습니다. 위와 같이 내용을 확인해보면 해당 버전은 취약한 버전이니 안전한 버전으로 바꾸라고 되어있습니다. 아래에 보면 Change {group,name,version} 이 있는데 해당 부분을 클릭을 하면 안전한 버전으로 변경이 가능합니다. 변경 후에 우측에 있는 Load Gradle Changes를 클릭하시게 되면 반영이 됩니다. 다시 화면으로 돌아오면 ..