목록전체 글 (17)
하는 데 의의를 둬春
Error: error:0308010C:digital envelope routines::unsupported at new Hash (node:internal/crypto/hash:80:19) at Object.createHash (node:crypto:139:10) at module.exports (C:\myReact\react-movie-app\node_modules\webpack\lib\util\createHash.js:135:53) at NormalModule._initBuildHash (C:\myReact\react-movie-app\node_modules\webpack\lib\NormalModule.js:417:16) at handleParseError (C:\myReact\react-movie..
https://velog.io/@maxxyoung/Spring-MyBatis%EC%99%80-JPA-%EB%8F%99%EC%8B%9C-%EC%A0%81%EC%9A%A9%EA%B3%BC-%ED%8A%B8%EB%9E%9C%EC%9E%AD%EC%85%98 velog velog.io 다음의 포스트를 보고 JPA에 MyBatis를 추가해서 사용하고 있었다. 그런데 엔티티에 FetchType.LAZY를 사용한 부분에서 LazyInitializationException이 발생했다. 이상하게 FetchType.EAGER를 사용하면 동작하는데, 권장되는 방법인 @Transactional을 추가하면 다시 안된다. 이건 뭔가 문제가 있다...😢 /* 코드 생략 */ public class DatabaseConfig { /*..
@Controller @Slf4j public class EmailController { @Autowired EmailService emailService; @RequestMapping("/emp/sendEmail") @ResponseBody public Map sendEmail(@RequestParam(value = "empNo") String empNo , @RequestParam(value = "contents") String contents) { EmployeeInfo empInfo = new EmployeeInfo(); Map resMap = new HashMap(); String html = ""; try { final EmployeeInfo finalEmpInfo = empInfo; fina..

나는 Online Builder로 내가 원하는 기능을 추가해서 라이브러리를 받기로 했다. https://ckeditor.com/ckeditor-5/online-builder/ CKEditor 5 Online Builder | Create your own editor in 5 steps Create your own CKEditor 5 build with customized plugins, toolbar and language in 5 simple steps. ckeditor.com 먼저 에디터 타입을 고른다. 가장 기본적인 타입인 Classic을 골랐다. 다음으로 사용할 플러그인을 선택한다. Alignment : 왼쪽, 가운데, 오른쪽 정렬 Auto Image : URL 또는 파일로 이미지를 삽입 Auto..
테스트로 넣었던 데이터 삭제할 때 팁 메모해두기. SEQ라는 컬럼이 고유키라고 가정할 때, 먼저 SEQ를 사용하는 모든 테이블을 조회해 DELETE문을 만든다. SELECT CONCAT( 'DELETE FROM ' , TABLE_NAME , ' WHERE SEQ = "1234";' ) FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME = 'SEQ' ; 바로 실행시키면 다음과 같은 에러가 발생한다. ERROR 1217 (23000): Cannot delete or update a parent row: a foreign key constraint fails 이 경우 외래키 제약조건을 껐다 실행하고 다시 켜면 됨. SET sql_safe_updates = 0; SET f..
java.net.BindException: Address already in use (Bind failed) 위와 같은 에러가 발생하면 이전 tomcat이 제대로 종료가 안된 것이다. sudo netstat -lntp | grep [포트번호] 목록을 조회하여 8005, 8080 등의 값이 들어간 pid를 찾으면 sudo kill -9 [pid값] 명령어로 강제 종료해준 다음 다시 시작하면 된다...
프로젝트에 이미 lightbox 플러그인이 적용된 상태였는데 이미지 확대/축소 기능 추가 요청이 들어왔다. 다른 플러그인으로 바꿀 자신이 없어 Hammer.js를 사용해 어찌저찌 기능을 추가했다...😢 [목표] 두 손가락으로 이미지 줌(확대/축소)가 가능할 것 확대 후 pan을 이용해 두 손가락으로 이미지 탐색이 가능할 것 원래 이미지 크기보다 축소되지 않을 것 swipe 시 이미지가 움직이지 않고 이동 될 것 Hammer.js 홈페이지 메인에 있는 스크립트를 긁어 참조했다. http://hammerjs.github.io/ Hammer.JS - Hammer.js hammerjs.github.io 이벤트를 적용할 이미지는 반드시 css에서 touch-action을 none으로 지정하자. 안그럼 pinch ..
[이렇게 사용하세요!] 동영상 서비스 자동화 .. : 네이버블로그 (naver.com) [이렇게 사용하세요!] 동영상 서비스 자동화 하기 : 네이버 클라우드 플랫폼 VOD Station + Cloud Functio 안녕하세요, 누구나 쉽게 시작하는 클라우드 네이버 클라우드 플랫폼 ncloud.com 입니다. 온라인 쇼핑 후 ... blog.naver.com Cloud Function - VOD Station 자동 인코딩은 위 블로그를 참조하여 구현했다. 트리거에 시퀀스만 등록해야하는걸 액션까지 등록해놓고 왜 안되지 이러고 있었던 나는 바보일까...? 자동 인코딩을 위해선 동영상을 업로드하고 이벤트를 발생시킬 input bucket과 인코딩 후 파일을 저장할 output bucket이 필요하다. 하나의 b..
네이버 클라우드 플랫폼의 Bucket Management에 파일 서버를 운영하려고 함! AWSFileUtil.java 이미지/동영상 업로드 후 썸네일 생성해서 업로드 하는 것까지 넣음 package com.yido.clubd.common.utils; import java.awt.Image; import java.awt.image.BufferedImage; import java.io.BufferedOutputStream; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; impo..
ObjectMapper를 사용한다. public static Map changeVotoMap (Object vo) { ObjectMapper objectMapper = new ObjectMapper(); Map map = objectMapper.convertValue(vo, Map.class); return map; } public static Object changeMaptoVO (Map map) { ObjectMapper objectMapper = new ObjectMapper(); Object vo = objectMapper.convertValue(map, Object.class); return vo; }