Java
-
- hashCode() : 객체(Object) 의 해시코드란 객체의 고유한 정수값을 의미한다. : 객체의 메모리주소를 이용해서 해시코드를 생성한후 반환한다. : 두 객체가 같은 객체인지 확인하는 메소드 - equals() : 객체의 equals() 메소드는 == 와 같은 동일한 역할을 한다. : 두 객체의 내용이 같은지 확인하는 메소드 * 위 그림과 같이 객체의 hashCode() 와 equals()를 재정의를 해야 객체 내용을 비교할수 있다. * 메소드 재정의를 해야하는 이유는 HashSet, HashMap, HashTable과 같은 프레임워크에서 hashCode() 결과값인 해시코드 값이 다를경우 다른객체로 판단한다. 그렇기 때문에 재정의해줘야 한다.
Java hashCode(), equals()- hashCode() : 객체(Object) 의 해시코드란 객체의 고유한 정수값을 의미한다. : 객체의 메모리주소를 이용해서 해시코드를 생성한후 반환한다. : 두 객체가 같은 객체인지 확인하는 메소드 - equals() : 객체의 equals() 메소드는 == 와 같은 동일한 역할을 한다. : 두 객체의 내용이 같은지 확인하는 메소드 * 위 그림과 같이 객체의 hashCode() 와 equals()를 재정의를 해야 객체 내용을 비교할수 있다. * 메소드 재정의를 해야하는 이유는 HashSet, HashMap, HashTable과 같은 프레임워크에서 hashCode() 결과값인 해시코드 값이 다를경우 다른객체로 판단한다. 그렇기 때문에 재정의해줘야 한다.
2021.08.28 -
HashSet : 중복을 허용하지 않는다. : 순서를 보장하지 않는다. : null 값을 저장할수 있다. : 내부적으로 HashMap을 사용하여 데이터를 저장한다. * 사용 예 HashSet에 배열 데이터를 넣어놓고 contains를 사용하여 값이 존재하면 True, 없을시 False를 반환 ex) HashSet set = new HashSet(Arrays.asList(배열명)); boolean b = set.contains("문자열"); * Arrays.asList(배열명); Arrays.asList(배열) 을 사용하면 괄호안 배열의 주소값을 그대로 HashSet 에 저장한다. 새로운 배열을 생성하는게 아닌 괄호안 배열의 주소값을 그대로 저장하기 떄문에 수정 삭제 불가능?
HashSet<T>HashSet : 중복을 허용하지 않는다. : 순서를 보장하지 않는다. : null 값을 저장할수 있다. : 내부적으로 HashMap을 사용하여 데이터를 저장한다. * 사용 예 HashSet에 배열 데이터를 넣어놓고 contains를 사용하여 값이 존재하면 True, 없을시 False를 반환 ex) HashSet set = new HashSet(Arrays.asList(배열명)); boolean b = set.contains("문자열"); * Arrays.asList(배열명); Arrays.asList(배열) 을 사용하면 괄호안 배열의 주소값을 그대로 HashSet 에 저장한다. 새로운 배열을 생성하는게 아닌 괄호안 배열의 주소값을 그대로 저장하기 떄문에 수정 삭제 불가능?
2021.08.25 -
- JWT(Json Web Token) : 토큰기반시스템 : Json 포맷을 이용하여 사용자에 대한 속성을 저장하는 Claim 기반의 Web Token : 토큰 자체를 정보로 사용한다. : 주로 회원인증이나 정보 전달에 사용된다. : Header.Payload.Signature * Header : "typ": "JWT" : "alg":"HS256" (HMAC SHA256 = HS256) * Payload : 토큰에서 사용될 정보의 조각들인 클레임이 들어있다. * Signature : 클라이언트의 유효성 검사를 위한 암호화 코드 1. 유저가 id, pw를 입력하여 로그인한다. 2. 서버측에서 해당 계정정보를 검증한다. 3. 계정정보가 일치하면, 서버측에서 유저에게 sign 토큰을 발급 4. ..
JWT(Json Web Token)- JWT(Json Web Token) : 토큰기반시스템 : Json 포맷을 이용하여 사용자에 대한 속성을 저장하는 Claim 기반의 Web Token : 토큰 자체를 정보로 사용한다. : 주로 회원인증이나 정보 전달에 사용된다. : Header.Payload.Signature * Header : "typ": "JWT" : "alg":"HS256" (HMAC SHA256 = HS256) * Payload : 토큰에서 사용될 정보의 조각들인 클레임이 들어있다. * Signature : 클라이언트의 유효성 검사를 위한 암호화 코드 1. 유저가 id, pw를 입력하여 로그인한다. 2. 서버측에서 해당 계정정보를 검증한다. 3. 계정정보가 일치하면, 서버측에서 유저에게 sign 토큰을 발급 4. ..
2021.08.25 -
@SelectKey 어노테이션 사용 mysql 에서 @INSERT 어노테이션을 사용하여 insert를 했을경우 입력된 primary key가 필요할떄가 있다 그때 입력후에 바로 리턴받는 방법이 @SelectKey 어노테이션을 사용한다. @SelectKey ( statementType=statementType.PREPARED, statement="SELECT LAST_INSERT_ID()", keyProperty="seq", before=false, resultType=int.class ) public int testSelectKey(Test test); // Test Model public Class Test { int seq; String name; String number; } keyPrope..
@SelectKey, <selectKey>@SelectKey 어노테이션 사용 mysql 에서 @INSERT 어노테이션을 사용하여 insert를 했을경우 입력된 primary key가 필요할떄가 있다 그때 입력후에 바로 리턴받는 방법이 @SelectKey 어노테이션을 사용한다. @SelectKey ( statementType=statementType.PREPARED, statement="SELECT LAST_INSERT_ID()", keyProperty="seq", before=false, resultType=int.class ) public int testSelectKey(Test test); // Test Model public Class Test { int seq; String name; String number; } keyPrope..
2021.08.25 -
1. Dynamic Web Project 생성 * Project 생성시 꼭 web.xml 체크 2. WebContent > WEB-INF > lib .jar 추가 * 필수요소 : spring-aop-4.3.12.RELEASE.jar spring-context-4.3.12.RELEASE.jar spring-core-4.3.12.RELEASE.jar spring-expression-4.3.12.RELEASE.jar spring-web-4.3.12.RELEASE.jar spring-webmvc-4.3.12.RELEASE.jar spring-beans-4.3.12.RELEASE.jar commons-logging-1.2.jar commons-dbcp-1.4.jar commons-pool-1.6.jar myb..
Spring - Dynamic Web Project 설정1. Dynamic Web Project 생성 * Project 생성시 꼭 web.xml 체크 2. WebContent > WEB-INF > lib .jar 추가 * 필수요소 : spring-aop-4.3.12.RELEASE.jar spring-context-4.3.12.RELEASE.jar spring-core-4.3.12.RELEASE.jar spring-expression-4.3.12.RELEASE.jar spring-web-4.3.12.RELEASE.jar spring-webmvc-4.3.12.RELEASE.jar spring-beans-4.3.12.RELEASE.jar commons-logging-1.2.jar commons-dbcp-1.4.jar commons-pool-1.6.jar myb..
2021.08.25 -
JVM (Java Virtual Machine) JVM은 Java Virtual Machine으로 Java와 OS 사이에서 가장 중요한 중간자 역할을 한다. 자바 컴파일러(javac)가 개발자가 작성한 소스코드(.java)를 컴파일하면 바이트 코드(.class)가 된다. 이렇게 변환된 바이트 코드(.class)를 해당 OS에 맞게 기계어로 해석해주는 역할을 수행하는게 JVM이다. 간단하게 얘기하면 자바 소스코드로부터 컴파일되어 만들어진 바이트 코드(.class) 를 운영체제가 이해할수 있도록 해석하고 실행시킨다. JVM의 영향으로 인해 JAVA라는 언어는 이식성이 좋은거다. 여기서 의문점이 있을 수 있다. C언어는 소스를 컴파일하면 OS에서 바로 실행할 수 있는 실행파일 또는 기계어로 컴파일되는 반면 자..
JVM, JRE, JDK 차이JVM (Java Virtual Machine) JVM은 Java Virtual Machine으로 Java와 OS 사이에서 가장 중요한 중간자 역할을 한다. 자바 컴파일러(javac)가 개발자가 작성한 소스코드(.java)를 컴파일하면 바이트 코드(.class)가 된다. 이렇게 변환된 바이트 코드(.class)를 해당 OS에 맞게 기계어로 해석해주는 역할을 수행하는게 JVM이다. 간단하게 얘기하면 자바 소스코드로부터 컴파일되어 만들어진 바이트 코드(.class) 를 운영체제가 이해할수 있도록 해석하고 실행시킨다. JVM의 영향으로 인해 JAVA라는 언어는 이식성이 좋은거다. 여기서 의문점이 있을 수 있다. C언어는 소스를 컴파일하면 OS에서 바로 실행할 수 있는 실행파일 또는 기계어로 컴파일되는 반면 자..
2021.08.25