728x90 반응형 분류 전체보기103 프레임워크와 라이브러리의 차이가 뭔가요? [ 면접 질문 ] 보통 A 와 B 의 차이가 뭔지 묻게 되면 이 둘이 굉장히 다른 것이라는 착각을 할 수 있는데 애초에 프레임워크와 라이브러리는 상당히 유사합니다. 그래서인지 사람들이 쉽사리 그 차이점을 말하기가 어려운 것이죠. 오늘은 이 둘의 공통점은 무엇이고 차이점은 무엇인지 알아보겠습니다. 먼저 이 둘의 공통점은? 지구 어딘가 이타적이고 뛰어난 개발자들이 특정 목적을 위해 어렵게 구현해낸 로직을 어떠한 이유에서인지 배포한 것입니다. 이를 통해 전세계의 사람들이 스스로 로직을 짜지 않고 올려져있는 로직을 쉽게 받아서 사용할 수 있게 됐습니다. 예를 들어 요리를 못하는 자취생이 누군가 만들어놓은 밀키트를 통해 집에서 쉽게 손이 많이 가는 요리를 간편하게 해먹을 수 있는 것과 비슷합니다. 바로 이것이 프레임워크이와 라이브.. 2022. 10. 29. [SpringBoot Data JPA] 중복은 있을 수 없어 -1 어떠한 정보를 DB에 저장하고 싶을 때 여러 가지 방법으로 중복체크를 할 수 있지만 그중 나름 간단하면서도 쉬운 방법은 form을 submit 할 시 중복체크를 하는 것이다. 그렇게 하기 위해서는 일단 자바스크립트 단에서 form의 값을 받아서 ajax를 통해 컨트롤러에 전달해야 한다. 아래는 샘플 코드이다. 필자는 기본 alert 대신 SweetAlert2라는 라이브러리를 사용했다. 1. 데이터 추가/수정 관련 자바스크립트 var 넣을 값을 담은 변수 = { 넣을 값 }; $.ajax({ type: "POST", url: "/URL 경로", data: 넣을 값을 담은 변수, success: function (data) { if (data === 1) { Swal.fire({ icon: 'success'.. 2022. 10. 26. [JAVA] JPA 활용법 -1 (QueryDSL 적용해보기) QueryDSL이란? Spring Boot Data JPA 는 쿼리문을 직접 짜지 않아도 함수명만 알맞게 적어주면 쿼리를 자동으로 짜주는 ORM으로 유명한데 사실상 조금만 복잡하고 동적인 쿼리를 짜려고만 해도 JPQL등을 통해 쿼리를 직접 짜야하는 불상사가 발생하고 만다. 이러한 불편함을 줄여주고자 자바만 알아도 쿼리를 대신 짜주는 프레임워크가 있는데 이를 QueryDSL 이라고 부른다. 쿼리가 아니라 자바 기반이라서 컴파일 시점에 오류 발견이 가능하고, 자동완성도 지원하여 실무에서도 많이 사용되고 있다. 필자도 QueryDSL을 사용해보고 싶었지만 진입장벽이 있는 것 같아서 망설이다가 블로그에 글을 쓸 핑계로 공부를 해보고 알아낸 내용을 공유해보려고 한다. 1. 개발환경 맞추기 1-1 generate .. 2022. 10. 24. 유효성 검사(?)로 클라이언트를 막아보자 - 1 인풋은 텍스트인데 숫자만 받고싶을 때 (복붙도 막아준다) 인풋은 숫자인데 클라이언트가 직접 입력하길 바라지 않을 때 disabled 처럼 보이는 readonly 를 만들고 싶을 때 영어만 사용가능하게 제한하고 싶을 때 (제출할 때 검사됨) 영어와 숫자까지만 가능하게 제한하고 싶을 때 (제출할 때 검사됨) 영문만 사용가능하게 제한하고 싶을 때 (입력할 때 검사됨) function engOnly() { var objEvent = event.srcElement; var numPattern = /^[A-Za-z]*$/; numPattern = objEvent.value.match(numPattern); if (numPattern == null) { Swal.fire({ text: "영문만 입력 가능합니다.", .. 2022. 10. 20. 소소한 팁 -2 제 버튼은 왜 submit이 아닌데 submit이 되죠? " 버튼 과 같이 기본으로 만든 버튼은 클릭하면 폼 전송이 일어난다. 그 이유는 기본 버튼의 기본값이 submit이기 때문이다. "버튼"은 "버튼"과 같다. 고로 불필요한 폼 전송을 피하려면 "을 쓰거나" 과 같이 버튼 타입을 명시해서 버튼 태그를 사용하면 된다. 2022. 10. 20. 싱글톤이 무엇인가요? 객체를 하나만 생성하고 공유하는 효율적인 방법 싱글톤을 사용하는 이유가 무엇인가요? 대규모 트래픽이 발생하는 웹사이트에서는 굉장히 많은 수의 클라이언트 요청(request)이 발생하게 되고 그 요청이 발생할 때 마다 Class 이름 참조변수 = new Class 이름(); 으로 인스턴스화 한 객체가 생성됩니다. 즉, 500명이 하나의 요청만 한다 해도 500개의 동일 객체가 생성되었다가 나중에 GC(Garbage Collector)를 통해 지워지는거죠. 불필요하고 비효율적입니다. 그래서 생각해낸 것이 싱글톤입니다. 객체를 하나만 생성하고 그것을 공유함으로써 메모리 부담을 줄이는 방법인데 이게 초반에 설정하기가 좀 많이 번거롭습니다. 하지만 스프링 컨테이너를 이용하면 자동으로 가능합니다. 스프링 컨테이너를.. 2022. 10. 20. 소소한 팁 -1 포트 번호 없이 localhost 접속하기 정확히는 포트 번호가 있지만 사용자가 직접 입력하지 않아도 되는 것뿐이다. 쉽게 말해 특정 포트 번호로 변경하면 그 포트 번호는 생략이 가능해서 입력하진 않지만 사실 있는 것이다. 그게 어떤 포트이고 어떤걸 설정해야할까? 간단하다. 톰캣이라고 하는 WAS의 포트 번호를 기본 Default 값인 8080에서 80으로 바꿔주면 된다. 그렇게 되면 localhost:8080 대신 localhost 만 입력해도 접속이 가능해진다. 포트가 무엇이고 어떤 원리로 작동하는지는 아래 블로그에서 확인하면 된다. https://basemenks.tistory.com/m/263 Port란 무엇인가 1. 포트 포트(port)는 "논리적인 접속장소"이며, 특히 인터넷 프로토콜인 TCP/IP를 사용할 때에는 클라이언트 프로그램이.. 2022. 10. 17. 이전 1 ··· 7 8 9 10 11 12 13 ··· 15 다음 728x90 반응형