Java

Projects & Playground

[Java / Playground] Rest API 호출 모듈 만들기 / RestTemplate

Github: RestApiServicehttps://github.com/HSRyuuu/Playground/tree/master/src/main/java/com/example/playground/spring/restapi Playground/src/main/java/com/example/playground/spring/restapi at master · HSRyuuu/PlaygroundContribute to HSRyuuu/Playground development by creating an account on GitHub.github.com 이 코드는 Lombok에 의존합니다. 참고하세요. 사용법 RestApiService restApiService = new RestApiService();..

Projects & Playground

[java/Playground] Apache POI 엑셀 파일 다루기

Apache POI 응용 라이브러리Apache POI는 Java에서 엑셀을 다룰 수 있게 도와주는 라이브러리이다.회사에서 Excel 파일을 파싱 할 일이 꽤나 있어서 자주 쓰는 기능을 라이브러리 화했다. gradle로 apachepoi 라이브러리를 import 한 뒤, 아래 gitlab 코드나 full code를 복붙해서 사용하면 된다.귀찮아서 SpringBoot 프로젝트를 만들어서 gradle로 apache poi 라이브러리를 import 했다.implementation 'org.apache.poi:poi-ooxml:5.2.3'참고 링크JAVA & Spring/라이브러리 & Tools] - [Apache POI] Java 코드로 엑셀(.xlsx) 파일 생성하기 - Java로 Excel 다루기 [Apac..

JAVA & Spring

[Java] 소켓 프로그래밍(Socket Programming) 예제 / ServerSocket, Socket, Thread 프로그래밍

들어가기 전에, 소켓에 대한 글을 보고 오시는 걸 추천합니다.[컴퓨터 공학/Web & Network] - [Network] 포트(PORT), 소켓(Socket)이란? (웹소켓 아님 Web Socket != Socket) [Network] 포트(PORT), 소켓(Socket)이란? (웹소켓 아님 Web Socket != Socket)포트(Port)Port는 운영체제 통신에서의 네트워크 연결이 시작되고 끝나는 논리적인 접속 지점을 말한다. 보통 http://192.168.1.1:8080과 같이 프로토콜/호스트/포트로 구분되어 도메인이 정의된다. 여innovation123.tistory.com Java 소켓 Java에서 Socket을 직접 열고, 소켓 통신을 하는 방법을 알아보자. ServerSocket과 C..

Database/데이터 접근 기술

[Java, Spring] 트랜잭션을 적용하는 여러 가지 방법

[JDBC] 트랜잭션 적용 - Connection 직접 이용 JDBC 코드를 직접 짤 때 트랜잭션을 이용하는 방법이다. 비즈니스 로직을 실행할 때, 하나의 커넥션 내에서 동작해야 하므로 메서드 사용 시 connection을 파라미터로 넘겨야 한다. 따라서 서비스 계층, 데이터접근 계층에 모두 Connection을 파라미터로 받아서 이용해야 한다. public void loadLotsOfData(DataList dataList) { String sql = "insert into table values ( /* ... */)"; Connection conn = null; PreparedStatement pstmt = null; try { conn = getConnection(); pstmt = conn.pr..

기타/Tech Interview

백엔드 개발자 면접 질문 모음 (답변 없음)

이번 게시글은 면접 예상 질문과 저라면 어떻게 대답할지에 대해 적어봤습니다. 각자 아래 질문에 어떻게 대답할지 생각해 보시면 좋을 것 같습니다. "접은 글"로 제 기준 대답 키워드를 적어놨는데, 피드백이나 의견 댓글로 남겨주시면 감사하겠습니다, [기술 관련] 💡 Java/Spring Boot/JPA를 활용한 REST API 서버 개발 경험 ⬇️키워드 더보기 REST 방식으로 URL로 자원 명시, HTTP Method로 처리 방법을 지정 SpringBoot의 Spring MVC 구조, 레이어드 아키텍처 이용 Controller 단에서 클라이언트 요청 처리 Service 단에서 비즈니스 로직 처리 데이터 접근 계층은 Spring data JPA를 이용하여 JpaRespository 인터페이스를 사용 💡 RD..

JAVA & Spring/JAVA 이론

[Java] equals()와 hashCode() / equals와 hashCode를 둘 다 재정의 해야하는 이유

Java의 모든 객체는 Object 클래스를 상속받고 있다. Object 클래스는 객체의 동일성을 비교하기 위한 equals와 hashCode 메서드가 정의되어 있다. 따라서 Java의 모든 객체는 필요에 따라 equals와 hashCode를 재정의할 수 있다. equals() equals()는 두 객체의 값이 같은지 여부를 비교할 때 사용하는 메서드이다. 객체를 비교할 때 기본적으로 객체의 주소를 비교한다. public static void main(String[] args) { Car car1 = new Car(1111, "blue"); Car car2 = new Car(1111, "blue"); System.out.println(car1 == car2); //두 객체는 주소가 다르기 때문에 fals..

기타/Tech Interview

백엔드 개발자 기술 면접 정리 - Java, 객체 지향

Java, 객체 지향 관련 질문 모음입니다. 자세한 내용은 추가로 검색을 해보셔서, 본인의 언어로 정리하시길 추천드립니다. 이 글 역시 제 생각과 언어에 맞게 정리하였고, 틀린 부분이 있을 수 있으니 댓글로 지적해 주시면 감사하겠습니다! [ 객체 지향 ] 💡OOP(객체지향 프로그래밍)의 특징 객체 지향의 특징은 크게 4가지가 있습니다. ⬇️객체지향의 4가지 특징 더보기 캡슐화 객체가 역할을 수행하기 위한 정보와 기능을 하나로 묶어서 데이터를 외부로부터 보호하는 것을 말합니다. - 클라이언트에게는 인터페이스만 제공을 해서 필요한 정보만 노출을 하고, 실제 구현 정보는 숨겨서 기능만 사용할 수 있게 합니다. - 필드는 private으로 접근을 막고, 메서드를 public으로 열어서 캡슐화를 사용합니다. 추상..

컴퓨터 공학/프로그래밍 이론

[Computer Science/디자인 패턴] 전략 패턴(strategy pattern)

전략 패턴(strategy pattern) 전략 패턴은 정책 패턴(policy pattern)이라고도 하며, 객체의 행위를 바꾸고 싶은 경우에 직접 수정하지 않고 "전략"이라고 부르는 "캡슐화된 알고리즘"을 컨텍스트 안에서 바꿔주면서 상호 교체가 가능하게 만드는 패턴이다. 비즈니스 로직을 인터페이스로 만들고, 해당 인터페이스를 구현한 클래스를 사용하도록 만드는 것이라고 생각하면 된다. 우선 Java 코드를 이용한 기본 예제로 알아보고, 추가로 Spring에서 어떻게 전략 패턴을 사용하는지 알아보자. Java 기본 예제 예제로 알아보자. interface : Payment public interface Payment { void pay(int amount); } 구현체 1 : KakaoCardPayment..

HSRyuuu
'Java' 태그의 글 목록