일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
- 클래스
- socket
- 상속
- 자바
- 인스턴스
- springDataJPA
- JavaScript
- springboot
- 백준
- 깃허브
- Spring
- mavenCentral
- 멀티쓰레드
- 템플릿엔진
- 생성자
- 카카오코딩테스트
- java
- jcenter
- 코딩
- 사용자관리프로그램
- 바인드변수
- 메소드
- 컬렉션프레임워크
- HTML모드
- SwingCalendar
- Swing
- 서버
- 클라이언트
- Oracle
- JPA Auditing
- Today
- Total
목록전체 글 (69)
프리 정보 컨텐츠
spring annotation 에는 많은 종류가 있어 사용하는데 헷갈림이 많았습니다. 이번 기회에 정리하면서 각 어노테이션이 무슨 역할을 하고 어떻게 사용하는지를 정리하고자 합니다. @Component안에는 @Controller, @Service, @Repository 세 가지 어노테이션으로 구분되어집니다. @Component를 사용해도되지만 각각의 어노테이션이 하는 역할을 정해줌으로써 좀 더 세밀하게 구분지어줍니다. Spring MVC 의 구조를 통해서 알아보겠습니다. 사용자 입출력을 담당하는 컨트롤러(C), 사용자에 요구사항에 맞는 요구사항을 역할하는 Service, 데이터를 제공받는 Repository(Dao) 로 나누어집니다. 자바 코드를 작성할 때 소스 코드를 보고있는 Controller, S..
@Autowired를 사용하기 전에 어노테이션을 사용하지 않는 경우는 어떠한 상황이며 왜 어노테이션을 사용해야하는지에 대한 의문이 생겨서 정리하고자 합니다. 위의 예제는 어노테이션을 사용하지않고 XML로 설정할 때의 객체 설정 방법입니다. B2를 사용하다가 업데이트 할 경우 B3로 대체해주어야 하는 경우를 예로 들겠습니다. 새로운 객체를 B3로 바꾸어줄경우에 class에 있는 코드를 data B3로 수정해주어야 합니다. 이런 귀찮음(?)을 해결해주기위해 객체를 바꾸었을 때 설정도 같이 바꾸도록 하기 위해 어노테이션을 사용합니다. 스프링에서 코드를 읽을 수 있도록 메타 데이터인 @Component 를 붙여 이를 객체화합니다. 설정파일 없이 코드내에서 어노테이션을 사용함으로써 객체를 바꾸어주는 간편함이 어노..
단위테스트 코드를 작성하던중 Junit4에서 사용하는 @RunWith(SpringRunner.class)라는 어노테이션을 지속적으로 사용해주었는데 몇 가지 의문점이 생겨서 정리하고자 합니다. 의문점은 아래와 같습니다. @SpringBootTest가 아닌 @RunWith(SpringRunner.class)를 사용하는 이유?? @RunWith와 더불어 @RunWith(SpringRunner.class) -> 정확히 무슨 역할을 하는지?? 대답은 아래와 같습니다. 1. @SpringBootTest를 사용하면 application context를 전부 로딩해서 자칫 잘못하면 무거운 프로젝트로서의 역할을 할 수 있습니다. 하지만 Junit4에서 지원하는 @RunWith(SpringRunner.class)를 사용한..
이동욱 저자님의 스프링 부트와 AWS로 혼자 구현하는 웹 서비스를 따라하며 SpringBoot의 어노테이션을 정리하고자 합니다. Application 은 프로젝트의 메인 클래스로서 SpringApplication.run으로 인해 내장 WAS(Web Application Server)를 실행합니다. 내장 WAS란 별도로 외부에 WAS를 두지않고 내부에서 WAS를 실행하는 것을 말합니다. 이렇게 하면 항상 서버에 톰캣을 설치할 필요가 없게 되고, 스프링 부트로 만들어진 jar 파일로 실행하면 됩니다. @SpringBootApplication이 하는 기능에 대해서 자세하게 알아보겠습니다. package com.son.admin; import org.springframework.boot.SpringApplica..
아래와 같이 springboot gradle 프로젝트를 작업 중에 build.gradle 설정을 해주었습니다. 문득 mavenCentral() 과 jcenter() 두 개의 차이점은 무엇이고 왜 설정해주는 것인가에 대한 근본적인 이유에 대해서 궁금증이 생겨서 정리를 해봐야겠다는 생각이 들었습니다. buildscript { ext { springBootVersion = '2.1.7.RELEASE' } repositories { mavenCentral() jcenter() } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") } } apply plugin: 'java' apply ..
스프링과 스프링부트를 통해서 프로젝트를 하던 경험 중 메이븐, 그래들로 각각의 프로젝트를 했던 경험이 있는데 자세한 개념없이 절차에 의해서만 했던 경험이 있기에 간단한 정리를 통해 알아보겠습니다. 메이븐(Maven)이란?? 메이븐은 아파치 메이븐(Apache Maven)이라 불리는 자바용 프로젝트 관리 도구이다. 그래들과 메이븐은 빌드 관리 도구라고 일컫으며, 프로젝트내에 작성한 java코드와 xml, properties, jar파일들을 JVM이나 WAS가 인식할 수 있도록 해주는 빌드 과정이라 말할 수 있다. 즉, 프로젝트 생성, 테스트 빌드, 배포 및 외부 라이브러리를 간편한 설정을 통해 설정하고 도와주는 도구이다. 그래들(Gradle)이란?? 그래들은 그루비를 이용한 빌드 자동화 시스템이며 메이븐과..
AJAX(Asynshronous Javascript And Xml)는 자바스크립트의 라이브러리 중 하나로 비동기식(웹 페이지를 리로드하지 않고 데이터를 불러오는 방식) 자바스크립트와 XML의 약자로 브라우저가 가지고 있는 XMLHttpRequest 객체를 이용하여 전체페이지를 새로고침 할 필요없이 필요한 일부분의 데이터만을 갱신할 수 있게 도와줍니다. AJAX는 왜 사용할까요? AJAX는 왜 사용하는걸까요? 간단하게 이해하자면 카카오, 네이버의 트래픽이 많은 통신량을 관리할 때 리소스들을 관리하기 위함입니다. 페이지가 전환될 때마다 모든 파일을 다운받고 모든 요청을 주게된다면 웹 페이지의 속도는 느려지기 때문에 클릭해서 원하는 내용만 요청을 받아와 부분적으로 변경할 때 AJAX를 사용하므로 AJAX를 사..
JSP로만 개발을 해오다가 스프링 부트와 AWS로 혼자 구현하는 웹 서비스라는 책을 보며 JSP외에 Freemarker, Thymeleaf, Mustache 등을 알게되어 머스테치의 개념과 사용법에 대해서 알아보겠습니다. 서버 템플릿 엔진? 클라이언트 템플릿 엔진? 머스테치를 알아보기전에 먼저 템플릿 엔진에 대한 개념에 대해서 알아보고자합니다. 템플릿 엔진의 개념은 지정된 템플릿 양식과 데이터가 합쳐져 HTML문서를 출력하는 소프트웨어를 말합니다. JSP, Freemarker, React, Vue.js 결과적으로 모두 템플릿이나 서버 템플릿, 클라이언트 템플릿으로 구분합니다. 클라이언트 템플릿 엔진 Server(Java 코드 실행) -> JSON || XML 형식 변환 -> JSON + HTML(Java..