전체 글 63

ORM 의 두가지 디자인 패턴

ORM (Object Relational Mapper) 은 객체지향적 프로그래밍에서 객체들의 관계를 설정하여 DB를 관리하는 기술입니다. ORM에는 크게 두가지의 디자인패턴이 있습니다. 자바EE에서 적용된 데이터맵퍼 패턴 루비의 루비온레일즈에 적용된 엑티브레코드 패턴입니다. 소프트웨어 엔지니어인 마틴파울러가 2003년 Patterns of Enterprise Application Architecture 라는 책에서 주장한것입니다. 데이터 맵퍼 패턴 데이터 저장하는 계층(ORM의 일부)과 클래스를 연결하는 맵퍼가 있습니다. 이 맵퍼를 Entity 클래스라고 부릅니다. Entity 클래스에서 DB관련된 작업을 하게됩니다. 장점 1.클래스에서 DB와 관련된 작업이 분리되어 유지관리, 수정이 쉽습니다. 2. 객..

IT 업계는 유색인종차별 용어 다른 단어로 바꾸고 있네요. feat V8엔진

2020년초 미국에서는 경찰에 의해 비무장 흑인 조지플로이드씨의 안타까운 죽음이 있었습니다. 이 일을 계기로 미국 뿐만아닌 유럽 전역, 일본 , 뉴질랜드 등 전세계적으로 인종차별에 관해 이슈가 되었고 그전에도 이런일이 있었지만 올해는 사회전반적으로 좀 더 바뀌어야한다는 의식이 강해져서 미국에서는 100년된 아이스크림도 퇴출되었다고 합니다. 다른 업계에서도 제품의 용어나 모델을 바꾸는 일이 생겼습니다. 흑인뿐만아니라 유색인종차별에 관한 차별도 문제입니다. www.hani.co.kr/arti/economy/consumer/951257.html ‘인종차별’ 이슈 거세지자 100년된 아이스크림도 “퇴출” 결정 [신민정의 마감세일] 인종차별적 로고·제품명 사용 글로벌 식품업계 서둘러 교체‘하얀 피부=아름다운 것’..

일상 2020.10.03

http 응답 BAD REQUEST도 상태코드 200이 뜰때.

@PatchMapping("/content/update") public HttpStatus modifyContent(@RequestBody BoardVO contentVO) { if(boardListService.contentModifyService(contentVO) == 1){ return HttpStatus.OK; }else { return HttpStatus.BAD_REQUEST; } } HttpStatus는 단순히 상태코드를 나타낸다. 이렇게 하면 "OK"라는 문자열이 전송되서 bad_request를 보내도 200이 뜬다. 리턴타입으로 ResponseEntity 객체를 생성해서 return new ResponseEntity (HttpStatus.BAD_REQUEST) 로 상태코드를 보내야한다.

PHP 8.0 애트리뷰트 문법 논란

PHP 8.0에서는 애트리뷰트(자바나 다른언어의 어노테이션)기능이 추가되었습니다. 애트리뷰트는 클래스, 함수, 변수의 메타 데이터입니다. (메타데이터는 다른데이터를 설명하는데이터 입니다.) PHP 위원회는 로 > 문법을 제시했고 PHP레딧이나 PHP사용자 커뮤니티에서 복잡하다며 @@Attribute 로 하자고 했는데요 보통 다른언어들에서는 @로 시작하는데 PHP에서 @는 경고를 끄는 의미로 쓰고 있어서 ㅋㅋ 결국 Rust언어문법을따라한 #[ ] 가 되었네요 PHP .. PHP 레딧 댓글보면 PHP 9에서는 기존의 @를 다른거로 바꾸고 @문법으로 선언할수있게 하자고 하는등 난리네요 ㅋㅋ --------------------- > -> @@ -> #[]

PHP 2020.09.03

안드로이드 FM라디오 앱 - 삽질

