SpringBoot

스프링을 사용하기 위한 라이브러리 모음

 

IntelliJ Ultimate를 사용한다면 New Project로 바로 스프링부트 프로젝트를 만들 수 있다.

하지만 Ultimate는 1년에 149$의 사용료가 필요하다.

대학생의 경우 학교 이메일을 통해 무료로 제공하고 있다.

 

IntelliJ Community에서도 스프링부트를 사용할 수 있다.

다만 gradle설정이 필요하다.

생각보다 간단하니 무리해서 Ultimate를 살필요가 없다.

 

 

 

 

본 포스팅의 목표는 간단하다.

InteilliJ Community에서 위 사진의 스프링을 보는 것이다.

 

 


 

EmptyProject를 만들자

 

 

New Project에서 Empty Project를 선택한다.

 

 

 

 

 

프로젝트 이름을 설정하고 완료한다.

 

 

 

스프링부트 프로젝트를 위한 설정파일을 만들자

 

스프링 사이트에서 스프링부트 설정파일들을 만들 수 있다.

https://start.spring.io/

 

 

1. Maven을 사용할지 Gradle을 사용할지 고른다.

2. 언어를 선택한다.

3. 버전을 선택하자. (버전에 대해서는 잘 몰른다. default가 stable한 버전일 것이라 생각해 그래로 두었다.)

4. Group에 패키지를 입력하고 Artifact에 프로젝트 이름을 쓴다.

5. 자바 버전을 선택한다.

6. 사용할 라이브러리들을 선택한다.

 

Lombok의 경우 플러그인을 설치해야한다.

JUnit은 JUnit5로 설정되니 JUnit4을 사용하고 싶다면 depency를 따로 추가해야 한다.

 

EXPLORE를 선택한다.

 

 

 

 

그러면 위의 사진같이 패키지 구조를 어떻게 설정할지 나온다.

DOWNLOAD해서 패키지를 다운받고 압축을 푼다.

 

사실 여기서 중요한 것은 gradle 파일이다.

위에서 Empty Project 대신 gradle 프로젝트를 만들고 gradle을 설정해도 된다.

다만 gitignore나 SpringApplication을 따로 만들어야 하고 gradle 버전이 맞지 않으면 설정해야하는 등 다운받는게 더 간단한 것 같다.

 

 

 

스프링부트 구조를 프로젝트에 적용하자

 

 

New - Module from existing sources...

다운받은 패키지를 선택한다.

 

 

 

 

 

해당하는 것을 선택하고 완료한다.

 

 

 

 

 

위에서 본 패키지 구조대로 설정된다.

 

 

 

 

 

 

프로젝트이름이 들어간 Application 파일에 main function을 실행시켜보자.

그럼 우리의 목표인 스프링을 볼 수 있다.

 

 


 

목표는 완료했지만 브라우저에서도 볼 수 있는 것을 만들어 보자

 

 

 

아직 정확히 어떤 것이지 모르지만

GetMapping을 통해 RestAPI 같다는 느낌이 든다.

Annotation으로 GetMapping 외에서 PostMapping, PutMapping, DeleteMapping이 있다.

 

 

 

 

 

 

브라우저에서 localhost:8080/hello로 접근하면 위와같은 결과화면을 볼 수 있다.

 

 

 

 

'Server' 카테고리의 다른 글

서버알못의 AWS 설정2 - RDS  (0) 2020.06.18
서버알못의 AWS 설정1 - EC2 생성  (0) 2020.06.17

 

 

 

 

프리뷰 홈

https://developer.android.com/preview

 

Android 개발자  |  Android Developers

테스트, 개발 및 의견 제공을 위해 Android 차기 버전을 미리 살펴봅니다.

developer.android.com

 

 

 


 

 

 

Component Changing

 

Window Insets

IME Animation

IME를 에니메이션을 커스텀해 좀 더 뷰와 interaction한 UI를 만들 수 있다.

Insets에서 IME에 대한 정보를 통해 동기화된 UI를 만들 수 있다.

 

Conversations

기본적인 Notification이 아닌 Conversation을 통해 커뮤니케이션이 필요한 내용을 따로 관리하고 더 많은 정보를 보여줄 수 있다.

 

Bubbles

커뮤니케이션을 하기위한 depth를 줄일 수 있는 컴포넌트

기존에는 개발자 모드에서 사용할 수 있는 기능이었지만 11부터는 모든 사용자가 사용할 수 있다.

 

 

 

Privacy

 

Data Access Auditing

 

One-Time Permission

기존의 지속적인 권한허용이 아닌 1회용 권한허용 추가

 

Background Location

11에서는 더욱 제한적

우선 포그라운드에서 권한을 허용해야하고 백그라운드에서 사용하기 위해서는 한번 더 설정창(앱 내부가 아닌)에서 허용해야 한다.

 

Package visibility restrictions

패키지에 접근하기 위해서는 메니페스트 설정이 필요한듯 보인다.

 

Scoped Storage

MedialStore API로 편집하는 기능이 추가

 

Auto-reset permissions

앱을 오랜기간 사용하지 않는다면 권한 설정이 초기화될 수 있다.

 

 

 

Utility for Developer

 

Wi-Fi Debugging

현재는 수동으로 설정해야 하지만 Canry에서는 도구를 이용해 접근이 가능하다.

 

Nullability Annotations

