오랫동안 자바를 사용해왔으면서도 생소한 키워드 하나를 오늘 알아봅니다. transient : 일시적인, 순간적인, 단기 체류자 Java에서 직렬화(serialization) 과정 중, 특정 필드를 제외시키기 위해 사용하는 키워드입니다. Java 1.0 버전(1996년)부터 존재해온 매우 오래된 기능이라고 합니다. 직렬화(Serialization)는 객체(Object)를 바이트 스트림(byte stream)이나 다른 전송 가능한 형태로 변환하는 과정입니다. 반대로, 역직렬화(Deserialization)는 저장/전송된 데이터를 다시 원본 객체로 복원하는 과정입니다. transient 키워드가 사용된 필드는 이 직렬화 과정에서 제외하게 됩니다. 보안상 민감한 데이터 (비밀번호 같은)나 직렬화할 필요가 ..
스프링 Security 연습 1 이왕 스프링부트를 하는 김에, 그동안 Interceptor를 써왔었는데, 스프링 Security 를 사용해보기로 합니다. #1. build.gradle 에 spring-boot-starter-security 추가하고, Refresh Gradle Project ( 리프레시 안하면 에러납니다. ) #2. 스프링부트 어플리케이션을 실행시켜봅니다. 원래는 아래와 같이 나와야 하는데. ( 시큐리티 적용이 안 되어 있다면 ) 실행 시 로그에 아래와 같은 로그가 추가되면서 같은 URL을 접속했을 때, 인증 필요라고 나옵니다. #3. SecurityConfig.java 를 작성합니다. 다시 localhost:8080/hello 를 접속하면, 이번에는 localhost:8080/login..
스프링부트 JPA 연습 이왕 스프링부트를 하는 김에, 일반적으로 많이 쓰이는 mybatis 대신에 JPA를 써보기로 합니다.구글 검색을 통해 공부해봅니다. #1. Member 엔티티 클래스 생성@Entity, @Id, @GeneratedValue, @Column 등의 어노테이션이 에러를 내고 있습니다. #2. bulid.gradle 에 JPA 관련 설정을 합니다.runtime("com.h2database:h2") 는 Embedded h2database를 사용하겠다는 설정입니다.h2DB가 뭔지 잘 모르지만 일단 사용해보기로 합니다. #3. Member 클래스 수정javax.persistence 패키지가 많이 포함되었습니다.@Id 에는 (name) 이 들어가면 안되나 봅니다.따옴표도 ' 를 쓴 곳이 있는데,..
java keytool 사용 / 스프링부트 SSL 설정 https://www.drissamri.be/blog/java/enable-https-in-spring-boot/ 위 링크에 가시면 짧고 굵은 내용이 있습니다.아래는 안 보셔도 됩니다. #1 java keytool 옵션 C:\Program Files\Java\jdk1.8.0_152\bin>keytool키 및 인증서 관리 툴 명령: -certreq 인증서 요청을 생성합니다. -changealias 항목의 별칭을 변경합니다. -delete 항목을 삭제합니다. -exportcert 인증서를 익스포트합니다. -genkeypair 키 쌍을 생성합니다. -genseckey 보안 키를 생성합니다. -gencert 인증서 요청에서 인증서를 생성합니다. -impor..
MYSQL java.sql.SQLException: Incorrect string value: '\xEC\x99\x80 \x0 ### Cause: java.sql.SQLException: Incorrect string value: '\xEC\x99\x80 \x0D\x0A...' for column 'courtXml' at row 1; uncategorized SQLException for SQL []; SQL state [HY000]; error code [1366]; Incorrect string value: '\xEC\x99\x80 \x0D\x0A...' for column 'courtXml' at row 1; nested exception is java.sql.SQLException: Incorre..
스프링 / mybatis 를 써서 개발하다보니.. 살다살다 보지 못했던 여러 오류들을 만나고 있음... 그 중 하나.. attempted to return null from a method with a primitive return type (int). 테이블 리스트의 페이지를 나누기 위해, 전체 건수를 count(*) 해서 리턴하는 SQL문을 호출하다 발생한 에러.. xxxMapper.java 파일의 getTotalCount() 의 return type 을 int 로 해서 발생... 이유는 count(*) 할 때, 혹은 max(column_name) 등을 할 때.. null 이 발생하는 경우가 있음.. int 는 null 을 매핑할 수 없으므로.. 위와 같은 exception 이 발생.... 따라서 p..
- Total
- Today
- Yesterday
- spring tutorial
- 세부
- 사이판
- PIC
- 에닝요
- 톰캣
- LG
- 아마존
- 전북
- 리조트
- 캠핑장
- MySQL
- mybatis
- 스프링
- 여행
- 강원도
- 부모님
- 카메라
- 펜탁스
- k-3
- Spring
- Java
- web.xml
- 스프링부트
- SqlSessionfactory
- 캠핑
- G3
- 자바
- 텐트
- K리그
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |