728x90
반응형

전체 글 599

BlueTooth Classic VS BlueTooth Low Energy

BLE(Bluetooth Low Energy)와 Bluetooth Classic은 둘 다 **Bluetooth** 기술을 기반으로 하지만, 목표로 하는 사용 사례와 성능 요구 사항에 따라 서로 다른 **프로토콜 스택**과 특성을 가집니다. 그 결과, 두 기술은 전송 속도, 전력 소비, 연결 방식에서 큰 차이를 보입니다. 아래는 **BLE**와 **Bluetooth Classic**의 프로토콜 차이에 대한 설명입니다. ### 1. **주요 목표 및 사용 사례**- **Bluetooth Classic**:   - 주로 **고대역폭**과 **지속적인 데이터 전송**이 필요한 애플리케이션에 사용됩니다.   - 음성 통화(헤드셋), 고음질 음악 스트리밍(A2DP), 파일 전송 등이 주요 사용 사례입니다.   - ..

Android 공부 2024.09.13

Server-Sent Events vs WebSockets

Server-Sent Events (SSE)와 WebSockets는 실시간 통신을 위해 사용되는 두 가지 기술입니다. 각 기술의 특징, 장점, 단점, 그리고 사용 사례를 비교해보겠습니다. ### Server-Sent Events (SSE) **특징:** - HTTP 기반의 단방향 통신. - 클라이언트가 서버에 연결을 시작하고, 서버는 지속적으로 데이터를 클라이언트로 전송. - 텍스트 기반의 데이터 전송. - HTML5 표준의 일부. **장점:** - 구현이 비교적 간단하고, 기존 HTTP 인프라와 잘 통합됨. - 브라우저에서 기본 지원 (추가 라이브러리 필요 없음). - 자동 재연결 및 연결 손실시 이벤트 제공. - 헤더 설정을 통해 캐시 및 프록시와 호환 가능. **단점:** - 단방향 통신만 가능 (..

Java Spring 2024.07.02

Android Studio / Inteli J 디버깅

🧪 debugging resume 다음 break point로 이동 Windows: F9 Mac: ⌥ + ⌘ + R step over 현재 break된 파일의 다음 라인 이동 Windows / Mac: F8 step into 현재 break된 라인에서 실행 중인 라인으로 이동 Windows / Mac: F7 ex) UserService의 userDao.save() 라인 -> step into -> UserDao의 save() 메서드로 이동 force step into stepping에 설정된 클래스/메서드 과정은 스킵하지 않고 현재 break된 라인에서 실행 중인 라인으로 이동 (step into는 스킵한다) Windows: alt + shift + F7 Mac: ⌥ + ⌘ + F7 settings의 s..

Android 2024.03.13

Spring Web Application 구조도 ( 퍼옴 )

Spring 웹 애플리케이션 계층 구조 아무리 봐도 왜 controller, domain, repository, service라는 패키지를 만들었는지 이해를 할 수 없다. 따라서 더 깊이 파보려고 한다. 이 그림은 스프링의 웹 계층에 대해서 표현해둔것이다. 스프링의 웹 계층은 4가지로 나뉜다. Domain Model Presentation Layer(Controller) Business Layer(Service Layer) Data Access Layer(Reopsitory Layer) Domain Model 일단 먼저 웹을 설계할때 도메인을 먼저 정하는게 중요하다. Domain 도메인 모델(객체)은 내가 개발하고자 하는 영역을 분석하고, 그 분석의 결과로 도출된 모델(객체)이라고..

Java Spring 2024.03.05

Spring CMD 환경에서 빌드하기

cmd 창에서 순서대로 하면 됩니다. 1. cmd창 켜고, 스프링 프로젝트가 있는 폴더로 이동 > cd 폴더경로 2. gradlew 명령어 실행 (아래 순서대로 입력) > gradlew.bat 빌드 성공 > gradlew build 3. 실행파일(.jar) 찾아가기 > cd build > dir //build 폴더의 파일/디렉터리 보기 libs 폴더가 있음 > cd libs > dir libs 폴더 안에 자바 실행파일(.jar)이 있음 4. 실행 > java -jar 파일명 스프링 프로젝트가 실행됩니다. --> 실행 성공 ※참고 cmd 창에서 실행한 경우, 인텔리제이에서 동시에 실행하면, 같은 포트 번호를 사용하게 되므로 에러 납니다. 서버에 배포시에는 jar 파일만 복사를 해서 서버에 넣어주고, jav..

Java Spring 2024.03.04

Spring 프로젝트 생성 및 시작하기 ( IntelliJ & Spring initializr )

https://start.spring.io/ 1. 스프링 이니셜라이저를 통해서 스프링 프로젝트 생성 GENERATE 를 하게되면 .Zip 파일이 생성된다. 생성된 .Zip 파일을 원하는 위치( 프로젝트 위치 ) 에 압축을 해제 한다. 2. IntelliJ를 실행하여 압축을 푼 디렉토리에가서 build.gradle 를 선택후 실행을 한다. as Project 로 실행을 한다. 3. 빌드 구조 설정 IntelliJ -> File -> Settings (또는 Preference ) 에서 빌드를 IntelliJ IDEA로 설정하고 작업을 한다. 이걸 해주면 자바가 그레이들을 통하지 않고 바로 인텔리제이를 통해서 바로 실행 ( 속도 향상 ) 4. main 함수가 있는 곳에가서 실행을 한다. 실행후 톰캣이 실행이 ..

Java Spring 2024.03.04

Java Spring 의존성 추가 방법 ( IntelliJ)

1. 프로젝트 폴더 최상단에서 build.gradle 파일 열기 2. dependencies에서 우클릭 - Generate - Add Dependency 3. 필요한 dependency 검색 후 add 4. 우측 Gradle 뷰에서 새로고침 버튼 클릭 - 우측에 없는 경우 상단 메뉴 View - Tool Windows - Gradle 클릭 https://maicoding.tistory.com/69 [Spring] IntelliJ에서 build.gradle 의존성(dependency) 추가하기 Spring 공식문서 가이드를 훑어보는 중에 매번 Spring Initializer를 이용하여 프로젝트를 생성하는 건 너무 번거롭다고 판단되어 그때그때 필요한 의존성을 추가하고자 했다. 이전에 Maven 사용 시에는..

Java Spring 2024.03.04

JDK 설치 - 시스템 환경변수 설정

1. JAVA 환경변수 이중 설정 해결방법 (1) 시스템 환경 변수 편집에 들어간다. (2) 환경 변수를 클릭한다. 두개 비슷하게 생긴애가 나올건데 아래있는 시스템 변수에 새로만들기 추가 * JDK가 설치되어 있는 위치를 말한다 ( 나는 C:\Program Files\Java\jdk-17 여기에 있었다.) 복사용 JAVA_HOME C:\Program Files\Java\jdk-17 CLASSPATH도 추가해주자. 위에 추가 한것들을 살펴 보면 C:\Program Files\Java\jdk-17\lib 로 이어지는것을 짐작 할 수 있다. (3) 자바 홈의 디렉토리가 제대로 되어있는지 확인해준다. 제대로 되었다면 다음의 Path로 환경변수 설정으로 넘어간다. (4) Path를 클릭 후 >>편집을 클릭한다. ..

JAVA 2024.03.04
728x90
반응형