코드스키

고정 헤더 영역

글 제목

메뉴 레이어

코드스키

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 소개
  • 분류 전체보기 (37)
    • 보안 (12)
    • 일상 (0)
    • 게임 (0)
    • 스키 (1)
      • 스키장비셋업 (1)
    • 개발 (10)
    • 환경설정 (8)
    • 학습·과제 (5)
    • 행사·후기 (1)

검색 레이어

코드스키

검색 영역

컨텐츠 검색

Java

  • 바이브코딩으로 만든 중고거래 서비스를 제출 가능한 수준까지 보안 강화하기

    2026.07.27 by 코드스키

  • 터미널에서 Java 컴파일하기 (javac -d bin과 패키지 디렉토리 구조)

    2026.07.24 by 코드스키

  • 사각형 충돌 판정에서 원 충돌까지 (AABB의 원리와 일반화)

    2026.07.24 by 코드스키

  • Java `public static void main(String[] args)` 진짜 의미 + Scanner 입력받기

    2026.07.24 by 코드스키

바이브코딩으로 만든 중고거래 서비스를 제출 가능한 수준까지 보안 강화하기

시큐어코딩 수업 과제로 중고거래 플랫폼을 만들었다. 처음엔 AI한테 대충 시켜서 빠르게 굴러가는 걸 만들었는데(요즘 말로 바이브코딩), 막상 제출하려고 다시 보니 "이거 그대로 내면 안 되겠다" 싶은 게 잔뜩 보였다. 최소 요구사항은 채웠지만 보안 약점이 여기저기 있었고, UI와 문서도 대충 짜맞춘 티가 났다. 그걸 하나씩 뜯어고쳐 제출 가능한 상태로 만든 과정이다.스택과 최초 상태기본 구성은 Spring Boot 3, Java 21, Thymeleaf, Spring Security, JPA다. 상품 등록·조회, 사용자, 관심상품, 그리고 CarrotCoin이라는 모의 지갑 기능이 있었다. 지갑은 실제 가상자산 연동이 아니라 모의 결제 흐름이다.핵심 기능은 슬라이드의 최소 요구사항 대비 대체로 구현돼 있..

개발 2026. 7. 27. 15:11

터미널에서 Java 컴파일하기 (javac -d bin과 패키지 디렉토리 구조)

javac -d bin과 Java 패키지 구조 대표 이미지평소에 IntelliJ로 자바를 짜다 보니 빌드 버튼만 눌렀지 안에서 무슨 일이 일어나는지는 몰랐다. 그런데 과제 제출 형식이 .java 파일만 압축해서 올리는 거라서, IDE 없이 터미널에서 컴파일하고 실행까지 되는지 미리 확인해야 했다. 이 김에 javac/java 명령을 제대로 정리해두기로 했는데, 함정이 두 개 있었다. 하나는 package 선언이 들어가면 디렉토리 구조가 그거랑 일치해야 한다는 거고, 다른 하나는 -d 옵션으로 출력 디렉토리를 따로 지정하는 패턴이었다. 처음에는 error: file not found만 계속 떠서 30분을 날렸다.제일 단순한 경우패키지 선언 없는 한 파일짜리부터 보면 이렇다.// Hello.javapubli..

개발 2026. 7. 24. 07:44

사각형 충돌 판정에서 원 충돌까지 (AABB의 원리와 일반화)

AABB와 원 충돌 판정 대표 이미지Java 실습 문제 중에 이런 게 있었다. 2차원 평면에서 두 점 (x1, y1), (x2, y2)로 만들어지는 직사각형이 (100, 100), (200, 200)으로 이루어진 직사각형과 충돌하는지 판별하라는 문제. 답은 맞췄는데, 풀고 나서 같은 로직을 원 대 원으로 일반화해보고 싶어졌다. 두 케이스의 공통 원리를 알면 원-사각형처럼 다른 조합도 다 풀린다는 걸 이번에 이해했다. 게임 개발에서 진짜 자주 쓰는 개념인데 처음 직관이 안 잡히면 의외로 헤매기 쉬운 부분이다.AABB 사각형 충돌AABB, Axis-Aligned Bounding Box는 축에 평행한 사각형을 말한다. 회전 없이 가로세로 축에 딱 맞춰진 사각형이라는 뜻이고, 게임에서 제일 흔한 충돌 모양으로 ..

개발 2026. 7. 24. 07:43

Java `public static void main(String[] args)` 진짜 의미 + Scanner 입력받기

Java main 시그니처와 Scanner 입력 대표 이미지Java 실습 첫날, IntelliJ에 코드를 짜다가 두 번째 줄에 빨간 줄이 그어졌다. 디버깅도 안 됐다. 살펴보니 static void main(String args[])라고 적어놓고 public을 빠뜨린 게 원인이었다. 그동안 그냥 외워서 쓰던 public static void main(String[] args)인데, 다섯 단어나 되는 이 한 줄에서 각 단어가 왜 거기 있어야 하는지 한 번도 제대로 생각해본 적이 없다는 걸 그때 깨달았다. C를 다루다가 Java로 넘어오니 더 헷갈렸다.한 단어씩 뜯어보면public static void main(String[] args) { // ...}public부터 보자. JVM이 이 메서드를 클래..

개발 2026. 7. 24. 07:43

추가 정보

인기글

최신글

페이징

이전
1
다음
GitHub LinkedIn RSS
코드스키 © 2026 코드스키
트위터

티스토리툴바