전체 글 31

[Springboot + JPA] QueryDSL 셋팅법

오늘은 JPA를 이용해 sql문을 처리하다가 기존에 사용하던 public interface UserRepository extends JpaRepository { @Query(value = "select * from User where id > ?1") public List selectJPQLById1(int id); @Query(value = "select * from User where id > :id") public List selectJPQLById2(@Param(value = "id") String id); } 이런 방식의 쿼리문 사용으로는 동적쿼리를 사용할 수 없기에 동적쿼리를 알아보았다. JPA를 사용할 때 사용할 수 있는 동적쿼리 방식은 JPQL, Criteria, Specification,..

MVC 게시판 2023.12.04

[오류 해결]SpringBoot + JPA 환경에서 DB연결 오류

SpringBoot 와 JPA 를 사용하는 환경에서 Local DB와는 문제가 생기지 않았지만, DB서버와 연결하면서 에러가 발생했다. 에러 화면 분명 존재하는 테이블인데 테이블이 존재하지 않는다는 내용의 에러였다. 혹시나 해서 entity에 Table 이름을 추가 해주었지만, 여전히 에러는 발생하는 상황 ㅠㅠ Local DB로는 문제가 없었기에 의심하지 못 했는데 한참을 구글링한 결과 application.yml jpa: generate-ddl: false hibernate: ddl-auto: none naming: physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl properties: hiberna..

오류 해결 2023.11.30

[Swift] 타이머 만들기

버튼 클릭 시 타이머가 작동하고 다시 클릭 시 이어서 타이머가 동작하게 만들어 보기 #timer 제목을 보여주는 label @IBOutlet var lblTimer: UILabel! #timer 동작 시 숫자를 보여주는 label @IBOutlet var lblNumber: UILabel! #Timer 동작 시 실행할 함수를 지정 let timeSelector : Selector = #selector(ViewController.updateTime) var interval = 1.0 var count = 0 #일시정지를 위한 bool var flag = false #Timer 객체 생성 var timer = Timer() 이제 버튼과 updateTime 함수를 만들어주자 object-c 와 호환성을 위해 ..

Swift 2023.05.02

[SwiftUI] 기본 지식

@State private var isActivated : Bool = false State SwiftUI는 @State로 선언된 property를 관리합니다. @State는 @properyWrapper로, SwiftUI로 하여금 이 프로퍼티가 하고싶은 행동을 정의하는 타입이라고 이해 시킵니다! 따라서 @State로 선언된 변수의 값이 변경되는 경우, View를 무효화(invalidate)하고 var body: some View를 recompute 하도록 합니다. @State 인스턴스는 값 자체가 아닌 값을 읽고 쓰는 수단이며, 이 State의 기본 값에 접근하기 위해서 변수의 이름을 사용합니다. 변수의 이름은 wrappedValue를 반환합니다. @State private var isActivated ..

Swift 2023.04.20

[SwiftUI] 공부 1일차

Swift UI 공부 1일차 Step.1 Text 표현하기 struct ContentView: View { var body: some View { //HTML body라고 생각하면 된다. Text("Hello World!") } } //입력된 코드의 미리보기를 위한 코드 struct ContentView_Previews: PreviewProvider { static var previews: some View { ContentView() } } Step.2 Stack사용하기 Stack에는 Z,H,V Stack이 있다. Z는 좌표계 z와 같이 생각하면 된다. 뷰들을 겹쳐서 사용할 경우 ZStack을 사용하면 된다. HStack은 Horizon Stack 으로 수평으로 뷰들을 나열할 수 있다. VStack은 ..

Swift 2023.04.19

[ubuntu] Nginx 설정하기

오늘은 nginx 환경을 세팅해보았다. ubuntu 접속 후 아래 경로로 들어가 .conf 파일을 생성한다. 설정 값 입력 후 wq 내용을 모두 입력하고 나면 저장 후 아래 코드를 실행한다. $ sudo ln -s /etc/nginx/sites-available/test.conf /etc/nginx/sites-enabled/test.conf 후에 sites/enabled에 있는 도메인을 /etc/nginx/nginx.conf 에 include 시켜줘야한다. 다음은 cerbot을 설치한다. $ sudo add-apt-repository ppa:certbot/certbot $ sudo apt-get install python-certbot-nginx ## 22.04 jammy 이상 $ sudo apt-get..

linux 2023.04.12

[Spring boot] Rest API 전송 크기 설정

Image Background Removal API를 사용해보던 중 파일을 받는 중 에러가 발생했다. http.fileupload.FileUploadBase$FileSizeLimitExceededException: The field file exceeds its maximum permitted size of 1048576 bytes. 이런 에러가 발생했는데 Spring의 파일 전송 크기를 설정해주지 않아 기본 설정인 1048576 bytes로 되어있다는 뜻이다. 해결방법은 간단했다. application.properties #spring multipart 전송 크기 설정 #최대 크기 spring.servlet.multipart.max-file-size=128MB #최대 요청 크기 spring.servle..

MVC 게시판 2023.04.12

[spring boot] Gradle로 빌드 시 에러

maven으로만 spring boot를 사용하다 gradle로 개발환경을 바꿔서 사용해보려는데 빌드를 하자마자 에러가 발생했다... dependency가 제대로 설치가 안된건가 확인해보았지만 문제는 없었다. 결국 구글링 결과.. Gradle 빌드 IDE가 IntelliJ가 아닌 gradle이 기본설정으로 들어가 있었다. gradle을 IntelliJ로 변경 후 apply 하고 다시 빌드했더니 해결이 됬다. maven과 다르게 gradle은 자체로도 빌드가 가능해서 일어난 일인 것 같다.

오류 해결 2022.12.08