java 16

[java] 대용량 insert / insert 속도 향상

DB에 여러개의 정보를 빨리 insert를 해야하는데 for문 => parallerStream for문 => pool을 할당한 후 parallerStream for를 사용하여 insert를 시도해보았지만 속도는 향상되긴 하지만 생각만큼 빠르진 않아 검색을해보니 batch를 이용하여 insert를 하면 속도가 향상된다 하여 사용해보았다. @Service public class BatchConfig { private PreparedStatement pstmt; private Connection con; // db url 주소 => jdbc:xxxx://ip:port/dbName @Value("${db.pstmt.dbUrl}") private String dbUrl; // db user값 @Value("${d..

java 2022.08.02

[java] spring boot에서 git hub 연동하기

1. gitHub에 들어가서 Repositories에서 New를 눌러서 만든다. 2. *Repository name에 이름을 기입하고 Description은 설명을 적고 Create repository를 눌러 만든다. (Public은 전체공개, Private는 선택된 사람만 볼 수 있게) 3. spring boot에서 window -> show view -> other 에서 git을 입력하여 Git Repositories 추가해준다. 4. Git hub만든 Repositories의 HTTPS url을 복사하고, spring boot에서 방금 추가한 Git Repositories의 git clone을 눌르면 복사한 Git Hub url이 복사되어있는데 User와 Password는 Git Hub의 아이디와 ..

java 2021.12.19

[java] 자바 스트림(Stream) 사용 및 예제

스트림(Stream) 이란 ? Java8부터 지원하는 Stream은 컬렉션, 배열등에 대해 저장되어있는 요소들을 하나씩 참조하며 반복적인 처리를 가능하게하는 기능이다. 이러한 Stream을 이용한다면 불필요한 for문과 그 안에서 이루어지는 if문등의 분기처리를 쓰지않고도 깔끔하고 직관적인 코드로 변형할 수 있다. Stream 특징 Stream은 데이터를 변경하지 않는다. - Stream은 원본데이터로부터 데이터를 읽기만 할 뿐, 원본데이터 자체를 변경하지 않는다. Stream은 일회용이다. - Stream은 한 번 사용하면 닫혀서 재사용이 불가능하다. 필요하다면 정렬된 결과를 컬렉션이나 배열에 담아 반환할 수 있다. Stream은 작업을 내부 반복으로 처리한다. - Stream을 이용한 작업이 간결할 ..

java 2021.10.29

[java] Spring Tool Suite(STS) 설치하기

Spring Tool Suite(STS) 설치방법 아래 링크의 스프링 홈페이지에 접속한다. https://spring.io/tools Spring Tools 4 is the next generation of Spring tooling Largely rebuilt from scratch, Spring Tools 4 provides world-class support for developing Spring-based enterprise applications, whether you prefer Eclipse, Visual Studio Code, or Theia IDE. spring.io Spring Tools 4 for Eclipse 란에 있는 [4.12.1 - Windows x86_64]를 클릭을 하면 다..

java 2021.10.29

[java] 문자열을 DateTime 객체로 변환

import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class 문자열을Date타입으로 { public static void main(String [] args){ String 문자열시간 = "10/27/2021 11:05:00"; SimpleDateFormat 시간변환 = new SimpleDateFormat("MM/dd/yy HH:mm:ss"); { try { Date date = 시간변환.parse(문자열시간); System.out.println(date); SimpleDateFormat dateFormatter = new SimpleDateFormat("yyyyMMdd"); S..

java 2021.10.27

[java] 오버로딩 vs 오버라이딩 차이점

구분 오버로딩 오버라이딩 메소드 이름 동일 동일 매개변수, 타입 다름 동일 리턴 타입 상관없음 동일 1. 오버로딩(Overloading) - 메소드의 이름은 같고 매개변수의 갯수나 타입이 다른 함수를 정의하는 것을 의미한다. - 리턴값만을 다르게 갖는 오버로딩은 작성 할 수 없다. 2. 오버라이딩(Overriding) - 상위 클래스의 메소드를 하위 클래스가 재정의 하는 것이다. - 메소드의 이름은 물론 파라미터의 갯수나 타입도 동일해야 하며, 주로 상위 클래스의 동작을 상속받은 하위 클래스에서 변경하기 위해 사용된다. 즉, 오버로딩(Overloading)은 기존에 없던 새로운 메소드를 정의 오버라이딩(Overriding)은 상속 받은 메소드의 내용만 변경

java 2021.10.27

[java] 어노테이션 정리

직렬화란 객체를 전송가능한 형태로 말아주는걸 의미하고 역직렬화란 그 데이터들을 다시 자바 객체로 변환해주는 것으로 이해 @jsonalias - 역직렬화를 할 때 한 개 이상의 이름을 한 객체 필드에 매핑되게 설정할 수 있다 @Data public class Member(){ @JsonAlias({ "test", "test2" }) private String test; }​ --------------------------------------------------------------------------------------------------------------------------------- Json 형식으로 데이터를 주고받을 때 Jackson의 ObjectMapper를 자주 이용한다. 이를 S..

java 2021.10.26