전체 글 124

MVC 패턴과 모델1, 모델2의 차이

MVC 패턴과 모델1, 모델2의 차이 1. MVC 패턴이란?Model: 애플리케이션의 데이터와 비즈니스 로직을 관리합니다. 모델은 데이터베이스와의 상호작용, 데이터 처리, 비즈니스 규칙 적용 등을 담당합니다.View: 사용자에게 보여지는 화면을 담당합니다. 뷰는 UI를 구성하고 사용자 인터페이스를 표시합니다. 데이터는 모델로부터 전달받아 표시됩니다.Controller: 사용자 입력을 처리하고 적절한 비즈니스 로직을 실행한 후, 결과를 뷰로 전달합니다. 컨트롤러는 모델과 뷰 사이의 중개자 역할을 합니다.MVC 패턴을 사용하면 애플리케이션의 구조를 분리하여 각 구성 요소를 독립적으로 개발하고 유지보수할 수 있습니다. 2. 모델1과 모델2의 차이MVC 패턴의 두 가지 구현 방식인 모델1과 모델2는 웹 애플리케..

IT/Java 2024.09.18

JSP와 Servlet의 등장 배경 및 개념

JSP와 Servlet의 등장 배경 및 개념​웹 애플리케이션 개발의 초기 단계에서는 정적인 HTML 페이지가 주로 사용되었습니다. 하지만 사용자와의 상호작용을 통해 동적인 콘텐츠를 생성하고, 서버에서의 복잡한 로직 처리가 필요해짐에 따라 새로운 기술이 등장하게 되었습니다. 이 배경에서 JSP(JavaServer Pages)와 Servlet이 개발되었으며, 웹 개발의 혁신을 이끌었습니다.​1. 초기 웹 개발의 한계초기의 웹 페이지는 기본적으로 정적인 HTML로 구성되어 있었기 때문에, 데이터의 동적 처리가 필요할 때는 자바나 다른 서버 사이드 언어로 별도로 로직을 구현해야 했습니다. 이러한 방식은 유지보수와 확장성에 문제가 있었고, 개발자는 복잡한 서버 로직과 프론트엔드 디자인을 별도로 관리해야 했습니다...

IT/JSP 2024.09.16

스프링 프레임워크란 무엇인가?

스프링 프레임워크란 무엇인가? 스프링 프레임워크가 뭔지 알기 전에 이 글을 쓰는 이유에 대해 먼저 적어보겠습니다. ㅋㅋ 이직한지 벌써 2달이 지났습니다. 이직한 회사에서 면접 때 안 계셨던 꼰대? 상사님이 책 5권을 주고 다 읽으라고 하셨습니다. ㅋ_ㅋ 이유는 저에게 자바와 cs 질문을 했는데 50%밖에 답변을 하지 못했습니다. 코딩만 할 줄 아는 개발자가 되지 말라고 하시면서 동작원리?를 이해하는 개발자가 되라고 하셨습니다. (정확하게 뭐라고 하신지 모르겠음. 느낌으로 이해함)  저는 기본기가 없습니다. 학원을 다녀본 적도 없고 그냥 코드를 복사 붙여넣기 하면서 결과물만 완성하는 주먹구구식 개발만 해왔습니다. 이 책이 1300쪽가량 되는데 훑어보면서 쭈욱 다 읽었습니다. 그러면서 자바라는 프로그램이 어..

IT/Spring 2024.09.11

IntelliJ에서 SQL 노란색 밑줄 제거하는 방법

IntelliJ에서 SQL 노란색 밑줄 제거하는 방법​MyBatis를 사용하면서 XML파일에 SQL문을 작성하였습니다.하지만 아래 사진과 같이 SQL문에서 노란색 밑줄이 쳐지면서 상당히 거슬리는데요.아래에 원인과 해결방법을 정리해보겠습니다.​원인IntelliJ IDEA에서 XML 파일에 쿼리가 노란색 밑줄로 표시되는 것은 SQL Dialect Detection 기능 때문입니다. 이 기능은 IntelliJ가 해당 XML 파일 내의 SQL 쿼리를 감지하고, SQL 구문을 자동으로 분석하여 언어에 맞는 구문 오류나 경고를 표시하는 기능입니다.​해결방법1. 데이터베이스 연결 설정SQL 구문을 인식하기 위해 IntelliJ는 데이터베이스 연결 설정을 참조하는데, 연결 설정이 없거나 올바르지 않은 경우에 연결하면 ..

IT/Intellij 2024.09.04

도커(Docker)

도커(Docker)​가상화의 발전과정도커는 가상화에서 발전된 형태라고 합니다. 가상화 기술은 물리적 서버를 여러 가상 서버로 나누어 효율적으로 자원을 관리할 수 있도록 해줍니다. 그러나 이 가상화 기술은 시스템 자원(예: CPU, 메모리)을 상당히 소모하고, 각 가상 서버가 독립적인 운영체제를 실행하기 때문에 부팅 시간이 길고 자원 소모가 많습니다. 이러한 단점을 해결하기 위해 도커와 같은 컨테이너 기반 기술이 발전하게 되었습니다.​도커(Docker)란 무엇인가?도커는 애플리케이션을 컨테이너(Container)라는 독립적인 환경에서 실행할 수 있게 해주는 플랫폼입니다. 이를 통해 애플리케이션의 실행 환경을 일관되게 유지하고, 개발과 배포 과정에서의 호환성 문제를 줄일 수 있습니다.예시 - 웹서버배포개발자..

