✨ 단잠 / 각기 다른 사람들이 모여 단잠에 들다 ✨ 단잠은 대학교 기숙사 메이트 매칭 및 대학 생활 커뮤니티 서비스입니다. 기숙사 메이트 매칭 외에도사용자의 성향에 맞는다양한 운동, 산책, 공부 메이트들을매칭시켜주고 지속적인 모임의 개설과 만남을 위한교류 시스템을 제공해줍니다. 💭 단잠의 탄생배경 단잠은 다양한 이유로 청년들의 기숙사 선호도가 올라가면서자연스럽게 발생하는 문제점과 요구사항에 대해 해소하고자 고안된 서비스 입니다. 발생하는 문제점입주 후에서야 알 수 있는 룸메이트의 성향과 정보로 인한 트러블 발생서로 상이한 생활 습관기숙사 생활 전반의 편의시설, 택배, 공지부족 등의 불편함기숙사 모임 시에 일정 조율의 어려움기숙사 거주 중 다양한 모임을 참여하고, 지속하기 어려움 이러한 문제점들을 해..
캡스톤 프로젝트를 진행하면서 우아한 테크코스의 코드 컨벤션을 따르게 되었습니다.그 중 Entity Layer단에셔 Setter를 지양하는 이유에 대해제대로 알지 못하고 사용했던 것 같아 정리하게 되었습니다. 사용했던 코드컨벤션 링크 woowacourse-docs/styleguide/java at main · woowacourse/woowacourse-docs우아한테크코스 문서를 관리하는 저장소. Contribute to woowacourse/woowacourse-docs development by creating an account on GitHub.github.com 코드 편리성 라이브러리 : Lombok@Setter 사용을 금지하고 메소드로 값을 변경하기setter 지양에 대해서는 주변에서 많이 들..
해당 포스팅은 김영한 스프링 강의를 보고 다시한번 복습을 위해 정리한 포스팅입니다. Srping Boot는 싱글톤 컨테이너를 지원합니다.그럼 싱글톤 컨테이너를 알기 전에 스프링에서의 컨테이너란 무엇을 의미할까요? 스프링 컨테이너를 알기 전 중요한 개념인 IoC에 대해서 먼저 알아보겠습니다. IoC란 (Inversion Of Contrlloer)?제어의 역전이라는 의미로, 스프링은 IoC 개념이 강하게 적용 된 기술입니다.프로그램의 제어 흐름을 직접 하는 것이 아닌, 외부에서 관리하는 것을 제어의 역전(IoC: Inversion Of Controller)라고 합니다. 예를 들어서 개발자가 작성한 어플리케이션의 코드가 개발자가 아닌, 프레임워크에 개념에 따라서 사용되는 것을 의미합니다. 위 그림과 같이 ..
오늘은 SpringBoot Controller 단에서 가장 많은 형태로 받아오는 @RequestBody @RequestPart @RequestParam @PathVariable 어노테이션 4가지에 대해 각각 특징을 알아보겠습니다. @RequestBody@RequestBody는 JSON 형태의 데이터를 Java 객체에 매핑할 때 사용하는 어노테이션입니다. Object의 변환을 위해 @RequestBody 어노테이션을 선언해주면 Spring의 HTTP 요청으로 넘어오는 body의 내용을 HttpMessageConverter를 통해 Java Object로 역직렬화합니다. multipart 요청이 아닌, 즉 어떤 바이너리 파일을 포함하고 있지 않은 데이터를 받는 역할을 해줍니다.@Getter@Setter@NoA..
GIT Repository 주소https://github.com/hobbytrip/hobbytrip GitHub - hobbytrip/hobbytrip: 함께하는 운동 커뮤니티 FitTrip repo함께하는 운동 커뮤니티 FitTrip repo. Contribute to hobbytrip/hobbytrip development by creating an account on GitHub.github.com서론FitTrip은 2024년도 03월부터 06월까지 총 3~4개월간 진행된 2024 강원대학교 캡스톤 프로젝트 헬스 중심의 커뮤니티 플랫폼 프로젝트입니다. 저는 스프링부트를 간단하게 학습만 해보고, 스프링부트를 이용하여 팀원들과 프로젝트를 진행한 것이 처음이었어서 부족한 점이 많았고, 그만큼 배운 점도 ..
해당 포스팅은 김영한 스프링 강의를 학습하고, 정리한 내용입니다. 객체지향과 스프링은 어떠한 관계가 있을 까 ?결론부터 얘기하자면 순수한 자바로 객체 지향 설계 원칙을 준수하다보면 스프링 프레임워크를 만들게 됩니다. 그렇다면 좋은 객체 지향 프로그래밍이란 무엇일까요? 좋은 객체 지향 프로그래밍이란?다형성하나의 타입의 여러 개의 객체를 넣을 수 있는 다형성이 가장 중요합니다.자바에서 다형성은 주로 인터페이스를 의미하며, 자동차라는 역할(인터페이스)가 있을 때 구현은 인터페이스를 구현한 클래스, 구현 객체를 통해서 이루어집니다. 클라이언트는 k3라는 구현체를 원할때 자동차라는 인터페이스만 알면 되기 때문에 내부 구조를 알지 않아도 됩니다. 이러한 다형성을 사용하기 위해서 객체를 설계할 때 역할과 구현을 ..
Oracle에서 MyBatis 일련번호를 생성하여 부여할 때selectKey와 MAX, NVL을 사용하여 일련번호를 생성하였습니다. selectKey를 사용하여 일련번호를 부여 SELECT NVL(MAX(일련번호), 0) + 1 FROM 테이블 WHERE 기본키 = 기본키 해당 방식을 기본적인 INSERT를 진행할 때 사용하는 것은 문제가 되지 않습니다. 하지만 제가 짜려던 쿼리문에서는 다른 테이블에서 조회한 데이터를 INSERT하는 쿼리였기 때문에 각 행마다 일련번호가 부여되면서 중복값이 발생해 무결성 제약 조건에 위배 되었습니다. Oracle에서 제공하는 ROWNUMROWNUM은 보통은 WHERE절에서 쿼리문을 제한하여 볼 때 많이 사용됩니다.1에서 5까지 4개 행을 불러..
회사 인턴을 진행하면서 equals와 equalsIgnoreCase, == 을 혼용하여 사용하였는 데사수님께서 각각 차이점이 무엇인지 알고사용하는 것이 좋을 거 같다고 하셔서 쓰게 된 포스팅입니다. 자바의 데이터 타입먼저 자바의 데이터 타입입니다.자바에서는 크게 데이터 타입이 원시타입(primitive type) 과 참조타입(reference type)으로 나뉘어집니다.원시타입 (primitive type)정수, 실수, 문자 논리 리터럴 등의 실제 데이터 값을 저장하는 타입으로 아래 항목들이 해당됩니다.int, long, double, float, boolean, byte, short, char참조타입 (reference type)객체(Object),를 참조(주소 저장) 하는 타입으로 메모리 번지 값을..