본문 바로가기
반응형

분류 전체보기91

[Spring] Spring 웹 개발 기초 해당 글은 김영한 님의 강좌를 공부하고 정리한 글입니다. Spring을 통해 웹 개발을 할 때 3가지 방식이 있다고 합니다. 정적 콘텐츠(Static Content) MVC와 템플릿 엔진 API ✅ 정적 컨텐츠(Static Content) 말 그대로 순수 HTML로 이루어진 파일을 서버가 따로 렌더링 없이 사용자에게 웹브라우저를 통해 보여주는 것입니다. Spring에서는 정적 콘텐츠를 /static 폴더에서 다룬다고 합니다. 사용자가 정적 페이지(hello.html)를 요청 Spring Boot의 내장 톰켓 서버가 이를 Spring Container에게 전달 Spring Container는 페이지에 해당하는 Controller가 있는지 확인 없다면 resources 폴더의 static/hello.html.. 2021. 8. 16.
[운영체제] 운영체제의 구조 (커널과 인터페이스) 🔷 커널과 인터페이스 운영체제는 커널과 인터페이스로 이루어져 있습니다. 커널 : 프로세스 관리, 메모리 관리, 저장장치 관리와 같은 운영체제의 핵심적인 기능을 모아놓은 것으로 운영체제의 성능을 좌우합니다. (자동차의 엔진에 해당한다.) 인터페이스 : 사용자의 명령을 전달하고 실행 결과를 사용자에게 알려주는 역할을 합니다. 운영체제는 커널과 인터페이스를 분리하여 같은 커널을 사용하더라도 다른 인터페이스를 가질 수 있습니다. 🔷 시스템 호출과 디바이스 드라이버 이번에는 커널 내부에 있는 시스템 호출과 드라이버에 대해 알아볼 겁니다. 🔴 시스템 호출(System Call) 커널이 자신을 보호하기 위해 만든 인터페이스입니다. 사용자나 프로그램이 직접 컴퓨터 자원에 직접 접근하는 것을 막습니다. 그러므로 사용자나.. 2021. 8. 15.
[Android] 스마트폰 내장 DB를 사용하기 위한 Room 2탄 🔶 Repository와 MVVM에서 사용 이제 우리가 만든 Room DB를 실제적으로 사용할 수 있게 Repository를 만들어 봅시다. 이때 주의할 점은 Room DB가 메인 스레드에서 접근하려면 하면 에러가 납니다. 그래서 별도의 스레드를 사용해야 합니다. 그래서 비동기 처리를 위해 코루틴을 적용했습니다. class UserRepository(application: Application) { private val userDatabase = UserDatabase.getInstance(application)!! private val userDao: UserDao = contactDatabase.userDao() private val users: LiveData = userDao.getAll() fu.. 2021. 8. 13.
[Spring] 프로젝트 생성 ✅ Spring 프로젝트 생성 처음 스프링을 접하는 나와 같은 사람들은 프로젝트를 생성하는 것이 까다로울 수 있습니다. 그래서 이미 Spring Initializr라는 웹사이트를 통해 간단하게 프로젝트를 생성할 수 있게 제공을 해줍니다. https://start.spring.io/ 페이지에 들어가면 아래와 같이 되어 있습니다. 간단하게 위에서부터 차례대로 보면 Project : 대부분의 프로젝트들이 Gradle로 되어있어 Gradle로 만드는 것을 추천합니다. Language : 나는 Java로 할 예정이니 Java를 선택합니다. Spring Boot : (SNAPSHOT), (M1)은 아직 정식 버전이 아니어서 이들에 해당하지 않는 것 중 최신 버전으로 선택하고 Project Metadata : Gro.. 2021. 8. 12.
[MySQL] JOIN 이란? (INNER, OUTER, CROSS) 🔶 Intro RDBS에서 두 개 이상의 테이블을 서로 묶어서 하나의 결과를 보아야 할 경우가 많습니다. 예를 들어 쇼핑몰에서 상품을 구매한 회원 목록을 출력하기 위해선 회원 정보 테이블과 구매 테이블을 연결해야 합니다. 이때 사용하는 것이 join입니다. 예를 들어 아래의 2개의 테이블이 가지고 있습니다. 🔶 INNER JOIN 이너 조인은 우리가 조인하고자 하는 두 개의 테이블에서 공통된 요소들을 통해 결합하는 조인 방식입니다. select from inner join on [where 검색조건] 사원의 정보와 해당하는 부서를 동시에 보고 싶을 때 아래와 같은 query문을 사용하면 다음과 같은 결과를 얻을 수 있습니다. SELECT * FROM user u INNER JOIN user_group g.. 2021. 8. 9.
[Android] 스마트폰 내장 DB를 사용하기 위한 Room 1탄 🔶 Room 이란? Android App에서 SQLite 데이터베이스를 쉽고 편리하고 쉽게 사용할 수 있게 해주는 라이브러리입니다. 보통 스마트폰 내장 DB에 데이터를 저장하고 싶을 때 많이 사용합니다. DAO, Entity, RoomDatabase로 구성되어 있다. 구조는 아래와 같습니다. Dependency는 아래의 페이지로 들어가 확인할 수 있습니다. https://developer.android.com/jetpack/androidx/releases/room Room | Android 개발자 | Android Developers Room Room 지속성 라이브러리는 SQLite에 추상화 레이어를 제공하여 SQLite를 완벽히 활용하면서 더 견고한 데이터베이스 액세스를 가능하게 합니다. 최근 업데이트.. 2021. 8. 8.
반응형

loading