본문 바로가기

Backend/Java43

[자바의 신] 17장 17장 - 어노테이션이라는 것도 알아야 한다 어노테이션 정의 Annotation 클래스나 메서드 등 선언 시 @ 사용 메타 데이터(Metadata)라 부르기도 함 쓰임 컴파일러에 정보 알려줄 때 컴파일 및 설치(deployment) 시 작업 지정할 때 실행 시 별도 처리 필요할 때 자바 언어에서 사용하기 위해 정해져있는 어노테이션 @Override 해당 메서드가 부모 클래스에 있는 메서드 Override 했다는 걸 명시적 선언 @Deprecated 컴파일러에 해당 클래스나 메서드는 더 이상 사용하지 않는다는 걸 알려줌 컴파일 결과, 경고만 있음(에러 x) = 컴파일 완료 = 클래스 파일 생성됨 @SuppressWarnings 컴파일러에 해당 소스는 일부러 이렇게 코딩한 것이니 경고해줄 필요 없다고 알려줌.. 2022. 7. 25.
[자바의 신] 16장 16장 - 클래스 안에 클래스가 들어갈 수도 있구나 클래스 안의 클래스, Nested 클래스 코드 간단 표현 가능 자바 기반의 UI 처리 시 사용자 입력 및 외부 이벤트 처리하는 곳에서 많이 사용 package c.inner; public class PublicClass { } class JustNotPublicClass { } 파일 이름 : public한 클래스 이름 따서 정의해야함(컴파일 에러 방지) Nested 클래스 사용 이유 한곳에서만 사용되는 클래스를 논리적으로 묶어 처리할 때 = Static nested 클래스 사용 이유 캡슐화 필요할 때 = 내부 구현 감추고 싶을 때 = 내부(inner) 클래스 사용 이유 소스 가독성과 유지보수성 높이고 싶을 때 Static nested 클래스 내부 클래스.. 2022. 7. 25.
[Java] String ➡ Long 타입으로 형변환 방법 Long.parseLong() new Long(str).longValue() Long.valueOf(str).longValue() 예제 String str = "30"; Long strLong; //str이 유효한 숫자가 아니면 NumberFormatException 발생 //방법1 : Long.parseLong(str) strLong = Long.parseLong(str); //방법2 : new Long(str).longValue() strLong = new Long(str).longValue(); //방법3 : Long.valueOf().longValue() strLong = Long.valueOf(str).longValue(); 주의점 입력된 String 값이 유효한 숫자가 아니면 Number.. 2022. 3. 30.
[Java] 정수 최대값, 최소값 구하기 정수 최대값, 최소값 최대값 최소값 231-1 (2,147,483,647) -231 (-2,147,483,648) Integer 클래스 int의 Wrapper 클래스인 Integer 클래스 통해 정수의 최대값, 최소값 구할 수 있음 static int Integer.MAX_VALUE static int Integer.MIN_VALUE 예제 public class IntegerMaxMin { public static void main(String[] args) { System.out.println(Integer.MAX_VALUE); //2147483647 System.out.println(Integer.MIN_VALUE); //-2147483648 } } 출처 : https://hianna.tistory... 2022. 3. 28.
[Java] int와 Integer 비교 숫자 저장하는 방법 int a = 1; Integer b = 1; Integer c = new Integer(1); if(a == 1) //true if(b == 1) //true if(c == 1) //true 변수 비교 1. int vs. Integer int a = 1; Integer b = 1; if(a == b) //true 2. int vs. Integer int a = 1; Integer c = new Integer(1); if(a == c) //true 3. Integer vs. Integer Integer b = 1; Integer c = new Integer(1); if(b == c) //false 풀이 1. 비교 대상 중 primitive type (int) 변수가 한 개 이상 있을 .. 2022. 3. 21.
[Error] java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener 에러 메시지 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener 원인 Maven ➡ Update Project Configuration 실행 시 Maven 라이브러리 경로가 삭제됨 해결 방법 프로젝트 우클릭 ➡ Properties ➡ Deployment Assembly ➡ Add ➡ Java Build Path Entries 출처 : https://myblog.opendocs.co.kr/archives/1657 2022. 2. 28.
[Java] instanceof : 객체 타입 비교 기능 객체 타입 및 형변환 가능 여부 확인 = 해당 클래스가 본인 집이 맞는지 확인 true / false로 결과 반환 주로 상속 관계에서 부모 객체인지 자식 객체인지 확인할 때 사용 문법 객체 instanceof 클래스 예제1 class Parent{} class Child extends Parent{} public class InstanceofTest { public static void main(String[] args){ Parent p = new Parent(); Child c = new Child(); System.out.println(p instanceof Parent); //true System.out.println(c instanceof Parent); //true System.out.p.. 2022. 2. 21.
[Java] .getClass().getName(): 변수 타입 확인 문법 변수명.getClass().getName() 순서 각 타입으로 변수 선언 및 초기화 .getClass().getName()으로 출력 각 변수의 데이터 타입 출력됨 예제 import java.util.ArrayList; public class TypeExample { public static void main(String[] args) { String str = "ABC"; //String Integer i = 123; //Integer ArrayList list = new ArrayList(); //ArrayList //타입 확인 System.out.println(str.getClass().getName()); //java.lang.String System.out.println(i.getClass(.. 2022. 2. 18.
[MyBatis] foreach문 : 파라미터에 배열/리스트 담기 순서 Map 선언 Object에 List 담기 Query에서 List를 foreach를 돌려 사용 예제1 //DAO //DAO에서 Member 정보 가져오기 public List getMemberInfoDAO() { Map param = new HashMap(); param.put("id", "1"); //#{id} param.put("email", "test@test.com"); //#{email} List activeList = new ArrayList(); activeList.add("A"); //쿼리의 in 조건에 넣을 값 activeList.add("B"); param.put("paramList", activeList); //Map에 List 담기 return sqlSession.selectLi.. 2022. 2. 13.
[Java] 문자열 비교 : ==와 equals()의 차이 == 연산자 비교하고자 하는 두 개의 대상의 주소값을 비교 public class compare { public static void main(String[] args) { String s1 = "abcd"; String s2 = new String("abcd"); if(s1 == s2) { System.out.println("두 개의 값이 같다."); } else { System.out.println("두 개의 값이 같지 않다."); } } } //결과 : 두 개의 값이 같지 않다. equals() String 클래스의 equals() 메소드 비교하고자 하는 두 개의 대상의 값 자체를 비교(주소값 비교 X) public class compare { public static void main(String.. 2022. 1. 11.
[Servlet/JSP] <a> 태그에서 Post 방식으로 값 넘기기 순서 태그 필요한 인수를 태그에 담기 해당 태그에 함수 생성 스크립트단 - 함수 만들기 태그의 인수 받아오기 전달할 의 에 인수 값 담기 전송 주소 및 방식(Post) 설정 후 보내기 예제 전송 출처: http://gnujava.com/board/article_view.jsp?board_no=3&article_no=8502 2022. 1. 4.
[SVN] 커밋 시 불필요한 소스 제외하기 형상관리툴 SVN으로 소스 커밋 시 불필요한 소스(target, setting 등) 제외하는 방법 이클립스 메뉴 ➡ Window ➡ Preferences ➡ Team ➡ Ignored Resources ➡ Add Pattern 클릭 ➡ 패턴 추가 참고 예시) .project .classpath .settings */target //메이븐 사용 시 나타나는 폴더, 프로젝트 세팅에 따라 target 폴더가 없을 수도 있음 출처: https://stufeel.tistory.com/23 2021. 12. 20.