2018년 부터 FM라디오 탑재가 권장되어서 국내 폰에는 빼던 FM라디오가 들어왔습니다. LG 폰 사용중에 FM라디오 앱은 방송국 이름을 적을 수가 없네요 LG FM라디오 SDK는 종료되서 지원이 않되네요 깃헙에 AOSP-CAF 프로젝트에 검색 중에 퀄컴 칩셋용 FM라디오 프로젝트를 찾았습니다. https://github.com/AOSP-CAF/platform_vendor_qcom-opensource_fm AOSP-CAF/platform_vendor_qcom-opensource_fm Contribute to AOSP-CAF/platform_vendor_qcom-opensource_fm development by creating an account on GitHub. github.com ----------..

일상 2020.08.12

파이어폭스 78 TLS 1.0/1.1 지원중단

지난 3월 코로나19로 인해 재개되었는데요 6월 30일 파이어폭스 78출시가 되면서 일정대로 TLS 1.0과 1.1버전이 중단되었습니다. 크롬브라우저는 아직 지원중이지만 MS의 IE가 9월에 구버전TLS를 중단 한다고 하니 크롬도 계획대로 올해안에 중단되겠군요 보안문제가있으니 URL은 가렸습니다. 파이어폭스 78버전에서 TLS 1.0만 지원중인 어떤 사이트에 접속시 브라우저에서 차단하네요 쇼핑몰인데도 구버전 TLS만 지원하고있는데 저곳은 언제 바뀔지 관리가 되고있는지 알수가 없네요

모질라 파이어 폭스의 TLS1.0/1.1 지원 재개

코로나 19로 인해 각국 정부사이트들 접속량이 늘고있습니다. 이에 모질라는 정부사이트들은 오래된 곳이많아 TLS 1.2를 미지원 하는곳이 있어서 파이어폭스 74에서 중단한 TLS1.1/1.0 프로토콜 지원을 임시로 지원하기로 결정 했습니다. 한편 MS IE는 TLS1.1/1.0 프로토콜 중단을 2020년 상반기 내로 진행하기로 했다네요 https://www.bodnara.co.kr/bbs/article.html?num=162069 코로나19와 정부 사이트 느린 업데이트, 파이어폭스 구버전 TLS 지원 재개 :: 보드나라 파이어폭스 브라우저에, TLS 1.0과 TLS 1.1 지원이 재개된다. fudzilla에 따르면, 파이어폭스에서 보안 이슈로 지원이 중단된 구버전 TLS 지원 재개와 관련해 모질라 대변인..

화명수목원 꽃 배추

작년 화명수목원에 있을 때 같으면 관람객 분들이 엄청많아 주차관리를 하고 차량 대기줄이 길어서 짜증내는 관람객, 월요일 휴무인데 손자랑 오셔서 안타까워 하시는 분들 막들어가려는 분들.. 부산에도 어린이들이 놀러갈곳이 많아지면 좋겠네요 지금은 코로나 때문에 안붐비지만 옆쪽 주차장이 줄어서 어떻게 될지 걱정입니다. 수목원 꽃배추가 새들의 먹잇감이 되었습니다 ㅋㅋ

일상 2020.04.09

PHP SQL인젝션과 mysqli bind_param

예전에 작성한 PHP코드를 살펴보니 mysqli 로만 되어있을 뿐 쿼리에 변수를 그대로 대입해서SQL인젝션 공격에 취약했습니다.$query = "insert into parktable (total,big,mid,small,date) values ($total,$big,$md,$sm, $today)";$result = mysqli_query($dbConnect,$query);공격자가 변수에 다른 SQL문을 보내서 테이블을 지우거나 계정을 바꿀 수도있는 보안에 심각한 상황입니다.  https://modernpug.github.io/php-the-right-way/#mysql_extension PHP: The Right Way 한국어판쉽게 읽을 수 있는 PHP의 베스트 프랙티스, 코딩 표준, 권위있는 튜토리얼..

PHP 2020.04.06