전체 글142 [Kotlin] 코틀린 클래스와 프로퍼티 코틀린에서의 클래스와 프로퍼티에 대해 알아봅니다. 코틀린 클래스(Class) 자바에서 아래와 같은 Person 클래스를 public class Person { private final String name; public Person(String name) { this.name = name; } public String getName() { return name; } } 코틀린 코드로 바꿔보면? 단! 한줄로 가능합니다. class Person(val name: String) 코틀린에서는 명시하지 않아도 기본적으로 public 접근제한자여서 생략이 가능합니다. 코틀린 프로퍼티(Property) 요즘 나온 언어들과 같이 프로퍼티에 읽기 전용과 변경 가능한 프로퍼티가 있습니다. val : 읽기 전용 프로퍼티 v.. 2022. 3. 15. [Spring] @SpringBootApplication 어노테이션 @SpringBootApplication은 아래 어노테이션을 추가한 편의성 어노테이션입니다. @Configuration 애플리케이션 컨텍스트에 대한 빈 정의 소스로 클래스에 태그를 지정합니다. @EnableAutoConfiguration Spring Boot에 클래스 경로 설정, 기타 Bean들과 다양한 property 설정을 기반으로 bean을 추가하도록 한다. 예를 들어 spring-webmvc가 클래스 경로에 있는 경우 이 어노테이션은 애플리케이션에 웹 애플리케이션으로 플래그를 지정하고 DispatcherServlet 설정과 같은 주요 동작을 활성화합니다. @ComponentScan Spring이 예를들어 com/example/demo 패키지에서 선언된 components, configuration.. 2022. 3. 15. [Spring] 스프링 웹 어노테이션 (Spring Web Annotation) Spring에서의 Spring Web 어노테이션을 이용하여 RESTful 웹 서비스를 만들어보자. http://localhost:8080/greeting API GET 요청으로 아래의 JSON 응답을 받는 API를 작성해보자. {"id":1,"content":"Hello, World!"} 먼저 greeting 모델 클래스를 만들자. package com.example.demo; public class Greeting { private final long id; private final String content; public Greeting(long id, String content) { this.id = id; this.content = content; } public long getId() { ret.. 2022. 3. 15. [드라마] 스물다섯 스물하나 10화 명대사 요즘 푹 빠져있는 드라마 스물다섯 스물하나. 김태리와 남주혁의 직진 사랑 고백에 봄처럼 설레이는 마음으로 헤어나올 수가 없습니다. 드라마의 대사 하나 하나가 다 명대사라서 한 회에도 명대사들이 주르륵 쏟아져나오네요. 오늘은 3월 13일에 방송된 tvN '스물다섯 스물하나' 10화 명대사를 읊어봅니다. 사랑이야 난 널 사랑하고 있어 나희도. 무지개는 필요 없어 난 네가 뭘 하든 어떤 모습이든, 있는 그대로 너 자체를 사랑하고 있고, 이 고백으로 네가 좀 더 행복해진다면 난 바랄게 없어 - 백이진(남주혁) 듬성듬성 비어 있던 세상이 가득 차는 기분 모든 낯선 것과 친구가 되고 닥쳐 올 불행과도 잘 지낼 수 있을 것 같은 기분. 강해지는 기분. 한순간에 두려운 게 없는 사람이 되었다 나희도(김태리) 우리가 이.. 2022. 3. 15. [Spring] @Controller 과 @RestController 어노테이션 Spring MVC에서 @Controller와 @RestController 어노테이션의 차이점에 대해 알아봅니다. @RestController 어노테이션은 Spring 4.0 에서 새롭게 추가가 되었습니다. 기존의 @Controller와 @ResponseBody를 결합한 어노테이션으로 모든 요청 처리에 대해 @ResponseBody를 추가할 필요가 없습니다. @Controller을 사용 package com.example.demo; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; @Controller @RequestMapping("users") public class User.. 2022. 3. 14. [크롬확장프로그램] 크롬 화면 캡쳐, lightshot 라이트샷 구글 크롬에서 화면 캡쳐 프로그램 lightshot 설치 크롬 웹스토어에 들어갑니다. lightshot을 검색합니다. chrome에 추가를 선택합니다. 사용 웹브라우저 주소창 옆의 보라색 깃털을 클릭합니다. 그럼 현재화면을 캡쳐하고 영역 선택을 할 수 있는 창이 뜹니다. 사용할 영역을 선택후 복사 또는 저장을 합니다. 또는 특정 영역을 색을 바꿔 네모칸으로 영역을 표시하는 것도 가능합니다. Lightshot is the fastest way to take a customizable screenshot. Simple interface, nothing useless and light weight. Features: * take screenshot and share it in few clicks * selec.. 2022. 3. 14. [Spring] Spring Boot 프로젝트 시작하기 Spring Boot 프로젝트 시작하기 start.spring.io 사이트에 접속해서 web project를 생성합니다. Spring initializr에서 해당 화면에서 Project, Language, Spring Boot 버전등을 원하는 대로 선택하고, Depedencies > ADD DEPENDENCIES.. 를 클릭합니다. ADD DEPENDENCIES.. 를 눌러서 Spring Web 을 선택하면, 창이 닫히고 Spring Web이 추가되어있는 것을 확인할 수 있습니다. 하단의 GENERATE 버튼을 클릭하면 demo.zip 파일은 다운로드 합니다. 방금 다운로드 받은 파일을 IDE의 프로젝트를 열어봅니다. (저는 인텔리제이를 사용하여 프로젝트를 열어봅니다.) NEW > Project from.. 2022. 3. 14. [JAVA] Java8 Stream Skip()과 limit() Java Stream API의 Skip()과 limit()에 대해서 유사한점과 차이점을 알아봅니다. skip(n) Stream의 처음 n개의 요소를 버리는 작업입니다. skip(long n) Returns a stream consisting of the remaining elements of this stream after discarding the first n elements of the stream. 스트림의 첫 번째 요소를 버린 후 이 스트림의 나머지 요소로 구성된 스트림을 반환합니다 이 스트림에 요소보다 적은 수 n의 요소가 포함되어 있으면 빈 스트림이 반환됩니다. 이것은 상태 저장 중간 작업(stateful intermediate operation) 입니다. Stream.of(1, 2, 3, .. 2022. 3. 14. [JAVA] String 문자열 선언과 사용 String 선언 Java에서 String 타입을 선언하려면 아래의 두가지 방식으로 선언이 가능합니다. String str = "TEST"; // 1.리터럴로 선언 //or String str = new String("TEST"); // 2.생성자를 이용한 선언 1. 리터럴로 선언 객체 생성없이 값을 그대로 대입하는 방법입니다. "TEST"라는 문자열을 String 상수 풀(String constant pool)에 저장하고, 다음에 다시 동일한 문자열이 선언될때 이 풀에서 꺼내어 재사용을 합니다. 2. 생성자를 이용한 선언 생성자를 사용하여 선언을 하면 String을 인스턴스화 할때 새로운 객체가 생성이 됩니다. String의 생성자는 아래와 같이 다양합니다. (JDK 8 기준) String 사용 Sys.. 2022. 3. 13. [JAVA] Java8의 Streams 소개 Java8에서 추가된 Streams에 아주 기본적인 것을 알아봅니다. Stream API Stream은 데이터의 흐름입니다. 배열 또는 컬렉션 인스턴스에 함수 여러개를 조합해서 원하는 결과를 필터링하고 가공된 결과를 얻을 수 있습니다. 예를 들어: Collection인 widgets을 stream의 소스로 사용하여 해당 stream에 대해 필터링을 하고 map-reduce를 수행하여 빨간색 위젯의 가중치 합계를 얻을 수 있습니다. int sum = widgets.stream() .filter(b -> b.getColor() == RED) .mapToInt(b -> b.getWeight()) .sum(); Stream 생성하기 String[] arr = new String[]{"a", "b", "c"}; .. 2022. 3. 12. 이전 1 ··· 9 10 11 12 다음