본문 바로가기

전체 글59

MultipartHttpServletRequest구조 점심에 먹은 짜장면 때문에 배가 부르군...... Spring 프레임워크에서 multipart/form-data 형식의 HTTP 요청(파일 업로드 등)을 처리하기 위해 제공하는 인터페이스입니다 맞아요, 이름 진짜 길죠? 개발자들이 이름을 지을 때 "이게 정확히 뭔지" 다 때려 넣으려다 보니 저렇게 괴물 같은 이름이 탄생하곤 해요. 😅 🛒 왜 이런 이름이 붙었을까? 우리 평소에 인터넷으로 글만 쓸 때는 그냥 편지봉투(HttpServletRequest)만 있으면 돼요. 그런데 사진이나 동영상을 같이 보낼 때는 문제가 생겨요. Multipart (멀티파트): "여러 조각"이라는 뜻이에요. 글자(이름, 제목)랑 바이너리 데이터(사진, 영상)가 한 번에 섞여서 들어오니까, 조각조각 나눠서 담았.. 2026. 4. 17.
ORA-00942 해결: 쿼리는 맞는데 테이블이 없다고? 1. 사건 개요로컬)에선 쿼리가 쌩쌩하게 잘 돌아감.교육 서버에 올리니 ORA-00942: 테이블 또는 뷰가 존재하지 않습니다 에러 발생.쿼리 문법이나 별칭(Alias) 문제는 아니었음. 결론은 'DB 연결 방식'과 '권한' 차이 때문임. 2. DB 연결 방식의 차이 (핵심)구분로컬 (DriverManagerDataSource)서버 (JndiObjectFactoryBean)비유직접 편의점에서 생수 사 마시기건물 벽에 붙은 정수기 물 마시기방식내 코드에 주소, 비번 다 적고 직접 연결함.서버(WAS)가 미리 뽑아놓은 연결을 빌려 씀.장점내 맘대로 설정하기 편함.보안이 좋고 성능(Connection Pool)이 뛰어남.특징내가 직접 DB에 빨대를 꽂는 방식임.서버가 꽂아둔 빨대를 이름만 대고 쓰는 방식임. .. 2026. 4. 3.
Nexacro invalid rsa public key 서버는 잘 켜지고 아래와같은 오류가 계속 나왔다! Invalid RSA public key file://D:/git/..../src/main/webapp/gnx/nexacro17lib/component/CompBase/FrameBase.js(1019):Uncaught NativeError: 해당 ID를 갖는 Object 가 존재합니다. id = [Alert] throw nexacro.MakeNativeError(this, "native_exist_id", id); 서버의 path가 제대로 안 들어가서 발생한 문제엿다 ㅡㅡ/ 로 하니까 잘 되네 2026. 4. 2.
온톨로지, RAG, LLM, sLLM 세상 사람들 다 아는 내용 나만 모르나해서 정리해봄... 1. 온톨로지 ?1-1. 온톨로지란 뭘까?예를 들면 '사과'라고 하면 사람은 그게 과일인지, 빨간색인지 알지만컴퓨터는 모름. 그냥 사.과 글자만 봄.그래서 사과라는 글자 근처에 빨간색, 과일 이런 걸 묶어둔다. 사실 더 딥하게 들어가면,온톨로지 안에서 단어는 1개만 존재함. 여러 클래스에 동시에 발을 걸치는 형태로 구성됨LLM은 사과와 빨강이 자주 같이 나온다며 이제 통계적으로 점수를 부여함 (0.7과 같이 점수체계)온톨로지는 "사과는 무조건 과일이야"와 같이 명확한 선을 그어줌 사과라는 데이터는 하나지만, 관계도는 여러갈래로 뻗어나감식물학 Sector : 사과는 [장미과]에 속한다.경제학 Sector : 사과는 [청과물 시장]의 거래 품목이다.I.. 2026. 3. 31.
가상서버 물리서버 물리서버란?진짜 구매하는 물리서버 가상서버란?VM = 물리서버 여러대 위에 논리적 컴퓨터를 여러대 띄운 것물리서버 2대로 VM 15대를 세팅할 수 있게됨이 기술이 하이퍼 바이저라는 가상화 기술이다. VM이 여러 컴퓨터를 쪼개서 쓰는거면 늘리는건 쉬운거 아냐? 기술적으로는 쉽다.조건1. 물리 서버 자원이 충분하면 VM도 쉽게 늘릴 수 있다.물리서버 CPU 20코어 중 10코어가 비어있다면 VM을 3개 더 만들 수 있다. 조건 2. 가상화 관리자가 권한을 줘야한다. 늘리는 건 어떻게 하는가?VM이 어떻게 만들어지는지 보자 1) 물리 서버 클러스터 확인- CPU 몇 코어 남았는지?- RAM 몇 GB 남았는지?- 스토리지 여유는?- 네트워크 대역은 가능한가? 2) 하이퍼 바이저(가상화 플랫폼)에서 VM 템플릿 .. 2025. 11. 17.
Jenkins에 대해 알아보자 자동화 작업을 도와주는 도구인데,빌드, 테스트, 배포를 자동화 해준다! 개발자가 코드 수정하고 푸시하면, 자동으로 빌드하고 테스트하고 배포해준다. 팀 협업할 때도누군가 수정한 코드가 다른 코드랑 충돌 안 했는지도 확인해준다. Job 작업 하나를 Job 이라고 부른다.코드 빌드하기, 단위 테스트 실행하기가 Job이다. Pipeline 여러개의 Job을 연달아 실행하는 것빌드 후 테스트 하고 그 다음 배포 Plugin추가 기능이라고 보면 됨github과 연결해서 코드를 자동으로 가져오거나, 슬랙을 연결해서 알림 받기도 가능 Jenkins를 어떻게 쓰면 좋을까? Jenkins와 Kubernetes (K8s)연동해서 배포하는게 트렌드.Kubernetes는 컨테이너 오케스트레이션 시스템으로 여러대의 서버에서 .. 2025. 11. 6.
GIT 충돌 dirty 상태 해결 하는 법 Eclipse에서 UPDATE RESULT FAILED 에러 뜰 때 해결 방법Team → Pull 눌렀는데 갑자기 일케 뜬다?UPDATE RESULT FAILEDMERGE INPUT ... 로컬에 수정된 파일이 있어서 Git이 병합을 못 한 거였음(알아서 해주면 좋을텐데)Git은 pull할 때 단순히 가져오는 게 아니라내 코드랑 원격 코드를 합치는 과정(merge) 도 같이 하는데,이미 수정한 파일이 있으면 충돌 날 수 있으니까 시도조차 안 하는 거더라고요. 1. 수정한 파일은 무조건 백업 ⭐⭐⭐⭐⭐ 이거 진짜 중요합니다.Reset 하면 로컬 수정이 다 날아가기 때문에 그 전에 백업 안 하면 그대로 사라져요. Eclipse에서 그 파일 우클릭 → Copy,바탕화면에 새 폴더 만들어서 Paste. .. 2025. 10. 27.
ChatGPT5가 말아주는 SAP 개발자 기초 입문 (1일차) 좋아요, 그럼 오늘은 SAP 기초 1일차 수업을 “컴공 3학년 수준 + 이미 프로그래밍 가능 + HANA 경험 있음” 기준으로 진행할게요.즉, ABAP 기초를 빠르게 훑고 SAP의 개발 구조를 이해하는 데 집중하겠습니다. 📚 오늘 진도 — SAP 개발자 기초 입문 (1일차)1. SAP 개발 환경 구조 이해SAP는 ERP 시스템 + 개발 플랫폼이에요.Java, Python과 달리 SAP는 거대한 애플리케이션 서버 안에서 코드를 작성하고 실행합니다.구성 요소Application Server: ABAP 프로그램이 실행되는 공간Database Server: HANA DB (또는 다른 DB)Client/GUI: SAP GUI 또는 Fiori Launchpad (웹 UI)Development Workbench(S.. 2025. 8. 13.
GTT 단열재 역사 및 특징 정리 (MARK3, NO96) GTT 멤브레인 시스템 역사 출시 시기시스템명기술특징성능가격지금 쓰는 정도1980sMark I / Mark II초창기 멤브레인 시스템중저~중❌ 거의 사용 안 함1990sNO96유리섬유 상자형 단열 (박스형)중중✅ 현대에서 일부 사용2000sMark IIIPU폼 + 멤브레인 (고정밀)상고가✅ 삼성/한화 메인2010sMark III Flex시공 편한 버전 (곡면 대응)상고가✅ 자동화 적합형2015~NO96 GW / L03+단열성 개선된 NO96 파생형중~상중~상✅ 일부 선주 선호2020sMark III Flex+ / NO96 Super+고단열 + 저기화율최상최고가✅ 최신 LNGC 적용 중미출시Mark V (개발 중)기화율 0.07%/d 목표최고미정❌ 아직 상용화 X 가격 기준으로 보면시스템가격비교1개당 가격.. 2025. 8. 1.