본문 바로가기

전체 글93

TCP란? && TCP의 헤더 정보 && 패킷 교환 방식 HTML 삽입 미리보기할 수 없는 소스 TCP TCP는 OSI 7계층 중 전송 계층에서 사용되고 있는 프로토콜 장비들간의 통신중 안정적, 순서대로, 에러없이 교환할수 있도록 하는 프로토콜이다. TCP를 사용하는 이유는 인터넷에서 데이터를 어떻게 주고받는지 방식을 알면 왜 필요한지 알게 된다. 패킷 교환 방식 데이터를 잘게 쪼갠 후 여러 개의 회선을 통해서 보내는 방식이다.네트워크와 통신의 방식중 하나로 현재 제일 많이 사용하는 통신 방식분산투자 방식이랑 비슷하다고 생각한다. 패킷 교환 방식을 사용하면 문제점이 데이터가 정확하게 들어왔는지 문제가 있다.그래서 패킷 교환 방식을 사용하면 TCP 프로토콜이 필요한 이유다. TCP 헤더 TCP 같은 프로토콜은 데이터에 자신의 헤더를 붙혀서 데이터의 정보를 표현한.. 2023. 7. 26.
[Design Pattern] Domain Model Pattern vs Transaction Script Pattern 트랜잭션 스크립트(Transaction Script) 패턴? 엔티티에 비지니스로직이 거의 없고, 서비스 계층에서 비즈니스 로직을 처리하는 방법을 가리킵니다. 엔티티는 단순하게 데이터를 전달하는 역할이 되면서 서비스 로직이 커지게 됩니다. 현재 재직중인 회사에서 주로 사용하는 방법입니다. public class SomeTransactionScript { public Result do(...) { try { SomeTransaction tx = ...; tx.begin(); // 1. 잔고확인 ... // 2. 받는 사람 확인 ... // 3. 이체 실행 ... // 4. 잔고 감소 ... tx.commit(); } catch(..) { tx.rollback(); ... } finally { ... ... .. 2023. 6. 26.
[Java] Jsoup를 이용한 웹 크롤링 회사에서 해당 링크에서 이미지를 가져와서 뿌려줄 업무가 있어서 간단하게 정리했습니다. 자세한 내용은 https://jsoup.org/ 참조하시면 상세히 설명이 되어있습니다. jsoup: Java HTML parser, built for HTML editing, cleaning, scraping, and XSS safety jsoup: Java HTML Parser jsoup is a Java library for working with real-world HTML. It provides a very convenient API for fetching URLs and extracting and manipulating data, using the best of HTML5 DOM methods and CSS s.. 2023. 6. 15.
[MySQL] 프로시저 만들기(DECLARE, SET, IN, IF, ELSEIF 등) 사실 프로시저는 처리성능과 재사용면에서 좋지 않다고 합니다. 제한된 유연성: 프로시저는 특정 작업을 수행하기 위해 작성된 코드 블록입니다. 이러한 프로시저는 보통 한 가지 목적을 위해 설계되어 있으며, 다른 작업에 대한 재사용성이 제한될 수 있습니다. 코드 중복과 일관성 문제: 프로시저를 재사용하기 위해 여러 곳에서 복사 및 붙여넣기를 하면 코드 중복이 발생할 수 있습니다. 이는 유지보수와 일관성에 문제를 일으킬 수 있습니다. 한 프로시저를 수정하면 해당 프로시저를 사용하는 모든 곳에서 수정해야 하므로 코드의 일관성을 유지하기 어려울 수 있습니다. 반대로 프로시저를 사용해야 하는 이유가 여러가지 존재한다. 코드의 재사용성: 프로시저는 한 번 작성하고 필요할 때마다 호출하여 사용할 수 있습니다. 코드의 추.. 2023. 6. 14.
[Java] "|" 를 구분자로 하여 split 하기 업무중에 split으로 문자열을 자르다 보면 "|" 문자를 기준이 필요한 경우가 생겼는데 아무리 해도 이상하게 split되고 있었다. String str = "aaa|bbb|ccc"; String[] result = str.split("|"); for(int i=0; i 2023. 6. 14.
자바로 OpenAPI로 받은 XML 데이터 파싱하기 회사에서 xml 형식의 데이터를 파싱할 업무가 있어서 블로그에 정리 했습니다. import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.NodeList; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import java.io.InputStream; import java.net.URL; public class Main { public static void main(String[] args) { try { String url = "http://plus.kipris.or.kr/openapi/rest/ForeignPa.. 2023. 6. 13.