본문 바로가기

Spring10

Annotation 사전적 의미로는 주석이라는 뜻이지만, 자바에서 Annotaion(@)은 코드 사이에 특별한 의미, 기능을 수행하도록 하는 기술이다.프로그램 코드의 일부가 아닌 프로그램에 관한 데이터를 제공하고, 코드에 정보를 추가하는 정형화된 방법이다.어노테이션을 사용하면 코드가 깔끔해지고 재사용이 가능하다.컴파일러에게 코드 작성 문법 에러를 체크하도록 정보를 제공소프트웨어 개발 툴이 빌드나 배치시 코드를 자동으로 생성할 수 있도록 정보를 제공실행시(런타임시) 특정 기능을 실행하도록 정보를 제공어노테이션을 사용하기 위한 순서는 아래와 같다.1. 어노테이션을 정의한다.2. 클래스에 어노테이션을 배치한다.3. 코드가 실행되는 중에 Reflection을 이용하여 추가 정보를 획득하여 기능을 실시한다. @SpringBootAp.. 2024. 8. 20.
Spring MVC & 3 Layer (by김동현튜터님) Spring MVC (Spring Boot) 이게 뭐야?Spring은 뭘까요?Spring은 자바 어플리케이션 개발을 도와주는 프레임워크Spring 생태계에는 여러가지 서비스가 있습니다!채용 시장에서 종종 보이는 Spring 서비스1. 스프링 MVC (Model-View-Controller)목적: 전통적인 동기식 웹 애플리케이션 개발을 위한 프레임워크.아키텍처: 동기식 요청-응답 기반으로 동작. 클라이언트가 요청을 보내면 서버는 요청을 처리하고, 처리 결과를 클라이언트에 응답으로 보냅니다.주요 특징:전통적인 웹 개발에 많이 사용되며, 템플릿 엔진(e.g., Thymeleaf, JSP)과 함께 뷰(View)를 렌더링합니다.HTTP 프로토콜을 기반으로 동작하며, RESTful 웹 서비스 구축에도 자주 사용됩니.. 2024. 8. 19.
Spring 메모리에서 비교하기 @@ 수정 시간을 받아서 데이터베이스에 저장되어있는 시간과 비교해서 일치하면 변경해주는 코드를 짜던중받는 시간은 Date를 받아 String으로 변형후 database에 저장!database에서 String을 받아 비교문제점은 database에 저장한 시간 format == YY-MM-DD HH:MM:SS하지만 비교하기 위해 받는 시간의 format == YY-MM-DD 따라서 2가지 방법을 생각해보았다.1.database의 varchar형식을 가져올때 format 형식을 바꿔서 비교 DATE_FORMAT(date2, '%Y-%m-%d')= ?2.database의 값을 가져올때 원하는 부분만 짤라서 들고와 비교 (SELECT left(date2,10) FROM schedule) = ? 2024. 8. 15.
3 Layer Architecture 메모장 프로젝트의 문제점현재 우리가 작성한 메모장 프로젝트는 Controller 클래스 하나로 모든 API를 처리하고 있습니다.현재는 API 수가 적고 기능이 단순하여 코드가 복잡해 보이지 않을 수 있지만 앞으로 기능이 추가되고 복잡해진다면 문제가 발생할 수 있습니다.한 개의 클래스에 너무 많은 양의 코드가 존재하기 때문에 코드를 이해하기 어렵습니다.현업에서는 코드의 추가 혹은 변경 요청이 계속 생길 수 있습니다.문제가 발생했는데 해당 Controller 클래스를 구현한 개발자가 퇴사한다면?👉 이러한 문제점들을 해결하기 위해 서버 개발자들은 서버에서의 처리과정이 대부분 비슷하다는 걸 깨닫고, 처리 과정을 크게 Controller, Service, Repository 3개로 분리했습니다.👉 이러한 문제.. 2024. 8. 15.