일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- spring
- socket
- MongoDB
- 단위테스트
- java
- 자바
- 운영체제
- 스프링
- 스프링소켓통신
- 소켓통신
- jwt토큰
- 스프링부트
- Stomp
- 소켓
- OS
- 테스트코드
- Security
- 반효경
- springboot
- 자바문법
- 스프링시큐리티
- cs지식
- 기술면접
- Mock
- CS면접
- 채팅구현
- rabbitmq
- jwt
- CS
- JPA
- Today
- Total
목록자바 (16)
Dev_Henry
자바 개발을 할때 많은 사람들이 사용하는 편리한 라이브러리 중 lombok이 있다. lombok은 @Setter, @Getter, @ToString 등의 어노테이션을 제공해주는데, 여러가지를 묶어서 한번에 제공하는 @Data 도 있다. @Data 는 @ToString : 객체를 문자열로 표현할 수 있는 메서드 자동 생성 @EqualsAndHashCode : equals(), hashCode() 메서드 자동 생성 @Getter : getter 메서드 자동 생성 @Setter : setter 메서드 자동 생성 @RequiredArgsConstructor : 필요한 파라리터(초기화 되지 않은 final필드, notnull 필드 등)가 포함된 생성자 자동 생성 위의 5가지 어노테이션을 한번에 모두 포함시..
+ 추가 정확하게 하자면 requsetBody -> http body데이터 requestParam, modelAttribute -> 요청 파라미터 pathVariable -> 요청 uri 를 처리하는 것으로 모두 다른 종류의 것들이다. @RequestBody 클라이언트에서 json,xml 등 요청 body에 데이터를 담아서 넘겨줄때 형식에 맞는 객체를 생성해준다. @ToString public class Person { private String name; private int age; } @PostMapping("/test") public void test(@RequestBody Person person) { System.out.println(person); } 위와 같은 코드일때 json으로 name..

* 공부하기 위한 정리글로 내용이 정확하지 않거나 자세하게 설명되지 않을 수 있습니다. 스프링을 공부하면서 DB를 사용하기 위한 기술이 아주 다양하게 있다. 이전에 공부하던 책에서는 mybatis를 사용했는데 현재 공부중인 책에서는 jqa, querydsl... 뭔가 다양하게 얘기한다. 체계적으로 교육을 받은게 아닌 여러 책들, 인터넷 자료 등으로 공부를 하다보니 뭐가 다른건지도 잘 모르겠고 어떻게 사용해야할지 많이 헷갈려서 정리해보려고 한다. 자바/스프링을 하면서 디비를 이용하기 위한 방법을 찾아보면 많이 보이는 것들은 다음과 같다. JDBC, Mybatis, JDBCtemplate, JPA, Hibernate, Spring Data JPA, JPQL, Querydsl 등.. 본문에서 이것들..
Repositoy 인터페이스(JpaRepository )에서 규칙에 맞는 이름으로 메소드를 선언해두면 이름의 단어들(키워드)을 해석해서 자동으로 맞는 쿼리를 실행시켜준다.(JPQL로 변환이 된다) 보통 // find 엔티티명 by 컬럼명 // 과 같은 모양이다. ex) void deleteByName(String name); 으로 선언만 해두고 사용하면 name컬럼을 이용한 삭제 쿼리가 자동으로 수행된다. findById() 처럼 기본적인건 선언도 필요없이 쓸 수 있음. @query(" jpql문 직접 입력 ") 어노테이션을 통해 복잡한 쿼리도 가능하다. 자세한 사용법과 키워드는 공식문서 참조 https://docs.spring.io/spring-data/jpa/docs/current/..

코딩을 할 때 다양한 언어들을 사용하다 보니 조금씩 다른 기본 문법으로 헷갈릴 때가 많다. ' 와 " 에 별 차이가 없는 언어들도 많고 문제가 생긴 적이 없어서 이제까지 신경 쓰지 않고 지나갔었는데 오늘 코딩을 하다 에러가 생겼다. 찾아보니 자바에서 따옴표는 문자 char타입을, 쌍따옴표는 문자열 string타입을 감싼다고 한다. 문자가 1개던 여러 개 던 보통 "를 많이 사용했어서 이제껏 동작에 에러 없이 사용했었던 거 같다. 공부를 하다 보면 문법이 조금씩 다른 여러 언어를 사용하니 사소한 문법을 생각 못하고 지나칠 때가 많은데 그 사소한 차이 때문에 예상치 못한 문제가 생길 수도 있으니 더욱 신경 써야겠다.
public void 함수(String...props){ } 공부를 하다가 위와 같은 문법의 코드를 만났다. 이게 뭐지 싶어서 찾아봤는데 자바에서 가변 매개변수를 받는 문법이었다. 찾아보고 나니 예전에 자바 공부를 하면서 배웠던 게 어렴풋이 기억이 난다. 여러 언어를 공부하다 보니 안 쓰다 보면 까먹어버리는 문법이 많은데 이런 편리한 문법이 있는 것도 기억 못 하고 구현하려고 하면 나만 손해니까 잘 기억해 두자. public void 함수(String s1) { } public void 함수(String s1, String s2) { } public void 함수(String s1, String s2, String s3) { } 들어오는 매개변수가 상황별로 다를 때 위와 같이 오버로딩을 하는 게 기본인데..