전체 글 161

[Java] 제2장 Java 기본 문법

1. 단원 요약 /**으로 시작하는 주석은 javadoc 문서이다. 소스코드 맨 위에 작성하며, 클래스에 대한 설명을 기술한다. 달러 사인($)도 식별자로 사용할 수 있다. 고정값(상수값)을 "리터럴"이라 부른다. 식별자는 camel case로, 클래스 이름은 pascal case로 표현한다. (camelCase/PascalCase) 상수는 대문자 snake case로 표현한다. (SNAKE_CASE) 특정 자료형 값을 저장하는 변수를 기본형 변수라 한다. (boolean/byte=char/short/int/float/long/double) char 타입은 2바이트로써, '\u0000'부터 '\uffff'까지 표현할 수 있다. 객체가 위치한 주소를 저장하는 변수를 참조현 변수라 한다. 작은 자료형에서 큰..

[Java] 제1장 Java와 객체지향 프로그래밍

1. 단원 요약 특정 클래스의 인스턴스를 객체라 한다. 기존 클래스를 이용하여 새 클래스를 정의하는 것을 상속이라 한다. 기존 클래스는 슈퍼 클래스, 베이스(기반) 클래스, 상위 클래스, 부모 클래스 등으로 부른다. 상속을 통해 정의된 클래스는 서브 클래스, 파생 클래스, 하위 클래스, 자식 클래스 등으로 부른다. 2. 연습문제 요약 Java에는 포인터 관련 문법이 없다. JVM, System Library등을 통틀어 "Java 플랫폼"이라 한다. Java 소스 파일에 public 클래스가 존재하면, 해당 파일의 이름은 그 클래스의 명칭과 동일해야 한다. Java 소스 파일에 다수의 클래스가 존재하면, 컴파일 시 각 클래스에 대응하는 다수의 .class 파일이 생성된다.

2023년 제2회 정보보안기사/산업기사 시험 일정

필기 원서접수: 5.31 ~ 6.3 검정일: PBT 6.17, CBT 6.19 ~ 6.27 합격발표: 6.29 실기 원서접수: 7.3 ~ 7.6 검정일: 7.29 ~ 8.13 합격발표: 8.31 참고 연간시험일정 | KCA 국가기술자격검정 (cq.or.kr) https://www.cq.or.kr/qh_quagm03_001.do 실기 서울(3), 북서울(2), 부산(2), 경남(-), 경기(1), 인천(2), 대전(3), 충북(-), 광주(3), 전남(1), 대구(1), 경북(-), 강원(3), 전북(2), 제주(1) 24개 제2회 필기 서울(5), 북서울(2), 부산(1), 경남(1), 경기(1), 인 www.cq.or.kr

Certifications 2023.04.25

Windows 패키지 관리자 "winget"으로 Git 설치하기

언제부턴가 winget이라는 프로그램이 윈도우에 기본 탑재되었습니다. 오늘 처음 사용해 봤는데 굉장히 편하고... 편합니다. 서버 관리나 개발 등의 이유로 리눅스를 사용해오신 분들께는 '패키지 관리자'라는 개념이 당연하게 여겨질 수도 있겠습니다. 레드햇 계열은 rpm, 데비안 계열은 dpkg, 거기에 더해서 yum, dnf와 apt를 자연스럽게 사용하고 있었을 것입니다. winget을 통해서 MS 스토어, 그리고 aka.ms/winget에 수록되어 있는 무료 프로그램을 마치 yum이나 apt를 사용하듯 설치할 수 있습니다. 패키지 검색은 winget search [검색어], 설치는 winget install [이름 또는 ID] 하면 됩니다. 기본적으로 MS 스토어와 aka.ms/winget에 커밋되어 있..

Nessus/Tenable.sc (구 SecurityCenter) 디스크 공간 확보 방법

리포트 삭제 리포트별 크기 확인 (du -h -d 1 /opt/sc/orgs//VDB/) 'Scans' - 'Scan Results'로 가서 확인한 리포트 삭제 로그 삭제 systemctl stop SecurityCenter 로그 파일별 크기 확인 (du -h -d 1 /opt/sc/admin/logs) 불필요한 로그 삭제 systemctl start SecurityCenter Nessus 코어 덤프 삭제 ls -lhS /core.* rm /core.* 참고 https://community.tenable.com/s/article/Free-up-disk-space-in-Tenable-sc-Formerly-SecurityCenter

비영업용 승용차 자동차세 계산법(2023)

자동차세는 시/군에 납부하는 지방세입니다. 연간 세액을 반으로 나누어 반기에 한 번 납부하며, 한 번에 선납(연납)도 가능합니다. 아래는 자동차세 계산 방법입니다. 비영업용 전기차는 출력과 상관없이 10만원 입니다. (배기량) * (배기량당 세액) * (할인율) * 1.3 [예시 1] 2023년 자동차세 1월 연납, QM6, 1997cc, 2017년 12월 생산 (차령 5년) 1997 * 200 * 0.9 * 0.9085 * 1.3 = 424,540원 [예시 2] 2023년 자동차세 1월 연납, 아반떼, 1598cc, 2020년 12월 생산 (차령 2년) 1598 * 140 * 0.9085 * 1.3 = 264,225원 [예시 3] 2023년 자동차세 1월 연납, 캐스퍼, 998cc, 2021년 12월 ..

일상 2022.12.29

JPA(Java Persistence API) 개념 정리

ORM(Object-Relational Mapping) 기술 일반적인 애플리케이션은 RDBMS에 데이터를 저장하고 가져오는 기능을 가집니다. 그런데 자바 객체를 DB에 저장하려면 JDBC를 통해 테이블 속 레코드로 저장해야 하고, 반대로 테이블에 저장된 레코드를 사용하려면 레코드를 읽어와서 다시 자바 객체로 변환하는 코드가 각 객체마다 필요하게 됩니다. 이처럼 RDBMS와 객체지향 코드 간의 설계 원칙이 다르기 때문에, 이 둘을 매핑하여 객체지향 코드를 작성하는 데 집중할 수 있도록 도와주는 ORM 기술이 생겨났습니다. (Wikipedia ORM 참고자료) 예를 들면, Java SE에 포함되어 있는 JDBC(Java DataBase Connectivity) API를 사용해서 아래처럼 작성한 코드를 Str..

Spring Boot 웹 개발: 시작하기 전에 알아 둘 배경지식

Model 1과 Model 2 아키텍처 웹 애플리케이션의 설계 패턴에는 Model 1과 Model 2(=MVC 패턴)이 있습니다. 저는 JSP를 처음 접했을 때 JSP 파일 내에 화면 표시부터 로직, JDBC와 SQL을 전부 때려박아서 간단한 게시판 기능을 만들었던 적이 있습니다. 그 때는 제가 웹 개발에 손을 댈 생각이 없었기 때문에 그대로 과제물로 제출했던 기억이 납니다. 아무튼, Model 1은 JSP에서 비즈니스 로직 부분을 자바 빈 클래스로 분리하여 개발하는 패턴입니다. 이렇게 하면 프레젠테이션 로직은 JSP와 HTML로, 비즈니스 로직은 자바 빈으로 구현하여 코드의 유지보수성과 재사용성이 좋아집니다. 예를 들어서, 현재 시각을 출력하는 자바 빈을 만들고, 그 기능이 필요한 모든 JSP 페이지에..