전체 글
-
다중화와 역다중화(multiplexing & demultiplexing)백엔드 : 서버공부/NetWork 2023. 8. 5. 12:48
다중화 역다중화 서비스는 네트워크 계층에서 제공하는 호스트간의 전달 서비스(host2 host delivery service)를 트랜스포트 계층의 프로세스 간 전달 서비스(Process2 Process delivery service)로 확장해주는 서비스이다 다중화는 데이터를 세그먼트로 분할하여 전송 계층에서 네트워크 계층으로 전달하고, 역다중화는 수신된 세그먼트를 추출하여 해당 애플리케이션으로 전달하는 과정입니다. 이러한 과정은 전송 계층에서 수행됩니다. 종단시스템 사이의 소켓 전달 개요 --- **수신 호스트의 트랜스포트 계층**은 **네트워크 계층으로부터 세그먼트를 수신**합니다. 이것은 송신 호스트에서 보낸 세그먼트가 네트워크를 통해 수신 호스트로 전달되었다는 것을 의미합니다. **송신 호스트의 트..
-
트랜스포트 계층 서비스 및 개요백엔드 : 서버공부/NetWork 2023. 8. 4. 12:28
그나저나 컴네 시험기간이라 이글을 보게되셨나요?트랜스포트 계층(전송 계층)은 애플리케이션 계층과 네트워크 계층 사이에 존재하여, 서로 다른 호스트에서 동작하는 애플리케이션 프로세스간의 논리적 통신(logical communication)을 제공합니다.트랜스포트 계층 프로토콜은 그림과 같이 종단시스템의 OS에서 구현된다.Network Router들은 트렌스포트 프로토콜을 사용하지 않는다.### 트랜스포트 계층의 동작 설명---1. 송신 측의 트랜스포트 계층은 애플리케이션으로 부터 수신한 메시지를 트랜스포트 계층 세그먼트로 변환한다.2. 트랜스포트 계층은 종단 시스템에 있는 네트워크 계층으로 트랜스포트 계층 세그먼트를 전달한다.3. 수신 측에서 네트워크 계층은 데이터그램으로부터 **트랜스포트 계층 세그먼트를..
-
예외처리 예시(Kotlin)Android_Kotlin/Kotlin_공부 2023. 8. 1. 01:00
메뉴 운영을 위한 간단한 코드에서 예외처리를 활용한 예시코드 입니다. InputMismatchException 예외에 대한 처리코드입니다. InputMismatchException란? InputMismatchException은 입력 값이 기대하는 형식과 일치하지 않을 때 발생하는 예외입니다. 예를 들어, 사용자가 문자열 대신에 정수값을 입력해야 하는 상황에서 문자열을 입력하거나, 실수값 대신에 정수값을 입력하는 경우 등이 해당됩니다. Client.txt gdhong 홍길동 010-1111-2222 80 gdkim 김길동 010-3333-4444 90 gdlee 이길동 010-5555-6666 75 고객의 아이디와 이름 전화번호 포인트를 갖고있는 Client.txt 파일을 준비합니다. Client.kt d..
-
Fragment와 WebData 활용하기Android_Kotlin/Android_공부 2023. 8. 1. 00:55
안드로이드에서 Fragment와 WebData파싱을 이용해서 현재 해외축구의 득점 순위를 보여주는 어플을 구현해보겠습니다. 소스코드 본격적인 코드 작성 전 해당 코드에서는 Glide 라이브러리를 사용하기 때문에 프로젝트의 Gradle 파일을 수정해야 합니다. dependencies 블록에 아래의 코드를 추가합니다. dependencies { // 기존 dependencies 내용 implementation 'com.github.bumptech.glide:glide:4.12.0' kapt 'com.github.bumptech.glide:compiler:4.12.0' } 이제 Glide를 사용하여 이미지를 로드하고 표시할 수 있습니다. 먼저 프래그먼트 구현을위해 메인 레이아웃을 작성해줍니다. activity..
-
TextInputLayout 사용하기Android_Kotlin/Android_공부 2023. 8. 1. 00:45
안드로이드에서는 TextInputLayout이라는 EditText를 기반으로 좀 더 유연한 동작을 보여주는 레이아웃을 제공하고 있습니다. 코드 기본적으로 TextInputLayout을 사용하는 코드입니다. TextInputLayout은 여러가지 기능을 제공하고있습니다. 입력텍스트의 길이 카운트 기능 counterEnabled : counterEnabled="true" , counterMaxLength="최대 텍스트의 길이" 속성을 추가하므로서 입력 텍스트의 길이를 카운트 할 수있고, 특정 길이를 초과하게되면 경고 표사를 할 수 있습니다. 코드 에러 메세지 기능 그인시에 이메일 형식을 알맞게 입력했는지 체크하는 기능과 같이 EditText에 입력된 값을 체크하여, 값이 없거나 잘 못 되었을 때 에러 메시지..
-
SQLite 실습1-2(추가 : 예외처리)Android_Kotlin/Android_공부 2023. 8. 1. 00:40
지금까지의 SQLite실습에서는 숫자가 아닌 값이 수량 입력란에 입력되면 NumberFormatException 예외가 발생하여 앱이 강제로 종료되는 문제가 있었습니다. 이번 실습에서는 이러한 예외를 처리하여 숫자가 아닌 값이 입력되어도 앱이 강제로 종료되지 않고, 사용자에게 경고 메시지를 토스트로 표시할 수 있는 코드를 수정해보겠습니다. 문제지점 fun insertProduct(product: Product):Boolean{ val values = ContentValues() values.put(PNAME,product.pName) values.put(PQUANTITY,product.pQuantity) val db=writableDatabase val flag = db.insert(TABLE_NAME,..
-
SQLite 실습1-2Android_Kotlin/Android_공부 2023. 7. 31. 12:35
앞서서 SQLite실습 1-1 에서 작성하한 코드에 이벤트 처리하는 코드를 추가하겠습니다. MyDBHelper클래스 코드를 수정해줍니다. package com.example.myapplication0515 import android.content.ContentValues import android.content.Context import android.database.sqlite.SQLiteDatabase import android.database.sqlite.SQLiteOpenHelper import android.database.Cursor import android.graphics.Color import android.view.Gravity import android.widget.TableRow i..
-
SQLite 실습1-1Android_Kotlin/Android_공부 2023. 7. 31. 12:19
SQLite를 이용하여 DB를 운용해볼수 있는 간단한 예제입니다. 먼저 레이아웃을 만들어 줍니다. 💡 TableLayout을 만든이유 : 데이터 베이스의 값에따라 동적으로 테이블 로우를 생성하기 위해 TableLayout을 만들었습니다. SQLite 데이터베이스를 사용하기 위해 필요한 기능들을 제공하기 위해 MyDBHelper 클래스를 정의합니다. package com.example.myapplication0515 import android.content.ContentValues import android.content.Context import android.database.sqlite.SQLiteDatabase import android.database.sqlite.SQLiteOpenHelper im..