기술 창고(229)
-
[Java] Java를 활용한 분산 시스템
분산 시스템은 어디에서나 존재하는 시스템입니다. 영화를 보거나 온라인 쇼핑, 휴대폰으로 차량 공유 서비스들을 이용할 때 인터넷에서 무언가를 검색할 때마다 사실 우리는 앱이나 웹 페이지를 통해 그 뒤에 있는 분산 시스템과 통신합니다. 이런 서비스를 제공하는 모든 기업은 전 세계에 걸쳐 고도로 확장이 가능한 대규모 분산 시스템을 운영하여 매일 수백만명의 사용자와 데이터를 처리하고, 일정하고 원활한 사용자 경험을 제공합니다. 또한, 클라우드에서 호스팅 되는 아주 간단한 웹사이트 조차도 분산 시스템에서 동작합니다. 클라우드는 특별히 기업을 위해 구축된 복잡한 분산 시스템인 만큼 소프트웨어 개발자들이 맡기 때문에 사용자들은 제품에 집중하고 나머지 부분은 클라우드 공급 업체가 처리하도록 할 수 있습니다. 중앙 집중..
2024.03.19 -
CentOS 에 MySQL 8.0 설치
CentOS 운영체제에서 MySQL DB를 사용하기 위해 설치하는 과정에 대해서 정리해보겠습니다. (1) yum install https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm yum install 명령어를 통해 MySQL 8.0 커뮤니티 버전의 저장소 설치 파일 주소를 넣어 y를 눌러 진행해줍니다. complete! 구문이 나오면 정상적으로 설치하고자 하는 MySQL 버전의 설치 저장소가 설치된 것입니다. (2) yum install mysql-server 이제 본격적으로 mysql-server를 설치해줍니다. 에러 발생 시! 더보기 이 때! 이와 같은 에러 메세지가 발생하면, gpgcheck 옵션을 확인하고 수정해주어야 합니다...
2024.02.20 -
CentOS 에 JDK 17 버전 설치
CentOS 운영 체제에서 자바 및 Spring 프로젝트를 배포하여 사용하기 위해 JDK 를 설치하는 방법에 대해서 정리해보겠습니다. # CentOS는 더 이상 페키지 업데이트를 지원하지 않아 Yum으로 설치 가능한 OpenJDK는 11버전이 최대라고 합니다. (1) sudo yum -y install wget curl yum 을 통해 wget curl 패키지를 설치합니다. (2) cd /tmp ### Linux 64-bit ### wget https://download.java.net/java/GA/jdk17.0.2/dfd4a8d0985749f896bed50d7138ee7f/8/GPL/openjdk-17.0.2_linux-x64_bin.tar.gz tmp 경로로 들어가 wget 패키지로 설치할 Open..
2024.02.20 -
[MySQL] Spring Boot 에서 MySql의 랜덤 함수 사용하기 (QueryDSL)
Spring Boot 를 통해 프로젝트를 만들고 DB는 MySQL을 사용할 때 일반적으로 JPA나 JPQL, 혹은 QueryDSL을 주로 사용할 것 입니다. 일반적인 기본 연산들이나 조회 연산들은 수행되지만 MySQL 워크 벤치에서는 수행되는 랜덤 함수는 JPQL을 사용할 때는 지원하지만 일반적인 JPA나 QueryDSL을 사용할 때에는 지원하지 않습니다. 이를 JPA나 QueryDSL을 사용하고 있는 환경에서 사용하기 위해서는 별도의 Template 처리를 통해 랜덤 함수를 사용하겠다는 설정을 해주어야 합니다. 오늘은 QueryDSL 환경에서 랜덤 함수를 사용할 수 있는 방법에 대해 간단하게 정리해보겠습니다. (1) 템플릿 생성 및 설정 import com.querydsl.core.types.Ops; ..
2024.01.30 -
[React Native] 간단하게 레이아웃 구성 알아보기
이번에는 React Native 의 레이아웃 구성에 대해서 간단하게 알아보겠습니다. React Native에서는 대표적으로 레이아웃 구성을 View 컴포넌트 구성 요소를 활용하여 만듭니다. App.js import { StatusBar } from 'expo-status-bar'; import { StyleSheet, Text, View, Button , TextInput} from 'react-native'; export default function App() { return ( 목표 리스트... ); } const styles = StyleSheet.create({ appContainer: { padding: 50 } }); - 레이아웃 일반 html 에서 레이아웃을 구분하기 위해 보통 div 태그..
2024.01.05 -
[React Native] 리액트 네이티브 스타일링
React Native에서는 어떻게 구성 요소들을 스타일링 하는지 알아보겠습니다. 이전에도 정리했듯 React Native는 브라우저에서 동작하는 것이 아니기 때문에 일반 html 처럼 css 파일을 만들어 적용할 수 없습니다. 대신에 인라인 방식으로 스타일을 구성 요소에 직접적으로 적용시켜 사용하거나, StyleSheet 과 같은 개체를 사용하여 JavaScript를 사용하는 것처럼 특정 스타일 변수를 만들어 구성 요소에 적용시키는 것이 대표적이라고 했습니다. 스타일링 개체 사용 / Inline 방식의 스타일 적용 App.js import { StatusBar } from 'expo-status-bar'; import { StyleSheet, Text, View, Button } from 'react-..
2024.01.04