IT/클라우드 2024.08.30

가상화 개념 이해하기

가상화 개념 이해하기​가상화의 발전과정최근에는 도커(컨테이너)를 많이 이용하고 있는데 가상화에서 발전된 형태라고 합니다. 도커는 다음 포스팅에서 다뤄보겠습니다.​가상화(Virtualization)란 무엇인가?가상화는 물리적인 컴퓨터 자원을 효율적으로 사용하기 위해, 하나의 물리적 시스템에서 여러 개의 가상 시스템을 만들어 운영할 수 있는 기술입니다. 쉽게 말해, 하나의 컴퓨터 안에 여러 대의 컴퓨터를 만들어 사용하는 것이라고 할 수 있어요.​일상생활에서의 비유가상화를 일상생활에 비유해 보자면, 하나의 주방에서 여러 가지 요리를 동시에 만드는 것과 같아요. 예를 들어, 하나의 큰 냄비를 사용해 스프, 파스타 소스, 찜 요리 등을 동시에 준비한다고 생각해 보세요. 각 요리는 냄비 안의 서로 다른 칸에서 요리..

IT/클라우드 2024.08.20

[AWS] https 인증 만료시 해결방법

https 인증 만료시 해결방법​유효기간이 지나면 아래 사진처럼 사이트에 바로 접속이 되지 않고 우회하여 들어가야합니다.​전에 아래 포스팅에서 http를 https로 리다이렉트 하는 방법에 관하여 알아보았습니다.https://blog.naver.com/ljs14741Certbot으로 인증서를 발급받고 nginx 설정 파일에서 설정하였습니다.하지만 이 인증서는 3개월간의 유효기간이 있기 때문에 3개월이 지나면 재발급을 받아야합니다. 자동으로 발급받을 수 있도록 하는 방법도 있지만 귀찮아서 전에 했던 방법과 동일하게 진행하였습니다.​다른 분들 하신걸 보니 sudo certbot renew 명령어로 재발급을 받으시더라구요. 3개월마다 자동으로 재발급 받도록 세팅할 때도 저 명령어를 이용하더라구요.근데 저는 아..

IT/AWS 2024.08.18

메뉴 추천, 음식 추천 사이트 (밥 좀 묵자!)

안녕하세요! 저는 점심, 저녁, 친구와 술 한잔 기울일 때마다, 선택 장애로 인해서 하루 종일 고민하는 편인데요.. ㅋㅋ 그래서 메뉴(음식)를 랜덤으로 뽑아주는 사이트를 만들어보았습니다. 점심, 저녁, 술안주 등 매일 무엇을 먹을지 고민하는 사람들에게 다양한 음식을 랜덤으로 추천해 주는 시스템을 제공합니다. 1. 카테고리 추천'카테고리 랜덤 뽑기' 버튼을 클릭하면 13가지의 카테고리 중 랜덤으로 골라줍니다. 2. 음식 추천'음식 랜덤 뽑기' 버튼을 클릭하면 모든 종류, 모든 음식을 랜덤으로 골라줍니다.3. 점심 추천'점심 랜덤 뽑기' 버튼을 클릭하면 점심에 먹기 좋은 음식을 랜덤으로 골라줍니다.4. 술안주 추천'술안주 랜덤 뽑기' 버튼을 클릭하면 술과 함께 먹기 좋은 음식을 랜덤으로 골라줍니다.5. 카..

개발/Java 2024.07.02

Git에서 사용하는 용어 정리 및 IntelliJ에서 사용법

Git에서 사용하는 용어 정리 및 IntelliJ에서 사용법​이번에 친구와 프로젝트를 협업하면서 Github 레파지토리를 공유해야 하는데요. svn만 써왔다 보니까 용어도 어려운 것이 많고 개념도 잘 몰라서 한 번에 정리를 해보려고 합니다.용어 정리를 쭈욱 해보고, SVN과 비교하고, IntelliJ에서 사용하는 방법도 정리해 보겠습니다.​클론(Clone)클론(clone): 원격 저장소에 있는 프로젝트의 전체 복사본을 로컬 컴퓨터로 복제하는 것.이를 통해 프로젝트의 최신 상태를 로컬에서 사용할 수 있으며, 이후 로컬에서 작업한 변경사항을 원격 저장소에 푸시(push) 하거나 원격 저장소의 변경사항을 가져오기(pull) 할 수 있습니다.​포크(Fork)프로젝트 복사 및 수정: 원본 저장소를 직접 수정할 권..

IT/Git 2024.06.26

WEB WAS 차이

WEB과 WAS 차이 Web/WAS는 웹 서버(Web Server)와 웹 애플리케이션 서버(Web Application Server)의 약자입니다. 이 두 가지는 웹 애플리케이션을 운영하고 서비스하는 데 중요한 역할을 합니다. 아래에서 차이점을 알아보겠습니다. 1. 웹 서버 (Web Server)웹 서버는 클라이언트(주로 웹 브라우저)로부터 HTTP 요청을 받고, 그에 대한 HTTP 응답을 반환하는 역할을 합니다. 웹 서버의 주요 기능은 정적 콘텐츠(HTML, CSS, JavaScript, 이미지 등)를 제공하는 것입니다.주요 기능HTTP 요청 처리: 클라이언트로부터 들어오는 HTTP 요청을 받아 처리합니다.정적 콘텐츠 제공: HTML 파일, 이미지, 스타일시트, JavaScript 파일 등 정적 파일을..

IT/면접질문 2024.06.20