@RecentlyNullable, @RecentlyNonNull makes Warnings

@Nullable, @NonNull makes Errors

 

Crash Reasons Reporting

앱에 문제가 생겼을 때 더 자세한 정보를 얻을 수 있다.

 

GWP-ASan

HWASan in Andorid10

 

ADB Incremental

용량이 큰 앱을 위해 10배 더 빠른 설치가 가능하게 해준다.

 

 

 

Graphics & Media

 

NDK Image Decoder 해독기를 직접 사용할 수 있다.

Animated HEIF GIF보다 가벼운 HEIF를 디코딩하여 에니메이션이 가능하다.

OpenSL ES deprecated -> Oboe

 

 

 

기타

 

Neural Networks API 머신러닝을 위한 API

5G 코드를 통해 네트워크가 5G를 지원하는 상황인지에 대한 결정할 수 있다.

Autofill/Keyboard Integration 

 

 

 

Jetpack

 

Hilt : Dagger에 설치된 의존성 라이브러리, DI 작업에 권장하는 새로운 방식

Paging

CameraX beta

Compose pre-alpha version

 

 

 

Android Studio

 

4.0 : Stable

Motion Editor

LayoutInspector

 

4.1 : Beta

DatabaseInspector(Room, SQLite) 기존의 다운로드 받아서 확인해야했던 방식에서 도구로 내장되었다.

 

4.2 : Canary

Wireless debugging with Android11

Jetpack Compose development

 

 

 

Google Play

 

New Play console beta

https://play.google.com/apps/

 

로그인 - Google 계정

하나의 계정으로 모든 Google 서비스를 Google 계정으로 로그인

accounts.google.com

 


 

AndroidDevelopers Youtube

위의 기본 소개영상 외에 분야별 영상들도 있다.

https://www.youtube.com/c/AndroidDevelopers/videos

 

Android Developers

Welcome to the official Android Developers YouTube channel. Get the latest Android news, best practices, live videos, demonstrations, tutorials, and more. Su...

www.youtube.com

 

'Android > Version' 카테고리의 다른 글

Q -> Android 10  (0) 2019.06.01
Pie_파이  (0) 2018.06.07
Oreo_오레오  (0) 2018.06.06
Nougat_누가  (0) 2018.06.06
Marshmallow_마시멜로  (0) 2018.06.06

 

 

 

 

이름 그대로 인스턴스가 만들어진 순간부터 소멸하는 순간까지의 루틴을 의미한다.

중요하고 반복적으로 발생하는 상황에 대한 처리를 위해 만들어졌다고 생각한다.

 

수명주기는 보통 많은 리소스를 가지고 있는 컴포넌트들이 가지고 있다.

그렇기 때문에 컴포넌트의 상태에 따라 필요없어지는 리소스 해제를 통해 가용공간을 늘리거나 컴포넌트의 소멸시 리소스 해제를 통해 메모리 누수를 막을 수 있다.

 

 

 


 

액티비티

 

 

 

 

onCreate / onDestroy : 액티비티가 생성되고 종료되는 순간에서의 처리

onStart / onStop : 액티비티가 조금이라도 화면에 보이는 순간과 보이지 않는 순간에서의 처리

onResume / onPause : 액티비티가 사용자와 상호작용을 할 수 있는 순간과 없는 순간에서의 처리

 

보통 위와 같이 짝으로 묶는다.

할당과 해제, 시작과 종료가 필요한 조합이기 때문이다.

 

 

 

https://developer.android.com/guide/components/activities/activity-lifecycle?hl=ko

 

Activity 수명 주기에 대한 이해  |  Android 개발자  |  Android Developers

An Activity is an application component that provides a screen with which users can interact in order to do something, such as dial the phone, take a photo, send an email, or view a map. Each activity is given a window in which to draw its user interface��

developer.android.com

 

 

 


 

프래그먼트

 

 

https://developer.android.com/guide/components/fragments?hl=ko

 

프래그먼트  |  Android 개발자  |  Android Developers

A Fragment represents a behavior or a portion of user interface in an Activity. You can combine multiple fragments in a single activity to build a multi-pane UI and reuse a fragment in multiple activities. You can think of a fragment as a modular section��

developer.android.com

 

 

 


 

 

 

 

https://www.charlezz.com/?p=29013

 

Android에서 View의 생명주기 | 찰스의 안드로이드

https://proandroiddev.com/the-life-cycle-of-a-view-in-android-6a2c4665b95e을 번역한 내용입니다. 안드로이드 앱을 실행할 때 우리가 가장 먼저 스크린에서 볼 수 있는 것이 View라고 말할 수 있다. View 클래스는 사�

www.charlezz.com

 

https://hyeonu1258.github.io/2018/03/26/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C%20%EB%A9%B4%EC%A0%91/

 

안드로이드 면접 | 현우의 개발노트

View가 그려지는 과정 뷰는 포커스를 얻으면 레이아웃을 그리도록 요청한다. 이때 레이아웃의 계층구조 중 루트 뷰를 제공해야한다. 따라서 그리기는 루트노드에서 시작되어 트리를 따라 전위 ��

hyeonu1258.github.io

 

'Android > Common' 카테고리의 다른 글

비동기  (0) 2020.05.14
안드로이드 개발자 로드맵  (2) 2020.05.07
안드로이드 프로젝트 루틴  (0) 2020.02.20

+ Recent posts