분류 전체보기

Web

[Web] 내부망? 네트워크는 어떻게 연결될까?

내부망이 뭔지 갑자기 헷갈려서 적어본다.. 모든 네트워크는 선으로 연결되어있다. 진짜 선. 인터넷도 다 선으로 연결되어있다. 미국까지 바다밑으로 전선이 쫙 깔려있다. OSI 7 layer를 기억해보자. 거기 젤 처음이 물리계층이다. 이 전선이 바로 물리계층이다. 출처 : https://velog.io/@cgotjh/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-OSI-7-%EA%B3%84%EC%B8%B5-OSI-7-LAYER-%EA%B8%B0%EB%B3%B8-%EA%B0%9C%EB%85%90-%EA%B0%81-%EA%B3%84%EC%B8%B5-%EC%84%A4%EB%AA%85 예를 들어서 회사 내부망이라고 하면, 같은 대역을 쓰는 통신망이다. 내부망 바깥에는 방화벽으로 막혀있고 외부로..

Web

[Web] Forward Proxy와 Reverse Proxy

프록시(Proxy) 프록시 서버는 클라이언트가 자신을 통해서 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 컴퓨터나 응용 프로그램을 가리킨다. 프록시의 종류 프록시에는 Forward Proxy와 Reverse Proxy가 있는데 그 차이는 아래와 같다. Forward Proxy 포워드 프록시는 클라이언트 앞에, 인터넷의 전에 있다. 내부망에 있는 클라이언트가 서버에 접근하고자 할때, 클라이언트는 타겟 서버의 주소를 포워드 프록시에 전달하여, 포워드 프록시가 인터넷으로 요청된 내용을 가져오는 방식이다. 예를 들어 우리가 naver.com 을 요청하면 포워드 프록시 서버가 naver.com 리소스를 대신 받아와 클라이언트에게 내밀어준다(forward)고 생각하면 된다. 흔히 말하는 프록시 서버는 ..

Web

[Web] WebServer와 WAS, AJP

WebServer란? WebServer의 예시로는 Apache, NginX등이 있다. 클라이언트의 요청에 따라 HTML, CSS, JS, 이미지 파일 같은 정적파일을 응답하여 제공하는 소프트웨어를 말한다. HTTP프로토콜을 사용하여 클라이언트와 통신한다. Was란?(Web Application Server) Tomcat, JBoss, WebSphere등이 있다. 클라이언트의 요청에 따라 동적인 처리를 담당하는 영역. 로직을 실행한다. 요청의 흐름 WebServer와 Was를 나누는 이유 1. WAS의 부담을 줄여주기위해. 로직을 처리하는 WAS는 그 자체만으로도 할게 많다. 정적파일과 동적파일을 분리함으로써 부담을 줄일 수 있다. (최근에는 WAS의 기능이 좋아져서 굳이 나누지 않아도 되지만, 2, 3의..

Spring

[springboot] springboot 3.0의 새로운 점!

SpringBoot 3.0의 개선사항 언젠가부터 Spring Initializr에서 spring 3.0부터만 지원하게 되었다... 그래서 이번 포스트에서는 springboot 3.0에 대해서 알아보도록 하겠다. 참고로 springboot는 java 17이상을 지원하기때문에, java17의 다른점을 알고 싶은 분들은 아래 링크 클릭! 2024.01.11 - [java] - [java] java 17의 새로운 점들! [java] java 17의 새로운 점들! java17 & SpringBoot3.0 2021년 9월 java 17이 새로 나왔다 (LTS버전 - Long-term support) java 11과 비교해서 70가지 이상의 JEP가 더 추가되었다고 한다. *JEP : JDK 개선제안, JDK Enh..

java

[java] java 17의 새로운 점들!

java17 & SpringBoot3.0 2021년 9월 java 17이 새로 나왔다 (LTS버전 - Long-term support) java 11과 비교해서 70가지 이상의 JEP가 더 추가되었다고 한다. *JEP : JDK 개선제안, JDK Enhancement Proposals SrpigngBoot 3.0부터는 JDK 17 이상을 지원한다. 그리고 이제 spring initializr에서 boot 3.0부터 지원한다!!! 그래서 java 17과 springboot 3.0에 대해서 살펴보려고 한다. java17의 주요 개선사항 Collection Factory Method강화 Var keyward 등장 String에 신규 메소드 추가 텍스트 블록 기능 추가 Switch표현식 기능향상 Record D..

java

[java] Variable used in lambda expression should be final or effectively final, 람다 캡처링

Variable used in lambda expression should be final or effectively final 아래와 같이 java 코드를 작성하면 intellij에서 오류를 뱉으며 컴파일되지 않는다. int number = 1234; number = 2; Runnable r = () -> System.out.println(number); 결론부터 말하면, 람다에서는 파라메터가 아닌 외부 변수(free variable, 자유변수)를 사용 할 수 있다. 단, 지역변수는 final이거나 final처럼 사용되어야한다.(effectively final) 그 이유를 알아보자. 변수 변수에는 클래스변수, 인스턴스 변수, 지역변수가 있다. public class test { int iv; // 인스..

jpa

[jpa] name-native-query 에러 Could not locate appropriate constructor on class

Could not locate appropriate constructor on class ... 이러한 에러가 날 때 주요 이유 1. nativeQuery를 써줬는지 확인 @Query(nativeQuery = true) //써줬는지 확인 List getFacilityNativeQuery(); 2. xml로 사용하는경우 application.yml에 xml매핑을 해줬는지 확인 jpa: mapping-resources: - query/named-native-query-sample.xml //확인 3. DTO매핑 맞는지 확인 //패키지 맞는지 확인 //순서대로 써져있어야 함. //Entity의 타입이 아닌, DB의 타입과 맞아야 함 4. Column의 순서가 DTO의 순서와 맞는지 확인 DTO의 constru..

jpa

[JPA] QueryDSL JPA 사용하기

QueryDSL이란? QueryDSL은 오픈소스 프로젝트로 처음에는 HQL을 코드로 작성해줄 수 있는 프로젝트로 시작해서 지금은 JPA, JDO, JDBC, Lucene, Hibernate Search, mongoDB, 자바 컬렉션 등 다양하게 지원한다. JPQL과 달리 문자가아닌 코드로 작성하므로 오류를 덜 수 있고, Criteria보다는 덜 복잡하다는 장점이 있다. http://querydsl.com/static/querydsl/3.6.3/reference/ko-KR/html_single/ Querydsl - 레퍼런스 문서 본 절에서는 SQL 모듈의 쿼라 타입 생성과 쿼리 기능을 설명한다. com.mysema.query.sql.Configuration 클래스를 이용해서 설정하며, Configurati..

우주유령
'분류 전체보기' 카테고리의 글 목록 (2 Page)