Java 16

PostgreSQL과 Golang DB 연결

Go + HTMX 프로젝트 진행 도중 DB 연결하는 부분에서 애먹은 부분이 좀 있어 이를 정리할 겸 글을 적습니다.* Go언어 프로젝트 기본 설정은 끝났다는 가정 하에 설명하겠습니다. 1. 기본적인 PostgreSQL DB 연결먼저 PostgreSQL 라이브러리를 프로젝트 경로에 설치해야합니다. 아래 명령어를 실행하여 설치합니다.go get github.com/lib/pq 그리고 DB 연결하는 코드는 아래와 같다.package mainimport ( "database/sql" "fmt" // 이를 선언하지 않으면 unknown driver 오류가 발생한다. _ "github.com/lib/pq")const ( HOST = "localhost" DATABASE = "CREATE한 DB명" PORT ..

Java/Golang 2026.01.05

Golang 개발환경 구축 (VS Code)

Golang 다운로드https://go.dev/dl/ All releases - The Go Programming Language go.dev위의 사이트를 접속하면 Golang 공식 홈페이지의 Go 릴리즈 버전들을 확인할 수 있다.단순하게 "Featured downloads" 섹션에서 본인의 OS에 맞게 파일을 다운로드하면 된다. VS Code 환경 구축VS Code가 기본적으로 다운로드되어 있다는 전제하에 진행하겠습니다.확장의 경우 크게 다운로드받을 것은 없고, "Go" 검색 후 가장 상단에 뜨는 플러그인을 다운로드하면 끝이다. 위와 같이 하면 환경 구축은 완료되었고, 실제로 Go 파일이 실행되는지도 확인해줘야한다. 먼저, 현재 폴더에서 Go 모듈을 초기화해 주는 작업을 진행해야 한다.VS Code에..

Java/Golang 2025.10.11

[Android 공부] Spring Boot와 연계를 통한 회원가입 구현(3)

저번에 이메일 중복 체크를 하였고, 이번에는 실제 회원가입을 구현해볼 겁니다.백엔드 설정1. 회원가입 요청/응답 DTO 추가요청은 이메일(username), 비밀번호, 이름, 나이, 전화번호, 역할(유저 or 어드민) 값들을 정의하였고,응답은 회원가입 성공 여부, 메시지를 정의하였습니다.public class RegisterRequest { private String username; private String password; private String name; private int age; private String phoneNum; private String role; public String getUsername() { return username; } public String g..

Java/Android 2025.06.02

[Android 공부] Spring Boot와 연계를 통한 회원가입 구현 - 이메일 중복 체크(2)

저번에 로그인을 구현해봤는데, 회원가입도 다를 게 없었습니다. 오히려 더 간단했습니다.회원가입 시에는 이메일, 비밀번호, 이름, 나이, 전화번호를 입력받아서 DB에 저장하고, 이메일은 중복확인을 통해 이미 DB에 존재하는 이메일인지 체크할 겁니다. 백엔드 설정1. 이메일 중복 체크 시 사용할 요청/응답 DTO 추가이메일 중복 체크 시 사용할 DTO를 추가할 건데, 이름은 EmailCheckRequest, EmailCheckResponse로 하였습니다.프론트에서 중복 체크를 요청할 때 이메일 값만 넘길 것이므로, username(변수명은 security랑 혼동하지 않기 위해 username으로 하였음)만 정의했습니다.응답 때는 존재 여부만 전달해주면 되기 때문에 exists Boolean 변수를 정의했습니..

Java/Android 2025.06.02

[Android 공부] Spring Boot와 연계를 통한 로그인 구현 (1)

기존에 진행 중이던 프로젝트 "FlipMarket"을 안드로이드 버전으로도 개발하면 괜찮겠다고 생각해서 웹 개발과 병행하며 진행 중에 있습니다.솔직히 이 프로젝트는 할 필요 없었는데, 곧 선발전 대회가 있어서 대비할 겸 공부하자 생각해서 진행하게 되었습니다. 백엔드 설정1. 필요한 의존성 추가 및 DB 연결Spring Security + JWT를 활용해서 로그인을 구현할 것이므로 이와 관련된 라이브러리 의존성을 추가했습니다. 그 외의 것들은 이 후에 개발할 때 편의를 위함과 기본적인 라이브러리들을 추가했습니다.dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.spri..

Java/Android 2025.05.28

Spring Boot에서 Native Query 사용

프로젝트를 진행하면서 내가 직접 쿼리를 사용해 구현하고 싶은 것이 생길 때 사용하는 것이 JPQL or NativeQuery입니다.코드 관점으로 보면 두 개의 개념은 비슷합니다. 원래 JPA만 사용할 경우 메서드 명명규칙에 따라서 자동으로 쿼리를 생성해 주는데, 이게 아닌 개발자가 직접 원하는 결과를 반환하는 쿼리를 작성하는 것입니다. 다만, 차이점이라고 하면 쿼리 작성 요령이 다릅니다.ex) "user"라는 테이블에서 모든 값을 가져오고 싶을 때1. JPQL의 경우@Query(value = "SELECT * FROM User WHERE id = ?1")Optional selectAll(String id); 2. Native Query의 경우@NativeQuery(value = "SELECT * FROM..

Java/Spring 2025.05.03

JavaScript -> RestController POST 통신 오류

Spring Boot 프로젝트를 하던 도중 프론트-백 분리 구조를 활용해서 코드 작성 중 이유를 알 수 없는 오류가 발생하고 있었습니다그 어떤 로그도 안 찍히길래 뭔 문제인가... 하루를 고민했는데 해결방법을 찾았습니다. 1. 오류의 원인일단, 문제가 뭐였냐면 javascript 단에서 ajax로 post url 요청을 controller 쪽으로 하는 상황이었는데, 회원가입 성공을 했을 경우 요청이 controller쪽에 닿지도 못하는 문제가 발생했었습니다. 근데 이게 로그도 찍히는 게 아니고.. 오류 문구도 없으니까 도대체 뭐가 문제인지를 몰랐었는데.. javascript 코드 쪽은 문제가 없어 보였습니다. (아래는 제 프로젝트의 js 코드입니다.)$.ajax({ type: "POST", u..

Java/Spring 2025.04.24

Java Swing과 AWT를 이용하여 원 돌아가는 애니메이션 만들기

import java.awt.Color; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import java.awt.geom.Arc2D; import javax.swing.JFrame; import javax.swing.JPanel; public class CircleAnimation extends JFrame { JPanel jp; int arc; // 각도 public CircleAnimation() { super("Circle Animation"); this.setSize(500, 500); this.setLocationRelativeTo(null); this.add(jp = new JPane..

Java/Swing 2022.08.16

Spring boot를 이용한 게시판 만들기 - 등록, 수정, 조회 API 만들기(3)

본격적으로 API를 만들기 전에 PostsRepository에 id를 기준으로 정렬하는 쿼리 함수 하나를 작성하도록 하겠습니다. public interface PostsRepository extends JpaRepository { @Query("select p from Posts p order by p.id desc") List findAllDesc(); } JPA에서는 함수명을 지을 때 키워드가 있으면 그 키워드에 맞게 자동으로 SQL을 짜줍니다. 예를 들면 함수명이 findByIdOrderByDateAsc(Long id)면 JPA에서 다음과 같은 쿼리를 만들어줍니다. SELECT * FROM [JpaRepository의 엔티티] WHERE id=?1 ORDER BY date ASC 하지만 이런 키워드..

Java/Spring 2022.06.06

Spring boot를 이용한 게시판 만들기 - 유저, 게시물 엔티티 및 리포지토리 만들기(2)

일단 시작하기 전에 패키지를 아래와 같이 나누도록 하겠습니다. domain 패키지: 엔티티 및 리포지토리 클래스가 있는 패키지 controller 패키지: 컨트롤러 클래스가 있는 패키지 dto 패키지: DTO 클래스가 있는 패키지 오늘은 엔티티 및 리포지토리 클래스를 만들도록 하겠습니다. 1. 유저 (Users) 엔티티 클래스에는 기본적으로 @Entity와 @Getter, 그리고 NoArgsconstructor 어노테이션을 사용합니다. @Entity: 이 클래스가 엔티티임을 정의함 @Getter: 말 그대로 getter 메소드를 정의함 @NoArgscontructor: 기본 생성자인데, 엔티티 클래스에서는 기본적으로 꼭 필요하다. User 클래스 package com.example.board.web.do..

Java/Spring 2022.05.25