반응형

Java 11

Java, Spring Boot, React 서버 생성 후 도메인 네임 연결 방법 (웹 서비스, war, 외장 톰캣, node.js, nginx, IpTime Port forwarding, 방화벽 설정) for window

spring boot, react 서버 생성 후 도메인 네임 연결 방법 (웹 서비스, war, 외장 톰캣, node.js, nginx, iptime, port 포워딩, 방화벽 설정) for window이번에는 도메인네임(Domain name) 접속을 통하여 WebServer -> WAS까지 전반적인 web service의 인프라 구축에 대해 포스팅 해보았습니다. (초간단 주의) 먼저 도메인네임의 경우 무료로 iptime을 이용하는 방법도 있지만, 직접 호스팅 업체의 도메인을 구매하여 발급 받은 후 연결하였습니다.  준비물은 다음과 같습니다.프로젝트:Spring Boot - API (API를 호출하여 동적으로 데이터를 주고 받을 때 사용하는 프로젝트)React - Front (실제 웹사이트 화면 프로젝트)..

Infra/Server 2024.05.15

Spring Boot, Java Web Socket을 활용한 웹 채팅 프로그램 만들기(HTML5, JavaScript, JQuery)

Spring Boot, Java Web Socket을 활용한 웹 채팅 프로그램 만들기 이번에는 간단하게 Web Socket을 이용하여 채팅 프로그램을 만드는 방법을 알아보도록 하겠습니다. 버전 정보는 다음과 같습니다.spring boot : 3.2.5java : 17web socket : 3.2.0UI, CSS: bootstrap chatting template 의존성 추가gradleimplementation group: 'org.springframework.boot', name: 'spring-boot-starter-websocket', version: '3.2.0' maven org.springframework.boot spring-boot-starter-websocket 3.2.0 ..

Back-End/Spring 2024.05.14

Java, Apache PDFBox를 이용하여 PDF 다루기

Java, Apache PDFBox를 이용하여 PDF 다루기Apache PDFBox 라이브러리를 이용하여 Java로 PDF 파일을 수정, 병합, 생성하는 API 가이드 포스팅을 시작 하겠습니다. 먼저 Maven 또는 Gradle 의존성을 추가 해 줍니다. 필자가 사용한 버전은 2.0.31 입니다. 3.x 버전의 경우, 2.x버전 때의 사용법이 다르게 변경되어 다른 부분이 많습니다. 이점 참고 부탁드리겠습니다! Maven org.apache.pdfbox pdfbox 2.0.31 Gradleimplementation group: 'org.apache.pdfbox', name: 'pdfbox', version: '2.0.31'  설정이 완료되었다면, 먼저 PDF 생성부터 알아보도록 하겠습니다...

Back-End/Java 2024.05.14

Java, HTML 코드 DOM 분석 시스템 만들기, Jsoup lib 및 URL Class 이용(웹 사이트 이미지 일괄 다운로드, Jsoup HTML DOM 분석)

Java, HTML 코드 분석기 만들기 간단하게 HTML 코드 분석기 프로그램을 만들어 보고자 합니다.여러가지 기능 중 이미지 다운로드 정도로 하여 진행 해 보도록 하겠습니다. 링크을 통해 jar파일을 다운로드 합니다. https://jsoup.org/ jsoup: Java HTML parser, built for HTML editing, cleaning, scraping, and XSS safetyjsoup: Java HTML Parser jsoup is a Java library that simplifies working with real-world HTML and XML. It offers an easy-to-use API for URL fetching, data parsing, extraction..

Back-End/Java 2024.05.14

Java SingleTon pattern(자바 싱글톤 패턴) 구현 및 설명

Java SingleTon pattern(자바 싱글톤 패턴) 구현 및 설명  먼저 싱글톤 패턴( SingleTon pattern )의 특징은싱글톤 패턴은 특정 클래스가 단 한번 인스턴스를 생성하여 사용하는 패턴 입니다.생성자를 여러번 호출 하더라도 하나의 인스턴스만 존재 해야 합니다.사용한 해당 Application에서는 동일한 인스턴스를 통하여 처리되게 됩니다.  사용하는 이유해당 서비스에서 인스턴스가 불필요하게 많이 사용되게 된다면, 많은 리소스 소모로 인해시스템이 느려지거나, 여러 예외 상황이 발생할 수 있습니다.대표적인 사용 방식의 예시로 커넥션 풀(Connection pool)이 있습니다.  장점을 알아보면유일한 인스턴스로 시스템의 자원 소모 관련으로 사용 자원을 절약하고, 생성 시간에 대한 비..

