본문 바로가기

전체 글58

[Spring Batch]TransientDataAccessResourceException 배치 개발하다가 Error 발생했습니다. 사실 배치에만 해당하는 에러는 아니고 Mybatis 관련 에러입니다. 글을 Spring batch로 분류한 이유는 해당 에러를 검색해보시면 알겠지만 batch 개발 시 자주 마주칠 수 있는 에러라서.. org.springframework.dao.TransientDataAccessResourceException: Cannot change the ExecutorType when there is an existing transaction 위와 같은 에러입니다. "존재하는 트랜잭션이 있어 ExecutorType(실행자의 타입)을 변경할 수 없다" 저는 Chunk-oriented Processing 방법을 사용해서 Job을 개발하는 중 해당 Error가 발생했습니다. R.. 2023. 11. 26.
[mac] 맥북 화면보호기로 플립 시계 적용하는 법 https://fliqlo.com/ Fliqlo Flip Clock App and Screensaver fliqlo.com 1. 위 사이트로 들어가서 프로그램 다운받기 왼쪽 맥북용 다운로드 받으면 됩니다 (2023.11.25 기준 version 1.8.6) 맥북 버전이 14인 경우 지원 안된다고 하네요. 참고하시길. 제 맥북은 13.4.1 ventura 버전이에요. 아직 소프트웨어 업그레이드를 안했습니다. 2. 다운받은 dmg 파일 더블 클릭 dmg파일을 열면 이렇게 3개의 파일이 나옵니다. 저 중에 위에 있는 saver 파일 더블클릭해서 설치해주세요. 더블클릭하면 이런 알림창이 뜨는데 설치 버튼 클릭하면 됩니다. 3. 화면 보호기 설정 시스템 설정 - 화면 보호기 메뉴에 들어가면 이렇게 설치된 Fliq.. 2023. 11. 26.
[IntelliJ 오류] invalid source release, A JNI error has occurred sts에서 프로젝트 다운받고 실행하자마자 뜬 오류: - invalid source release => Project의 Java 버전과 컴퓨터에 설치/설정된 Java 버전이 일치하지 않아서 - A JNI error has occurred => Project 및 IDE에 적용되어 있는 JDK 버전이, Spring Boot의 Run 엔진에 설정된 JDK 버전과 달라서 build.gradle, Gradle JVM 계속 바꿔봤는데 안됨 해결: 1. command + ; (project structure) 2. Language level: sdk 버전 변경 => build.gradle - sourceCompatibility, Gradle setting - Gradle JVM 버전이랑 맞춰줌 3. run 2023. 3. 18.
[프로그래머스/js] 신규 아이디 추천 https://programmers.co.kr/learn/courses/30/lessons/72410?language=javascript 코딩테스트 연습 - 신규 아이디 추천 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 programmers.co.kr function delSandE(new_id) { if (/^[.]/.test(new_id)) { new_id = new_id.substr(1); } if (/[.]$/.test(new_id)) { new_id = new_id.substr(0, new_id.length - 1); } return new_id; } fun.. 2021. 10. 27.
[프로그래머스/js] 로또의 최고 순위와 최저 순위 https://programmers.co.kr/learn/courses/30/lessons/77484?language=javascript 코딩테스트 연습 - 로또의 최고 순위와 최저 순위 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호 programmers.co.kr function solution(lottos, win_nums) { let score = [6, 6, 5, 4, 3, 2, 1]; let zero_cnt = 0; let correct = 0; lottos.forEach((v) => { if (win_nums.includes(v)).. 2021. 10. 27.
DOM 조작 시 알아야할 Live collection, Static collection NodeList NodeList는 element.childNodes와 같은 속성이나 document.querySelectorAll()과 같은 메소드에 의해 반환되는 Node Collection이다. NodeList는 마치 Array와 비슷하게 생겼지만 배열과는 다르다. 우리는 배열과 같은 형태를 하고 있지만 배열이 아닌 객체들을 유사 배열이라고 부른다. NodeList는 배열이 아니기 때문에 배열에 사용 가능한 메소드를 대부분 사용할 수 없다. 그렇기 때문에 NodeList에 배열 메소드를 사용하기 위해서는 NodeList를 실제 배열로 변환하는 등의 방법을 사용해야 한다. (최신 브라우저에서는 NodeList에 forEach()와 같은 메소드를 지원하고 있다.) 중요한 점은 대개의 경우 NodeList.. 2021. 3. 13.
커스텀 드롭다운 메뉴 만들기 blog.campvanilla.com/reactjs-dropdown-menus-b6e06ae3a8fe ReactJS: Dropdown menus A quick guide on building dropdown menu interactions in React. blog.campvanilla.com letsbuildui.dev/articles/building-a-dropdown-menu-component-with-react-hooks Building a Dropdown Menu Component With React Hooks We'll create a dropdown menu using React Hooks. letsbuildui.dev 첫번째 게시글은 클래스 컴포넌트에서, 두번째 게시글은 함수 컴포넌트에서 .. 2021. 1. 9.
useState 사용 시 배열 아이템 업데이트 방법 dev.to/brettblox/react-hooks-usestate-43en React Hooks - useState The useState hook allows us to make our function components stateful. Create and Initial... dev.to 위 글 참고했는데 더 좋은 방법이 있으면 댓글로 알려주시길 바랍니다 ㅜㅜ // 업데이트 함수 const UpdateSns = (e, index) => { setUserSns( userSns.map((item, idx) => (idx === index ? e.target.value : item)) ); }; // onChange에 업데이트 함수 넣어주기 {userSns.map((item, idx) => ( Updat.. 2021. 1. 6.
css 커스텀 border 만들어주는 사이트 border dotted 간격을 넓히고 싶어 찾아보다가 유용한 사이트를 발견했습니다. kovart.github.io/dashed-border-generator/ Dashed Border Generator by @kovart With this tool you can simply increase space between dots, change dash length or distance between strokes. kovart.github.io 원하는 스타일을 지정하고 밑에 코드를 복붙하기만 하면 되서 편하네요 ! 2020. 12. 22.
React로 사고하기 ! react.js 의 파일구조를 어떻게 나눠야하는지 고민하다가 react.js 공식 문서에서 하나의 글을 발견했습니다. react로 프로젝트를 개발하며 많은 도움이 될 것 같아 한 번 정리해보려고 합니다. ko.reactjs.org/docs/thinking-in-react.html React로 사고하기 – React A JavaScript library for building user interfaces ko.reactjs.org 목업으로 시작하기 목업(Mock up)이란 프로토타입, 시제품, 견제품과 같은 말입니다. 말그대로 미리 그려보고 시작하라는 것입니다. React 공식 문서의 예시를 가져와 보겠습니다 . JSON API와 목업을 디자이너로부터 받았다고 가정해 봅시다. 밑에 사이트는 다음 프로젝트 .. 2020. 12. 21.
useEffect 사용하다가 무한루프에 빠졌다 ? react-hook 사용하여 프로젝트를 진행 중, 잘 사용하던 useEffect로 인해 무한루프에 빠졌습니다. useEffect(() => { try { const something = {api 데이터 가져오는 코드}; //something은 object if (조건 true) { setOthers(others); setSomething(something); } } catch (error) { ... } }); 대략 이런 코드였는데 구글링을 열심히 해보니 something이 object 타입이라 생긴 문제로 판단했습니다. c언어에서 주소값이 다른 것처럼.... object는 같은 빈 object여도 {} 와 {} 이 다릅니다. 그래서 setSomething으로 something을 계속 업데이트해서 생긴 .. 2020. 12. 3.
[프로그래머스] 단어 변환 https://programmers.co.kr/learn/courses/30/lessons/43163 코딩테스트 연습 - 단어 변환 두 개의 단어 begin, target과 단어의 집합 words가 있습니다. 아래와 같은 규칙을 이용하여 begin에서 target으로 변환하는 가장 짧은 변환 과정을 찾으려고 합니다. 1. 한 번에 한 개의 알파벳만 바꿀 수 programmers.co.kr function solution(begin, target, words) { var answer = 0; var q = []; if (words.indexOf(target) < 0) return 0; var cnt = 0; q.push([begin, cnt]); while (q.length !== 0) { var word.. 2020. 8. 25.