🍩Java1. 프로세스와 쓰레드란?프로세스는 실행 중인 프로그램을 의미하며, 최소 하나의 쓰레드를 가지고 있습니다.프로세스는 독립적인 메모리 공간을 가지고 있으며, CPU 시간을 할당받아 실행됩니다.쓰레드는 프로세스 내에서 독립적으로 실행되는 실행 단위/프로세스 내에서 실행되는 세부 작업 단위 입니다.쓰레드는 프로세스의 메모리 공간을 공유하며, 동시에 여러 쓰레드가 실행될 수 있습니다.쓰레드는 CPU가 어떤 동작을 수행하기 위해 사용되는 명령 집합의 최소 단위2. 멀티프로세스와 멀티쓰레드란? 멀티프로세스는 하나의 운영체제 안에서 여러 프로세스가 실행되는 것을 의미합니다. 각각의 프로세스는 독립적인 메모리 공간을 가지고 있기 때문에 서로의 메모리 공간을 공유하지 않습니다.멀티쓰레드는 하나의 프로세스가 ..
🐯 [DB] ERROR: syntax error at or near "$1" mybatis사용중인데 종종 나던 에러인데 참고 : 현재 개발 환경 스프링 부트 / postgresql 14 / mybatis insert를 하면 해당 에러는 종종 만나게 되는데 이번 경우에는 foreach문이 문제였다 INSERT INTO /* Mapper.xml : insert */ table.my_table ( id, name, address ) VALUES ( #{item.id} , #{item.name} , #{item.address} ) 위에는 Insert문인데, mybatis에서는 만일 insert를 여러개해야하는경우 ( 배열로 들어오는 경우 ) values에 foreach문을 걸어서 insert를 할 수 있게 되어..
아래의 코드는 제가 간단하게 만든거라 let, const 등이 없으니 혹시 필요하면 변수명이나 이런건 수정해서 사용하면 됩니다. 해당 코드는 객체안에 배열이 있고, 그 배열안에 또 배열이 있는 경우인데 inner의 n번째 배열의 값과 다른 객체의 배열과 값을 비교하려고 만든 코드이다. array_other과 array_inner_2의 array_name이 일치하는 경우 일치하는 객체를 matchArray에 담고, 있는 경우 실행되게끔 만들어두었고 index를 알아야 array_other 값을 변경하기 때문에 indexOf로 index를 찾아서 필요한 조건을 걸도록 해두었다. array_outer : { array_inner_1 : Array(20) array_inner_2 : Array(10) array..
🩵컨트롤러에서 파일 다운로드 (a 태그로 클릭하여) 배경 A서버에서 API요청하여 B서버에 있는 파일을 읽어서 A서버쪽 UI(Blod 객체 사용)로 byte로 출력하려고 하니 자꾸 인코딩이 제멋대로 되며, 안의 글자들이 깨지게 되어 파일을 사용할 수 없게 됨. A,B가 같은 리눅스 환경이라 그 점을 이용해 A태그를 이용해 UI쪽 컨트롤러에서 바로 다운받을 수 있게끔 구현 + HTTPS가 아니면 파일이 다운이 안된다고 뜨고 찾아보니 그렇다길래 HTTPS로 변경했는데 개인으로 받은거라 그런가 자꾸 인증서 문제가 생기고 제대로 돌아가지도 않아서 다시 HTTP로 변경 (우리는 총 3개의 서버를 연결해서 그런지 문제가 조금씩 있었다. 두 개의 서버는 HTTPS 괜찮을 것 같다.) 엣지에서는 또 잘 되고 그래서 그..
- 이미 서버가 구축되어 있다는 전제 하에 작성 1. 우선 DB 스키마를 확인 로컬에서만 사용했으면 스키마없이 쿼리를 작성하는 경우도 종종 있는데 스키마가 없으면 문제가 나옴 - 서버에 스키마가 여러개일수도 있음 :: 서버 스키마 생성 시 public 문제가 생기기도 한다 함 2. 만약 웹 - 서버로 되어 있는 3tier인 경우 server-url을 localhost로 하고 테스트하는 경우가 있는데 이 경우 실제 서버 주소로 변경해주어야 함 3. CORS 정책 - 하나의 프로젝트에서 하는게 아니라 두 개 이상 프로젝트에서 진행하게 되면 CORS정책이라는게 있음 아래처럼 config 폴더에 config를 위한 파일을 하나 만들자 나는 저렇게 만들었더니 잘 실행되었다. @Configuration public..
git fetch origin git checkout 브랜치명 git branch -D git push -d $ git branch -m [OLD_BRANCH] [NEW_BRANCH] 로컬 브랜치 이름 변경 git branch -r git stash >> 잠깐 리스트에 담아두기 git stash list git drop >> 삭제 (stash 목록) git stash show -p #가장 최근에 stash를 사용하여 패치를 만들고 거꾸로 적용 git reset --hard ORIG_HEAD # git pull 받은 내용 취소 # 위의 명령어를 그대로 입력하면 방금 전 pull 받은 내용 취소 가능 git lab + intellij 사용 중인데 , bash가 좀 더 편하고 정보가 많아서 사용중이다 pull..
아래는 배열 중 key가 value1, value2인 것만 정규식 테스트를 하고 싶어서 검색하여 찾아냈다.(아래) 또, 배열을 돌면서 정규식 체크하는 것도 있다 (위) let reg = /^[a-zA-Z]{1,20}$/; let value = { cola : 'cola', cider : 'cider', juice : 'juice', milk : 'milk' } // value 배열을 돌면서 정규식 체크 for (let val of Object.values(value)) { if (!reg.test(val)) { return false; } } let array= ['value1', 'value2']; // array에 담긴 value와 key가 일치하는 경우에만 정규식 테스트 for (let item o..
1. newData라는 배열이 있다. 2. api 호출하여 값을 전달해줘야하는데 백엔드 쪽에서 설정한 변수가 프론트쪽에서 설정한 변수/DB 컬럼과 다름 3. 백엔드쪽에서 지정해준 변수를 key로 하나의 객체로 보내줘야 함 4. 백엔드에서 설정한 변수명은 keys에 담아두고 newData 배열을 돌리면서 객체로 만들어 값을 넣어줘야 함 5. 만일 keys[index]가 노오랑인 경우 다른 값으로 넣어줘야 함 아래는 만든 함수 const newData = [ { group: '초록', name: 'Alice', date: '2024-03-01' }, { group: '노랑', name: 'Bob', date: '2024-03-02' }, { group: '하양', name: 'Charlie', ..
- Total
- Today
- Yesterday
- How to generate an uuid in google sheet?
- computed
- SCP 명령어
- APP SCRIPT
- 구글스프레드시트
- 로컬에서서버
- 파라미터받는법
- 패킷캡쳐하는법
- 프론트엔드 #
- 고유식별자
- 스프링프레임워크
- 개발자질문
- ReflectionTestUtils
- selectOption
- 개발자면접질문
- invokeMethod
- 부트스트랩
- uuid
- vue.js
- vue라이프사이클
- PathVariable
- springMVC #DTO #VO #DAO
- centos7
- 서버포트설정
- selectpicker
- pcap저장
- 와이어샤크문법
- nextTick
- 리눅스
- 파일전송프로토콜
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |