<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>thisis__________.log</title>
        <link>https://velog.io/</link>
        <description>THISIS..What is this?</description>
        <lastBuildDate>Sat, 05 Mar 2022 01:45:09 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>thisis__________.log</title>
            <url>https://images.velog.io/images/thisis__________/profile/3ea2d065-51c5-48e0-bd5d-3de86aa1fc26/social.png</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. thisis__________.log. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/thisis__________" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[어노테이션's]]></title>
            <link>https://velog.io/@thisis__________/%EC%96%B4%EB%85%B8%ED%85%8C%EC%9D%B4%EC%85%98s</link>
            <guid>https://velog.io/@thisis__________/%EC%96%B4%EB%85%B8%ED%85%8C%EC%9D%B4%EC%85%98s</guid>
            <pubDate>Sat, 05 Mar 2022 01:45:09 GMT</pubDate>
            <description><![CDATA[<blockquote>
<h2 id="getter">@Getter</h2>
</blockquote>
<ul>
<li>외부에서 객체의 데이터를 필요로 할 때 사용한다.</li>
</ul>
<blockquote>
<h2 id="setter">@Setter</h2>
</blockquote>
<ul>
<li>외부에서 메소드를 통해 객체를 변경할 때 사용한다.</li>
</ul>
<blockquote>
<h2 id="noargsconstructor">@NoArgsConstructor</h2>
</blockquote>
<ul>
<li>파라미터가 없는 기본 생성자를 생성해준다.</li>
</ul>
<blockquote>
<h2 id="allargsconstructor">@AllArgsConstructor</h2>
</blockquote>
<ul>
<li>모든 필드 값을 파라미터로 받는 생성자를 생성해준다.</li>
</ul>
<blockquote>
<h2 id="requiredargsconstructor">@RequiredArgsConstructor</h2>
</blockquote>
<ul>
<li>final 또는 @NonNull 인 필드 값만 파라미터로 받는 생성자를 생성해준다.</li>
</ul>
<blockquote>
<h2 id="entity">@Entity</h2>
</blockquote>
<ul>
<li>테이블에 대응하는 하나의 클래스다.</li>
</ul>
<blockquote>
<h2 id="id">@Id</h2>
</blockquote>
<ul>
<li>모든 Entity에 지정해주여야 하며, 해당 칼럼이 PK(Primary key)라는 것을 의미한다.</li>
</ul>
<blockquote>
<h2 id="generatedvalue">@GeneratedValue</h2>
</blockquote>
<ul>
<li>기본키를 무엇으로 생성할지를 정한다.</li>
</ul>
<blockquote>
<h2 id="column">@Column</h2>
</blockquote>
<ul>
<li>객체 필드와 DB 테이블 컬럼을 맵핑한다.</li>
</ul>
<blockquote>
<h2 id="builder">@Builder</h2>
</blockquote>
<ul>
<li>복합 객체의 생성 과정과 표현 방법을 분리하여 동일한 생성 절차에서 서로 다른 표현 결과를 만들 수 있게 하는 패턴이다.</li>
</ul>
<blockquote>
<h2 id="mappedsuperclass">@MappedSuperclass</h2>
</blockquote>
<ul>
<li>공통 매핑 정보가 필요할 대 사용한다. 즉 똑같고 반복되는 속성이 존재할 때 공통 속성을 갖는 Entity를 상속받고 싶을 때 사용할 수 있다.</li>
</ul>
<blockquote>
<h2 id="mapping맵핑매핑">@Mapping(맵핑,매핑)</h2>
</blockquote>
<ul>
<li>매핑은 키(key) 역할을 하는 데이터와 값(value) 역할을 하는 데이터를 연결해 저장하는 데이터 구조를 말한다. 키는 저장된 데이터의 구별에, 값은 그 키와 연결되어 저장된 데이터를 뜻한다.</li>
</ul>
<blockquote>
<h2 id="entitylistenersauditingentitylistenerclass">@EntityListeners(AuditingEntityListener.class)</h2>
</blockquote>
<ul>
<li>해당 클래스에 Auditing 기능을 포함시킨다.</li>
</ul>
<blockquote>
<h2 id="createddate">@CreatedDate</h2>
</blockquote>
<ul>
<li>해당 엔티티가 생성될 때, 생성하는 시각을 자동으로 삽입해준다.</li>
</ul>
<blockquote>
<h2 id="lastmodifieddate">@LastModifiedDate</h2>
</blockquote>
<ul>
<li>해당 엔티티가 수정될 때, 수정하는 시각을 자동으로 삽입해준다.</li>
</ul>
<blockquote>
<h2 id="service">@Service</h2>
</blockquote>
<ul>
<li>비즈니스 로직이나 respository layer 호출하는 함수에 사용된다. 다른 어노테이션과 다르게 @Component에 추가된 기능은 없다. 하지만 나중에 Spring 측에서 추가적인 exception handling을 해줄 수도 있으니 비즈니스 로직에는 해당 어노테이션을 사용한다.</li>
</ul>
<blockquote>
<h2 id="transactional">@Transactional</h2>
</blockquote>
<ul>
<li>데이터베이스의 상태를 변경하는 작업 또는 한번에 수행되어야 하는 연산들을 의미한다. begin, commit 을 자동으로 수행해준다. 예외 발생 시 rollback 처리를 자동으로 수행해준다.</li>
</ul>
<blockquote>
<h2 id="controller">@Controller</h2>
</blockquote>
<ul>
<li>Web MVC 코드에 사용되는 어노테이션이다. @RequestMapping 어노테이션을 해당 어노테이션 밑에서만 사용할 수 있다. </li>
</ul>
<blockquote>
<h2 id="component">@Component</h2>
</blockquote>
<ul>
<li>Spring에서 관리되는 객체임을 표시하기 위해 사용하는 가장 기본적인 annotation이다. 즉, scan-auto-detection과 dependency injection을 사용하기 위해서 사용되는 가장 기본 어노테이션이다.</li>
</ul>
<blockquote>
<h2 id="getmapping">@GetMapping</h2>
</blockquote>
<ul>
<li>이 어노테이션은 HTTP GET 요청을 처리하는 메서드를 맵핑(@RequestMapping) 하는 어노테이션이다. 메서드(url)에 따라 어떤 페이지를 보여줄지 결정하는 역할을 한다.</li>
</ul>
<blockquote>
<h2 id="enablejpaauditing">@EnableJpaAuditing</h2>
</blockquote>
<ul>
<li>pring Audit 기능을 사용하기 위해서는 @EnableJpaAuditing 어노테이션을 추가해야 한다.</li>
</ul>
<blockquote>
<h2 id="runwith">@RunWith</h2>
</blockquote>
<ul>
<li>JUnit 프레임워크의 테스트 실행방법을 확장할 때 사용하는 어노테이션</li>
</ul>
<blockquote>
<h2 id="autowired">@Autowired</h2>
</blockquote>
<ul>
<li>의존성 주입을 할 때 사용하는 Annotation으로 의존 객체의 타입에 해당하는 bean을 찾아 주입하는 역할을 한다.</li>
</ul>
<blockquote>
<h2 id="springboottest">@SpringBootTest</h2>
</blockquote>
<ul>
<li>통합 테스트를 제공하는 기본적인 스프링 부트 테스트 어노테이션 이다.</li>
</ul>
<blockquote>
<h2 id="afterjunit4">@After(Junit4)</h2>
</blockquote>
<ul>
<li>Junit 에서 단위 테스트가 끝날 때마다 수행되는 메소드를 지정한다.</li>
</ul>
<blockquote>
<h2 id="test">@Test</h2>
</blockquote>
<ul>
<li>해당 어노테이션을 메소드 위에 선언하먼 해당 메소드를 테스트 실행 대상으로 지정할 수 있다.</li>
</ul>
]]></description>
        </item>
    </channel>
</rss>