javax.persistence.TransactionRequiredException: No EntityManager with actual transaction available for current thread - cannot reliably process 'remove' call
·
개발/error
delete에 관한 테스트 케이스를 작성할 때는 @Transactional이 반드시 추가되어야한다.
시놀로지 도커로 스프링 부트 실행하기(3) Tomcat
·
개발/scheduler
그간 기록은 해 왔지만 포스팅을 하지 않아서 한번에 올립니다. 앞선 포스팅에서 기록이 진행되고 있으니 참고해주시길 바랍니다.   1. 톰캣 기본 설정이다. 여기서 여기서 컨테이너 이름을 정하고(배포하는 프로젝트명이 적당할 것 같다.)자동 재시작 활성화와 Web Station을 통해 웹 포털 설정을 진행해 주었다.2. 다음 탭을 누르면 아래와 같이 나오는데 여기서 폴더추가와 파일 추가가 있는데 선택은 편한대로 하면 된다.필자는 파일 추가보다는 폴더 추가가 더 낫다고 생각하고 있는데, 파일 추가는 파일 이동의 가능성도 있고 이전에 포스팅할 내용에도 있지만자동 실행 파일과 같이 두는게 낫다고 판단하여 필자는 폴더 추가를 통해 파일을 추가하였다. 아래와 같이 되어있고 경로는 '/usr/local/tomcat/w..
시놀로지 도커로 스프링 부트 실행하기(2) Spring+JPA(feat. 자동 실행)
·
개발/scheduler
일단 IDEA는 IntelliJ를 사용하였고 Spring과 JPA를 통해 진행한 프로젝트를 배포하는걸 목표로 했다. 1.프로젝트의 yaml파일이다. url을 통해 데이터 베이스의 좌표를 정해주고 앞선 포스트에서 정한 바와같이 username에 mysql 아이디 password에 설정한 비밀번호를 입력한다. 포트번호는 본인이 원하는 번호로하고 ddl-auto의 경우 필자는 이전에  validate로 하였다. 초기설정을 한다면 Create로 그냥 실행하면 장비(필자의 경우 시놀로지)를 껐다가 켤 경우 정보가 싹다 날아간다. 2.  jar로 배포할 것이기 때문에 Gradle에서 clean을 실행한 후,(필자는 깔끔하게 밀고 생성하는게 낫다 판단하여 실행한 후 하였다.) bootJar를 실행한다.  3. boo..
시놀로지 도커로 스프링 부트 실행하기(1) MySQL
·
개발/scheduler
전제: 필자는 시놀로지 920+를 소유하고 있고 3개의 게시글로 내용이 진행됩니다. 시놀로지 도커가 dsm업데이트로 7.2로 업데이트 되면서 컨테이너 매니저로 변경 되었다.그다지 큰 변화는 없는 것 같고 인터페이스가 조금 변경되었다. 몇 달전에 타 블로그에서 스프링 도커로 스프링부트+JPA로 하는 것을 보고 따라하였으나 포트포워딩으로 포트를 열고 갖은 수를 다 써봤지만 502에러가 뜨면서 작동하지 않았었다. 그 후 며칠 전에 도커로 스프링 부트를 실행하는 방법을 찾던 중, 명령어로 java -jar~~라고 하면서 실행하는 것을 보고 '아 저거구나' 싶었다. 아마도 502에러가 실행하지 않음으로서 나온 에러로 보였던 것 같다.  그리하여 스프링 부트와 도커로 진행하고 있던 프로젝트를다시 한번 배포하는 것에..
스케쥴 정보 기능 개선(2)
·
개발/scheduler
DTO빌더 패턴을 통해 엔티티 DTO간에 형변환을 하였다.ControllerServiceDA(Repository)QueryReview직전의 로직과 비교가 안될 정도로 쿼리가 적게 나가고 있다.(5분의 1이다) 반복된 새로고침을 할 경우 리소스를 기하급수적으로 줄일 수 있으리라 생각된다. 먼저 직접적인 쿼리를 이용해 데이터를 가져온 후, 서비스 계층에서 요일별로 리스트를 통해 정보를 담아 컨트롤러로 반환하고 있으며bindingresult를 통해 정보를 오류정보를 반환하고 있다. 현재 학생 이름에 대한 오류값은 전달되나 요일을 입력하지 않았을시, 값이 전달되지는 않으나 오류코드가 프론트에서 보이지 않는 한계가 있다. 현재 관리자 페이지 기능 구현이 필요하며 기본 페이지는 부트스트랩을 통한 디자인 작업중에 있다.
스케쥴 정보(1)
·
개발/scheduler
CONTROLLERSERVICEDDA(Repository)Queryreview보다싶이 월화수목금 모든 요일에 대한 데이터 정보를 db에 요일마다 접근하고 있다. 처음에는 이렇게 작업하여 DB에 저장되어 있는 요일별 스케쥴을 확인하여 가져오는 코드를 구현하였다.그 결과 간단한 서비스 프로그램임에도 지나치게 많은 쿼리가 나가고 있고 이는 리소스를 너무 많이 잡아먹는효율적이지 못한 코드라 판단되었고 추후에 리팩토링을 거쳐 하나의 쿼리로 DB에 접근하도록 하였다.
dev.hong96
'개발' 카테고리의 글 목록 (5 Page)