본문 바로가기
반응형

분류 전체보기386

[react] checkbox 전체선택하게 하기(장바구니 상품삭제 기능) 장바구니 같은 화면을 보면 개별로 체크박스 버튼이 있고 전체를 체크하는 체크박스가 있다.ㅁ 전체를 체크하는 체크박스를 클릭하면 개별 체크박스가 전부 클릭되도록 하려한다. redux, immer를 사용하고 있고, react hook을 이용해 개발을 진행하고 있다. 방법은 다음과 같이 했다. 1. 개별, 전체 선택시 ID를 배열로 저장(변수를 checkItems 함) 2. 삭제 클릭 시 저장되어 있는 ID배열을 이용해 삭제 시도 포인트: 1) 전체선택 시, 현재 보여지고 있는 목록의 ID를 가져와 배열을 담는다 2) 개별 선택을 저장하고 있는 checkItems 안의 내용을 비교하여 값이 있으면 체크박스에 체크되어 있도록 함 reducer에 다음의 데이터를 등록한다 import produce from "im.. 2020. 10. 7.
[springboot] jpa 2개이상 DB사용(querydsl 설정 포함) 2개 이상의 DBMS를 JPA를 이용해 접근하는 법 + Querydsy( queryFactory) 사용 방법을 정리한다 한가지 조건이 있다면, 둘다 hibernate 설정이 같아야 한다.(Datasource는 다름) 만약 이부분을 다르게 할거라면 아래 설정중에 LocalContainerEntityManagerFactoryBean 를 설정하는 부분에서 삽입될 properties를 수정하면 된다. 여기서는 mysql을 사용했다. 우선 application.properties에 설정된 값을 먼저 살펴보자. 각자 서버에 맞게 설정하면 되겠다. spring.jpa.show-sql=true spring.jpa.generate-ddl=false spring.jpa.hibernate.ddl-auto=none sprin.. 2020. 9. 17.
[airflow] 테이블 유무 확인 BigQueryTableSensor 간단하게 알아보자. airflow에는 bigquery를 수행할때 BigQueryHook을 이용하는데 여기서 제공하는 메서드 중에 hook.table_exists 라는게 있다. 해당 코드를 보면 다음과 같다 ... def table_exists(self, project_id, dataset_id, table_id): """ Checks for the existence of a table in Google BigQuery. :param project_id: The Google cloud project in which to look for the table. The connection supplied to the hook must provide access to the specified project. :ty.. 2020. 9. 10.
[airflow] GCS(Google Cloud Storage) 파일을 BigQuery에 저장하기 지난 글에 이어 살펴보자. lemontia.tistory.com/957 [airflow] Mysql 데이터를 GCS(Google Cloud Storage)로 저장하기(mysql_to_gcs, 한글깨짐, 날짜포멧 수정) Data lake 를 구축하기 위한 1단계인 원본데이터를 GCS로 이동하는 것을 다뤄보려 한다. embulk를 쓸까도 했었는데, JAVA 1.8 버전 이후부터는 지원을 안하기도 했고, 관리포인트를 늘리는 것도 좋아보�� lemontia.tistory.com 이전 글에서 환경변수에 AIRFLOW_CONN_GOOGLE_CLOUD_DEFAULT 를 설정하여 GCS를 접근하게 했는데, 이 정보를 그대로 사용해도 되고 또는 BigQuery만의 설정을 따로 만들어도 좋다. 다만 airflow에서 제공.. 2020. 9. 9.
[airflow] Mysql의 캐릭터셋(charset)이 euc-kr 일 때(혹은 로드시 can't decode byte 0xb5에러가 날때) airflow 에서 제공하는 플러그인 중 쓰고있는 MySqlToGoogleCloudStorageOperator 는 기본 캐릭터 셋을 utf-8로 인식한다. 그런데 DB에서 설정하는 스키마가 utf8이 아닐경우 로드 하다보면 다음과 같은 에러를 발생시킨다. ERROR - 'utf-8' codec can't decode byte 0xb5 in position 0: invalid start byte Traceback (most recent call last): File "/usr/local/lib/python3.7/site-packages/airflow/models/taskinstance.py", line 983, in _run_raw_task result = task_copy.execute(context=c.. 2020. 9. 7.
[python3] 기존에 되던것이 No module named 뜰 때 최근 서버를 점검하다 파이썬3.7 => 3.8로 버전을 올리게 되면서 pip3 도 같이 업데이트 했는데, 하고나니 기존 프로그램들이 실행되지 않는 문제가 발생했다. 보아하니 pip3로 받은 모듈들이 모두 깨진게 아닐까 판단. 복구방법은 pip3 명령어로 --upgrade 해주어야 한다 예를들어 다음과 같은 에러가 난다면 ... ModuleNotFoundError: No module named 'google' 아래 명령어로 수행해주어야 한다. pip3 install --upgrade google-cloud-storage 그중에는 모듈이름이랑 완벽하게 일치하지 않는경우가 있었는데, 위 사례가 그렇다. google이라고 하지만 사실상 google-cloud-storage 와 google_auth_httplib.. 2020. 9. 3.
반응형