본문 바로가기

Java38

[JAVA] 스레드로 일기장 자동 백업 프로그램 만들기 저번 게시글에 이어서, 오늘은 자바의 thread를 사용해서 사용자가 작성한 일기가 3초마다 디렉토리에 저장되도록 해보겠습니다. import java.io.*; import java.text.SimpleDateFormat; import java.util.Date; public class DiaryApp { // 일기를 저장할 디렉토리 경로 (코드를 실행하면, 이 프로젝트에 diaries 디렉토리가 자동으로 생성됩니다.) private static final String DIARY_DIRECTORY = "./diaries/"; // 메인 메서드 public static void main(String[] args) throws IOException { showMenu(); } // 메인 메뉴를 표시하는 메서.. 2023. 12. 13.
[Java] Java Swing으로 회원가입 & 로그인 프로그램 만들기(1) 안녕하세요, 이번 게시글에서는 간단한 회원 가입 프로그램을 Java Swing을 이용해 만들겠습니다. 이 예제에서는 사용자로부터 이름, 아이디, 비밀번호를 입력받아 txt파일에 저장합니다. 우선 시연영상입니다. 다음은 전체 코드입니다. import javax.swing.*; // 그래픽 사용자 인터페이스(GUI) 컴포넌트를 위한 라이브러리입니다. import java.awt.*; // GUI 디자인과 이벤트 처리를 위한 클래스들을 포함하고 있습니다. import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.BufferedWriter; // java.io.*: 파일 입출력 기능을 위한 라이브러리입니다. im.. 2023. 12. 8.
[JAVA] 일기장 관리 프로그램 만들기 오늘은 자바로 일기를 작성하고 컴퓨터에 파일로 저장한 후, 다시 불러와서 수정까지 가능한 프로그램을 만들어보겠습니다. import java.io.*; import java.text.SimpleDateFormat; import java.util.Date; public class DiaryApp { // 일기를 저장할 디렉토리 경로 (코드를 실행하면, 이 프로젝트에 diaries 디렉토리가 자동으로 생성됩니다.) private static final String DIARY_DIRECTORY = "./diaries/"; // 메인 메서드 public static void main(String[] args) throws IOException { showMenu(); } // 메인 메뉴를 표시하는 메서드 publ.. 2023. 12. 7.
[JAVA] Jdatepicker 사용해 캘린더 생성하고 날짜 선택하기 안녕하세요. 이번 포스팅에서는 jdatepicker 라는 라이브러리를 사용해 swing으로 캘린더를 생성하고 유저가 선택한 날짜를 표시하는 예제를 알려드리겠습니다. 우선 jdatepicker 라이브러리를 다운받습니다. 그런 다음 라이브러리를 설치해줍니다. project structure -> Modules→ 자바 프로젝트 클릭 → Dependencies → + 버튼 클릭 → JARs or directories 다음은 전체 코드입니다. import net.sourceforge.jdatepicker.impl.JDatePanelImpl; import net.sourceforge.jdatepicker.impl.JDatePickerImpl; import net.sourceforge.jdatepicker.impl... 2023. 11. 24.
[JAVA] 쿠키 세션 관리하기 오늘은 자바로 쿠키와 세션을 관리해보겠습니다. //SimpleHttpServer.java import com.sun.net.httpserver.HttpExchange; import com.sun.net.httpserver.HttpHandler; import com.sun.net.httpserver.HttpServer; import java.io.IOException; import java.io.OutputStream; import java.net.InetSocketAddress; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Random; import java.util.logging.Logger.. 2023. 11. 23.
[JAVA] Swing 라이브러리를 사용하여 디지털 시계를 만들기 안녕하세요. 이번 게시글은 Java에서 다중 Thread와 Swing을 이용해 현재 날짜, 요일, 시간을 띄우는 예제입니다. 아래는 시연영상입니다. 다음은 코드 설명입니다. ClockFrame: 이 클래스는 프로그램의 메인 GUI를 표시하는 창입니다. 여기서 우리는 현재의 시간과 날짜를 가져와서 그것을 기반으로 레이블을 설정합니다. 이렇게하면 프로그램이 시작될 때 현재 시간부터 시계가 시작됩니다. 각 시, 분, 초는 자신의 스레드에서 동작하여 정해진 간격마다 해당 값을 업데이트합니다. TimeRunnable: 이 클래스는 각 시, 분, 초를 업데이트하는 작업을 수행합니다. 스레드가 시작되면 run 메소드가 호출되며, 이 메소드는 무한히 실행되면서 정해진 간격마다 시간 값을 업데이트합니다. 주어진 time.. 2023. 11. 14.
[JAVA] HTTP로 이미지 업로드 및 다운로드 하기 오늘은 HTTP로 이미지 업로드 및 다운로드 하기를 진행해보겠습니다. import java.net.URI; import java.net.http.HttpClient; import java.net.http.HttpRequest; import java.net.http.HttpResponse; import java.nio.file.Path; import java.nio.file.Paths; public class SimpleHttpClient { // 클라이언트에서 이미지를 업로드하기 위한 경로 // Mac OS 기준입니다. 자신의 OS에 맞게 절대 경로를 수정해주세요. static String clientUploadServerPath = "/Users/컴퓨터이름/Downloads/client-upload-s.. 2023. 11. 13.
[JAVA] HTTP서버에 GET, POST 요청하기 저번 게시글 (https://stickode.tistory.com/957 ) 에 이어서 오늘은 클라이언트를 만들고, GET과 POST를 진행해보겠습니다. // HTTP 서버 구현 클래스 public class SimpleHttpServer { // 로거 인스턴스 생성 private static final Logger logger = Logger.getLogger(SimpleHttpServer.class.getName()); // 메인 실행 메서드 public static void main(String[] args) throws Exception { // 포트 8000에서 동작하는 HTTP 서버 인스턴스 생성 HttpServer server = HttpServer.create(new InetSocketAd.. 2023. 11. 4.
[JAVA] 간단한 HTTP서버 만들기 오늘은 간단한 HTTP서버 만들기를 해보겠습니다. 아래 코드를 실행한 후, 브라우저에서 아래 두 링크를 입력해봅니다. 글의 맨 아래 첨부한 이미지가 출력되면 정상적으로 서버가 운영되고 있는 것입니다. 자바는 17버전을 사용했습니다. http://localhost:8000/ http://localhost:8000/test // HTTP 서버 구현 클래스 public class SimpleHttpServer { // 메인 실행 메서드 public static void main(String[] args) throws Exception { // 포트 8000에서 동작하는 HTTP 서버 인스턴스 생성 HttpServer server = HttpServer.create(new InetSocketAddress(800.. 2023. 10. 25.