전체 글 17

[Java] 반복문(for, while, do-while, 향상된 for) 및 제어(break, continue)

자바(Java)에서 반복문은 특정 코드를 여러 번 실행할 때 사용됩니다. 자바에는 세 가지 주요 반복문과 이들을 제어하는 키워드가 있습니다. 아래에 각각을 설명드릴게요.자바 반복문의 종류1. for문반복 횟수가 정해져 있을 때 사용.for (int i = 0; i 의미: i가 0부터 시작해서 4까지 반복 (총 5회).2. while문조건이 참일 동안 반복. 조건을 먼저 검사함.int i = 0;while (i 3. do-while문먼저 실행하고 나중에 조건 검사. 무조건 한 번은 실행됨.int i = 0;do { System.out.println("i = " + i); i++;} while (i 4. 향상된 for문 (Enhanced for loop)배열이나 Collection(예: List,..

Java 2025.06.12

[Windows] 매번 까먹는 실행중인 포트 죽이기(taskkill)

Vscode에서 스프링부트를 실행하다 gradle에서 오류가 나오면서 실행은 중단되었다.다시 실행을 해보려고 하는데...Web server failed to start. Port 8050 was alreay in use....이미 실행중...이럴경우 포트를 죽이고 다시하면 해결되는데 매번 까먹는다.Vscode 터미널에서# 현재 모든상태의 모든포트 확인C:\users\ssucodelab> netstat -a -o# PID 프로세스 종료C:\users\ssucodelab> taskkill /f /pid 57540성공: 프로세스(PID 57540)가 종료되었습니다.

Windows, Mac, Linux 2025.06.12

[Java] 톰캣서버 2개 프로젝트 설정

톰캣서버에서 운영과 개발 프로젝트 2개의 프로젝트를 실행해야하는 일이 생겼다.각 프로젝트의 server.xml파일만 수정하면 되는 간단한? 일이였다.1. 설정을 추가하기 위해 설정파일 접근하여 열기vi /app/real/conf/server.xml vi /app/dev/conf/server.xml 2. 운영 프로젝트 등록 ... 운영 프로젝트는 8090 포트를 설정하였다.3. 개발 프로젝트 등록 ... 개발 프로젝트는 8091 포트를 설정하였다.3. 서비스 실행하기/app/rea..

Java 2025.05.22

SKT 해킹? 유심 교체? 교체하면 연락처 사진정보 지워지나?

큰일이 일어나긴 났나보다.SK텔레콤 임원들이 나와 사과를 하는 일이 벌어졌다. 이제 뭐부터 해야 하지?일단 지인이 알려준 SK텔레콤 유심 무료 교체 신청을 해야겠다.그리고 유심보호서비스도 가입하자.. 무료이니 부담이 없다. https://care.tworld.co.kr/usim/ 유심 무료 교체 신청 care.tworld.co.kr 잠깐! 그런데 유심을 변경하면 연락처, 사진, 카톡 메시지 등의 정보들 까지 지워지나? 결론은 유심은 단순 가입자 정보를 확인하는 역할을 하는 식별장치로 변경해도 정보는 지워지지 않는다.하지만 간혹 유심에 전화번호가 저장되는 경우도 있으니 확인은 필요하다.

일상 2025.04.28

[Spring Boot] 스프링부트 디렉토리 구조와 역할

1. 구조Spring Boot는 목적에 따라 패키지를 따로 생성해서 프로젝트를 관리합니다.ControllerDTOServiceRepositoryModel2. 역할Model(또는 Domain 또는 Post … )테이블의 필드가 DB에서 매핑하는 역할을 담당합니다.DTO가 들어있습니다.어노테이션은 Entity, Id, Column, Builder 등이 있습니다....@Entity@Table(name = "user")public clsss Users { @id @GeneratedValue private Long id; @Column private String name; @Column prviate String password; @Builder public Users(String name, St..

Java 2025.04.15

[Spring Boot] 빌드실패 - java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field 'com.sun.tools.javac.tree.JCTree qualid'

다른 팀원이 개발한 프로젝트를 Git 에서 내려받아서 소스수정후 빌드를 진행하였다.FAILURE: Build failed with an exception. ??? 빌드 실패 ??? 해결법은 간단했다. 호환되지 않는 lombok 버전때문이라고 한다. 호환 최소버전 1.18.30으로 변경하니 되더라~-- 기존 compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' -- 변경 compileOnly 'org.projectlombok:lombok:1.18.30' annotationProcessor 'org.projectlombok:lombok:1.18.30'

Java 2025.04.14

[Java] 문자열에서 특정문자가 있는지 검색(indexOf, constains, matches)

1. indexOf - 문자나 문자열로 특정위치 찾기있으면 index 위치, 없으면 -1 반환public class test { public static void main(String[] args) { String text = "Hello! Java"; System.out.println(text.indexOf("Java")); // 문자열로 검색 System.out.println(text.indexOf("Java", 5)); // 5번째 인덱스부터 Java란 문자로 검색 if (text.indexOf("Java") != -1) { // 해당 문자열이 있다면 System.out.println(test..

Java 2025.04.14

[CodeIgniter] SQL Injection 방지

SQL Injection(sql 삽입 공격)이란?악의적인 사용자가 임의의 SQL문을 주입하여 말 그대로 그 SQL로 데이터베이스가 비정상적인 동작을 하도록 조작하는 행위취약한 Queryfunction getUserById($id) { $sql = "SELECT * FROM users WHERE id=$id;"; $query = $this->db->query($sql); return $query->result();}해결방법기본적으로 CodeIgniter 의 ActiveRecord 를 사용, 사용이 불가할 경우 $this->db->escape 를 권장합니다.ActiveRecord자동으로 보호 처리가 됨.https://www.codeigniter.com/userguide2/database/ac..

PHP 2025.04.08