반응형

전체 글 130

Ubuntu(우분투)에 PHP 7.2버전 설치하기

웹 어플리케이션 개발 언어의 버전을 서버에서 맞추는 것은 굉장히 까다롭습니다. 최신 버전으로 설치해도 된다면 별로 까다롭지 않지만, 그게 아니라 예전에 만든 웹 어플리케이션을 서버에 배포하는 것이라면, 당연히 개발할 때 사용했던 버전으로 서버에 설치해서 배포하는 것이 가장 좋은 방법입니다. 이전에 회사에서 개발할 때 7.2버전을 사용해서 개발했고, 현재 PHP 버전은 8버전이고, 현재 PHP버전에서는 사용하지 않는 함수를 사용해서 개발한 웹 어플리케이션이라서 현재 버전으로는 실행이 되지 않습니다. 어쩔 수 없이 서버에 PHP 7.2버전을 새로 설치해줘야하는 상황이 왔습니다. 그래서 설치하는 과정을 살펴보도록 하겠습니다. 1단계 : Ondřej Surý의 PHP PPA 추가 Ondřej Surý의 PPA는..

IT Tech/linux 2024.02.21

2024.02.20 개발일기 작성 첫 날.

글을 쓴다는 것은 참으로 어려운 일 같다. 매일 매일 블로그를 작성하려고 해도 블로그를 작성할 주제를 선정하는 것, 그리고 그 주제를 그래도 잘 정리되게 보이게 하기 위해서 글을 쓰는 것. 이렇게 하다보면 하루 중 많은 시간을 블로그 작성에 쓸 수 밖에 없다. 물론 하다보면 글을 작성하는 시간도 줄어들 것이고, 작성하면서 나에게 남는 것도 있겠지만, 작성하는게 쉬운 일이 아니라는 것은 분명하다. 그렇다고 그냥 블로그를 작성해야 할 주제가 생겼을 때만 작성하자고 해도, 블로그를 작성하지 않다보면, 블로그라는 것이 존재한다는 것을 까먹어버린다. 지금 내 상황이다. 블로그 쓸 주제가 생겼을 때 작성하자 했더니 아예 블로그를 쳐다보지도 않는 날이 블로그에 접속한 날보다 많아지고 있는 상황이 됐다. 그래서 일기 ..

Vue.js, vuex에서 state 배열 변수가 forEach 함수가 안될때

TypeError: uploadImageList.forEach is not a function 분명히 배열로 설정한 변수를 forEach로 각 요소를 순회하려고 했을 때, 위와 같은 에러가 발생했습니다. 너무 당황스럽죠. 이런상황은 언제 만나도 정말 당황스러운 것 같습니다. 천천히 로그를 찍어보면서 분석한다면 이 세상에 해결 못 할 오류는 없다! 1. 문제 분석 왜 이렇게 될까요? Vue.js가 저를 싫어하는 걸까요? 그럴수도 있어요. 절대 방심하면 안됩니다. 일단 로그를 찍어보도록 하겠습니다. state.uploadImages.forEach(image => formData.append('couponImages[]', image)); 처음에는 이런 코드로 실행하려고 했는데 ForEach가 function..

IT Tech/vue.js 2024.02.02

자바 - 최대공약수를 가장 빠르게 찾는 방법: 유클리드 호제법 알고리즘