Back-End/Java 2024.05.14

Spring Boot, Java, JSP 게시판 만들기(댓글 입력, spring 설정, MVC, DB설정, MyBatis, SQL Mapper, Transactional, Ajax)

Spring Boot, JSP 게시판 만들기Spring Boot와 Gradle 및 JSP의 조합으로 간단한 게시판을 만들어 보겠습니다. 1. gradle 설정plugins { id 'java' id 'war' id 'org.springframework.boot' version '3.1.10' id 'io.spring.dependency-management' version '1.1.4'}group = 'com.spring'version = '0.0.1-SNAPSHOT'java { sourceCompatibility = '17'}configurations { compileOnly { extendsFrom annotationProcessor }}repositories { mavenCentral()}depen..

Front-End/JSP 2024.05.14

Java Xstream xml API 사용 중, ClassCastException 오류(Xstream, Classloader, Thread, Reflection, JVM)

어느날 업무를 보다가 Xstream xml로 처리되는 API 중, 데이터를 파싱하는 과정에서 ClassCastException이 발생하였다. 분명 동일한 DTO class와 같은 데이터 형태로 request를 받았는데 ex) DTO(data="abc", data2="cba") 익셉션이 발생되었다. Xstream class lib을 직접 확인 해 보니, Reflection으로 동작하는 것을 확인 할 수 있었다. Reflection의 경우 간단하게 말하자면, runtime에서 동적으로 특정 Class정보를 추출한다.이렇게 쓰라고 만든 것 처럼 동적 바인딩을 제공 하는데,왜 해당 오류가 발생한 DTO는 바인딩 되지 못했을까 생각 해 보았다. 일단 정리하면, runtime에 동적으로 클래스를 로딩 한다는건 JV..

Back-End/Java 2024.05.14

SpringBoot, Java, MyBatis, MSSQL 연동하기(Java, SQL Mapper, JDBC, JNDI, MyBatis 설정, Java DB연동)

SpringBoot X MyBatis X MSSQL 연동하기사용된 버전 규격은 다음과 같습니다.Java : 17 versionSpringBoot : 2.7 ver versionMyBatis : 3.x ver version 0. 의존성 추가 Gradle implementation 'org.mybatis.spring.boot:mybatis-spring-boot-starter:3.0.1' runtimeOnly 'com.microsoft.sqlserver:mssql-jdbc' 1. Configuration 만들기@Configuration@MapperScan(basePackages = "com.yungame.mvc.*") // , annotationClass = org.springframework.stereot..

Back-End/Spring 2024.05.14

Spring, Java 웹 사이트 세션(Session) 관리하기(웹 사이트 로그인 기능, 웹 사이트 session, 웹 로그인 처리)

Spring, Java 웹 사이트 세션(Session) 관리하기(웹 사이트 로그인 기능, 웹 사이트 session, 웹 로그인 처리)Spring, Java를 활용하여 웹 사이트의 Session을 관리하는 class를 작성하여 로그인 기능을 구현하는 방법에 대해 포스팅 하겠습니다. spring에서의 Session은?session은 클라이언트(브라우저)와 서버(웹 애플리케이션)의 소통으로 세션을 통해 서버는 여러 HTTP 요청에 걸쳐 특정 사용자에 대한 데이터를 유지할 수 있습니다.웹 애플리케이션에서 session은 주로 HTTP session을 통해 관리됩니다. 사용자가 Spring 기반 웹 애플리케이션에 액세스하면 해당 사용자에 대한 고유한 session 개체가 생성됩니다. 이 session 개체는 일반..

Back-End/Java 2024.05.14

Java 단방향 암호화(SHA-256) 데이터 만들기(로그인, 비밀번호 설정, 웹 사이트 로그인, 웹 서비스 로그인, 암호화)

Java 단방향 암호화(SHA-256) 데이터 만들기(로그인, 비밀번호 설정)Java 단방향 암호화 SHA-256을 이용하여 암호화 데이터를 만드는 방법에 대해 포스팅 작성 해 보겠습니다. 먼저 간략하게 SHA-256이 어떤 것인지와 속성 관련으로 설명하면 다음과 같습니다. SHA-256은 어떠한 것인가 ? SHA-256(Secure Hash Algorithm 256비트)은 SHA-2(Secure Hash Algorithm 2) 암호화 해시 함수 중 하나입니다. 임의 크기의 입력 데이터에서 일반적으로 16진수 문자열로 표시되는 고정 크기 256비트(32바이트) 해시 값을 생성합니다. ..

Back-End/Java 2024.05.14
반응형