본문 바로가기

웹개발37

Java IO 패키지 정리 3 - socket 통신 Java IO 패키지 정리 3 - socket 통신 자바 IO 패키지 예제 - git 자바 스레드 예제 - git [1]서버소켓 예제 서버 package sec07.exam01.server_socket; import java.io.IOException; import java.net.InetSocketAddress; import java.net.ServerSocket; import java.net.Socket; public class ServerExample { public static void main(String[] args) { // TODO Auto-generated method stub ServerSocket serverSocket = null; try { //서버 소켓 객체 생성 serverSo.. 2021. 3. 17.
Java IO 패키지 정리 2 - 보조스트림 Java IO 패키지 정리 2 - 보조스트림 InputStreamReader 예제 package sec05.exam01.support; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.Reader; public class InputStreamReaderExample { public static void main(String[] args) throws Exception { //콘솔에서 한글 입력받기 : 소스 스트림이 바이트 기반 스트림이지만. //데이터가 문자일 경우 사용할 수 있다. //Reader 와 Writer는 문자 단위로 입출력하기 때문에 바이트 기반 스트림보.. 2021. 3. 17.
Java IO 패키지 정리 1 Java IO 패키지 정리 1 자바 IO 패키지 예제 - git 자바 스레드 예제 - git FileInputStream 예제 1 package sec02.exam01.inputStream_read; import java.io.FileInputStream; import java.io.InputStream; public class ReadExam { public static void main(String[] args) throws Exception{ /* 바이너리 기반 입력 FileInputStream 객체의 read() 메소드 이용해서 파일의 문자 읽기 */ //while문 int whileCount = 0; //인풋 스트림 구하기 InputStream is = new FileInputStream("/U.. 2021. 3. 17.
jwt 토큰 - java로 생성하기 예제 jwt 토큰 - java로 생성하기 예제 1.스프링 프로젝트 생성 2.jwt 라이브러리 추가 io.jsonwebtoken jjwt 0.9.1 3.Utils 클래스 추가 JsonUtil.java import org.springframework.context.annotation.Bean; import org.springframework.stereotype.Component; import com.fasterxml.jackson.databind.ObjectMapper; @Component public class JsonUtil { @Bean public ObjectMapper objectMapper() { return new ObjectMapper(); } } JWTException.java public cla.. 2021. 3. 8.
JWT - JSON Web Token 이란 - 개념 JWT - JSON Web Token 개념 1. 전통적인 웹어플리케이션 기본 구조 문제점 1 - 이용자가 늘어나서 서버 등 장치를 더 늘려야 된다면? 클라이언트는 문제가 안된다. 웹어플리케이션도 문제가 안된다. Api server 도 스케일 아웃해서 늘리면된다. 문제는 Database 다. 스케일 아웃 해서 병렬처리 하면되는데, 비용이 많이 든다. 그래서 가장관리하기 귀찮은 데이터 베이스를 지울 수 있다면? 유저 데이터를 유저(클라이언트)가 직접관리하게 한다. 유저가 데이터를 볼 수는 있지만 수정은 불가능하다. 수정은 서버만 수정 할 수 있다. JWT를 이용한 웹애플리케이션 구조는 위와 같이 생겼다. 즉, 클라이언트에 필요한 유저 정보를 저장한다. 2.세션 기반 인증 방식 - (전통적인 방식) 서버가 인.. 2021. 3. 5.
썸머노트 기본 예제 썸머노트 기본 예제 이번포스팅에서는 아래와 같은 썸머노트 라이브러리를 이용해서 텍스트에디터를 셋팅하는 법을 알아보자. 1.라이브러리 참조 썸머노트는 부트스트랩을 기반으로 디자인되어있기 때문에, 부트스트랩 관련 css, js파일과 함께 썸머노트 js, css 파일을 같이 참조해준다. 2.썸머노트 불러오기 아래 코드를 이용해서 썸머노트를 불러오고. 작성 버튼을 누르면 썸머노트에 작성된 글이 콘솔로그에 찍히도록 로직을 작성한다. 게시판 설명을 간단하게 적어주세요. 작성 3.스크립트 작성 먼저 썸머노트에 값을 넣어주는 로직을 작성한다. 예를 들어 db에서 썸머노트에서 작성한 데이터를 불러왔다고 가정하고, 한번 썸머노트에 뿌려줘 보았다. 참고로 썸머노트에 글을 넣어줄때는 썸머노트를 초기화 하기 전에 값을 넣어줘야.. 2020. 12. 23.
스프링 프로젝트 개발할때 기본 화면구성 스프링 프로젝트 개발할때 기본 화면구성 스프링 프로젝트 개발할때마다 사용하는 기본 화면 구성이 있다. 헤더부분과 메뉴부분, 풋터부분을 나누는 작업이다. 개발 할때마다 자주 사용하게 될 것 같아서 정리해보았다. 디자인은 bootstrap을 사용했고, 화면은 jsp를 이용해서 구성했다. 상세화면 리스트화면 컨트롤러 특정 URL을 호출했을때 해당 페이지를 넘겨 주는 Controller 를 아래와 같이 작성한다. //상세보기 화면 @RequestMapping(value = "/bookDetail", method = RequestMethod.GET) public String bookDetail(Locale locale , HttpServletRequest request, Model model) { System.o.. 2020. 12. 22.
카카오 로그인 OAuth2.0 - 사용자 정보 조회 카카오 로그인 OAuth2.0 - 사용자 정보 조회 지난 포스팅에서는 인가 코드 그랜트 유형 방식으로 카카오 OAuth 2 로그인 인증을 진행했다. 카카오 개발자 사이트에 앱을 등록 후, 나의 웹브라우저에서 카카오 코드(태그)를 요청하고, 나의 서버로 응답받는 작업까지 진행을 했다. ✅카카오 로그인 OAuth2.0 이번 포스팅에서는 엑세스토큰을 요청하고, 받은 엑세스 토큰으로 나의 카카오 사용자 정보를 얻는 방법을 살펴본다. 3단계 - 코드(태그)로 엑세스 토큰 교환 지금은 상황에서 코드(태그)는 클라이언트 화면이 가지고 있고, 서버 세션에도 등록되어 있다. 우리는 클라이언트에서 코드를 넘겨 받을것이므로 컨트롤러에 코드 파라미터를 받아주는 로직을 작성해준다. 그 다음 Spring restTemplate .. 2020. 12. 8.
카카오 로그인 OAuth2.0 카카오 로그인 OAuth2.0 지난 포스팅에서 OAuth2.0에 대한 개념과 인증방식 유형에 대해서 살펴보았다. 이번 포스팅에서는 OAuth2.0 인증 프로토콜을 사용해서, 카카오 로그인을 구현해 보도록 하겠다. 인증 코드 그랜트의 예제로 구현해 보자. 인가 코드 그랜트와 암시적 코드 그랜트의 개념에 대해서 아직 이해가 안된다면 아래 포스팅을 참고하면 좋다. ✅OAuth2 인증 - 인가 코드 그랜트 ✅OAuth2 인증 - 암시적 코드 그랜트 인가 코드 그랜트 적용단계 1단계 - 클라이언트 애플리케이션 등록 2단계 - 코드(태그) 얻기 3단계 - 코드(태그)로 엑세스 토큰 교환 4단계 - 엑세스토큰으로 나의 정보 얻기 1단계는 스프링으로 만든 나의 앱을 카카오 개발자 사이트에 등록한다. 2단계는 클라이언트.. 2020. 12. 8.