백준 문제에서 최대공약수를 찾는 문제가 나왔어요. 당연히 무식한 저는 그냥 두 수의 모든 배수를 찾아서 그 중에서 가장 큰 수를 검색하는 방식으로 했는데 시간초과에 걸리는 것이 아니겠어요? 그래서 그럼 어떤 방법으로 최대공약수를 찾을 수 있을까 찾아봤더니 유클리드 호제법이라는 아주 유명한 수학공식이 있더군요. 1. 무식한 방법 public static int maximumCommonMultiple(Integer a, Integer b) { Map aCommonMultiple = new HashMap(); List bCommonMultiple = new ArrayList(); int resultCommonMultiple = 0; for (int i = 1; i

IT Tech/Java 2024.01.24

비비고 만두를 브랜딩하신 노희영님이 사장님 귀는 당나귀 귀에 나오는 것을 보고...

정말 오랜만에 정규방송을 틀게 됐는데, 우연히 사장님 귀는 당나귀 귀를 보게 되었고, 거기서 김현성 CEO의 편에서 노희영 님이 나오는 걸 보게 되었습니다. 노희영 님이 이제껏 뭘하는 사람인지는 전혀 몰랐어요. 그런데 비비고 만두를 만드신 분이더라구요? 나와서 김현성 CEO와 직원들 그리고 노희영 님이 이야기하고 방송에 나오는 모습을 보고 좀 많은 생각을 하게 되었습니다. 2023년에 방영된 대행사라는 이보영 님이 주연으로 연기하신 드라마가 있었는데요. 그 드라마와 비슷한 느낌을 받았습니다. 대행사에서는 이보영님이 광고 대행을 하면서 광고 카피라던지 광고를 만들어가는 과정에서 하나하나 다 신경써가며, 폰트, 색깔 등등 여러가지를 예민하게 만들어가는 과정을 그려주는데요. 노희영 님이 정말 대행사의 이보영님..

일상/article 2024.01.22

JPA의 영속성 전파 cascade 옵션에 대해서 알아보기

JPA를 가지고 데이터베이스를 설계할 때, 아무 생각없이 cascade 속성을 사용해왔습니다. cascade란 무엇일까요? 이 옵션을 통해서 어떤 일들이 일어나는 걸까요? 한 번 알아보도록 해봅시다. cascade? JPA에서 'cascade' 속성은 엔티티 간의 관계에서 한 엔티티에 대한 영속성 관리 작업을 관련 엔티티에도 적용할지 여부를 정의하는 속성입니다. 즉, 한 엔티티의 생명주기 이벤트(예: 저장, 업데이트, 삭제)가 연관된 엔티티에도 전파되도록 할지를 결정하는 설정입니다. 말이 되게 어려운데요. 간단하게 삭제로 알아보면, 부모 엔티티를 삭제하면, 해당 부모 엔티티와 연관되어 있는 엔티티들도 삭제가 됩니다. @Entity @Table public class CouponBookmark { @Id ..

IT Tech/Java 2024.01.17

맥북 프로 M3 pro 18G 512G 16인치 모델 언박싱

원래 맥북 프로 M1 pro 14인치 기본형 모델을 사용중이었는데 이번에 팔고 M3 pro 16인치 모델을 새제품으로 구입하였습니다. 쿠팡에서 구입을 했는데 8% 할인을 해주기도 하고, 할부도 길게 할 수 있어서 삼성카드의 경우 22개월 무이자 할부도 가능합니다. 그래서 쿠팡을 이용해서 구입했어요. 그런데 회사로 시켰는데 밤 9시가 다되어서 도착해서 기다리느라 정말 고생했어요 ㅠ 이럴 줄 알았으면 집으로 시킬 걸 그랬어요. 박스도 퍽 던지고 가시더라구요. 물론 안에 내장 충격 완화제가 있긴 했어도 사무실에서 듣는데 진짜 너무 기분 나쁘더라구요. 그래도 안의 맥북 상자는 아무런 흠집이 없어서 다행이었어요. 다시 두근대는 마음으로 맥북의 포장을 해체하였습니다. 뒷면은 때가 좀 있네요. 제가 산 맥북의 사양이..

일상/리뷰 2024.01.17

전주 한옥마을 자매갈비전골 : 물갈비로 유명한 전주 맛집

전주 한옥마을 제 1 주차장 바로 옆에 위치한 자매갈비전골에 다녀왔어요. 물갈비는 전주에서 옛날부터 먹어오던 음식이었는데 예전에는 남노갈비가 유명한 브랜드였는데 남노갈비는 이제 많이 없어지고, 오히려 자매갈비전골이 굉장히 유명하더라구요. 오후 3시에 브레이크 타임이어서 저희는 오후 2시쯤 방문했는데 세상에 옆에 별관이 생겼더라구요. 그래서 기다리지 않고 바로 가서 먹을 수 있었습니다. 여기는 메인 메뉴에 집중하는 식당인 것 같아요. 아이가 먹을 만한 메뉴가 따로 없어요. 새우 부추 전이라도 시킬까 했는데 사진에 고추가 보이는 것 같아서 결국 그냥 만두와 공깃밥을 시켜서 먹였어요. 물론 아이때문에 조미김을 주셔서 다행이도 아이는 너무 좋아했지만 물갈비가 너무 먹고 싶어서 왔지만 아이에게 좀 미안했습니다 ㅠ..

일상/맛집 2024.01.15

자바(JAVA)의 Map에서 키와 값으로 요소 찾기 - containsKey와 containsValue 활용하기

자바에서 Map을 통해서 데이터를 넣고 가져와서 활용할 수 있습니다. Array나 List 같은 자료 구조들도 있지만 이들과의 차이점은 Map은 Key와 Value 쌍으로 자료를 구분하고, 저장한다는 것이고, Array와 List는 index를 통해서 자료를 구분, 저장한다는 점입니다. 백준 10815번 문제처럼 어떤 값이 존재하는 것인지 존재하지 않는 것인지 찾기 위한 도구로는 Map이 Array나 List보다 더 적당한 도구라고 볼 수 있습니다. 왜냐하면 Array나 List도 값이 존재하는지 찾을 수는 있지만, 결국에는 Index에 의해 구분되기 때문에 순차적으로 검색할 수 밖에 없습니다. 결국 어떤 요소의 존재 여부를 찾을 때 해당 자료가 많을 경우, Map으로 자료구조를 선택한다면 조금 더 빠른..

IT Tech/Java 2024.01.09

동적 패딩 구현하기 : window의 크기에 반응하는 padding

안녕하세요. 미래를 개발하는 남자... ㅎ 김준수입니다. 스터디에서 진행하고 있는 프로젝트를 진행하는 도중, 레퍼런스를 보고 있는데 참 신기한 것을 봤습니다. 요즘은 모바일 환경에서도 웹에 접속을 많이 하기 때문에 웹 페이지를 반응형으로 다 만듭니다. 그걸 쉽게 구현할 수 있는 것이 바로 부트스트랩 같은 프레임 워크를 이용하는 것이죠. 저도 왠만하면 부트스트랩이나 vue 같은 경우는 quasar를 통해서 구현을 하고 있었습니다. 그런데 이 레퍼런스는 조금 다른 방식을 이용해서 반응을 하도록 만들었더라구요? 바로 window의 width크기에 반응해서 요소의 right padding이 줄어들었다가 늘어났다가 하는 방식으로 반응을 하더라구요. 처음에 쉬워보여서 바로 구현에 들어갔다가 두드려 맞고 나왔습니다...

IT Tech/vue.js 2024.01.03
728x90
반응형