반응형

개발 지식 60

[JSP] GET과 POST 차이와 비교

클라이언트가 서버로 요청을 보내는 방법인 HTTP Method에는 크게 보자면 2가지 방식인 GET방식과 POST방식이 있다. 그래서 오늘은 GET방식과 POST방식 차이와 비교를 해보겠습니다. GET 이란? 먼저 GET하면 어떤것이 떠오르시나요 바로 어떠한걸 가져오는것이 떠오르지 않나요? GET 방식은 마치 우리가 필요한 정보를 얻기위해서 도서관에 책을 빌려오는 상황과 매우 유사하며 조금더 자세하게 말하자면 GET 방식은 어떠한 정보를 가져와서 조회하는 방식입니다. ⭐ GET방식의 특징 1. 캐싱이 가능하다. 2. URL에 변수 및 데이터를 포함시켜 요청 할 수 있다. 3. 데이터를 Header에 포함하여 전송한다 4. URL에 데이터가 노출되기 때문에 보안에 취약하다. 5. 데이터를 URL에 넣기 때..

Back-End/JSP 2021.06.25

[Spring] 스프링 Security 게시판 및 파일첨부 예제

[Spring] 스프링 Security 로그인 예제 [Spring] 스프링 Security 사용이유와 설정 방법을 알아보자 spring security 란 ? Spring 기반의 애플리케이션의 은증과 권한, 인가 등의 보안을 담당하는 스프링 하위 프레임 워크이다. 처리 방법으로는 Fi soulno.tistory.com src/main/java/com/mycom.myapp/ BoardController.java 파일경로 및 insert 하기 package com.mycom.myapp; import java.io.File; import java.io.IOException; import java.util.List; import java.util.UUID; import javax.servlet.http.Http..

Back-End/Java 2021.06.24

[Spring] 스프링 Security 로그인 예제

[Spring] 스프링 Security 사용이유와 설정 방법을 알아보자 spring security 란 ? Spring 기반의 애플리케이션의 은증과 권한, 인가 등의 보안을 담당하는 스프링 하위 프레임 워크이다. 처리 방법으로는 Filter 흐름에 따라 처리하고 있으며 특히 Spring Security는 보 soulno.tistory.com JUnit src/test/java/com.my.com.myapp/ MemberTest.java package com.mycom.myapp; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; import javax.sql.DataSource; impor..

Back-End/Java 2021.06.24

[Spring] 스프링 AOP 개념과 특징을 알아보자

AOP (Aspect Oriented Programming) 이란? 어떠한 로직의 기준으로 핵심적인관점, 부가적인 관점으로 나누어서 보며 그 관점 기준으로 각각 모듈화하는것을 말한다. 한마디로 핵심적인 비즈니스 로직에서 분리하여 재사용하는것이며 이러한 사용덕분에 관점지향 프로그래밍이라고 불린다. ⭐ AOP (Aspect Oriented Programming) 개념 Aspect : AOP의 기본 모듈이다. Target : 핵심 기능을 담고있으며 타겟은 부가기능을 부여하는 대상이 된다. Advice : Target에 제공하는 부가기능을 담고있는 모듈이다. JoinPoint : Advice가 적용되는 위치를 말한다. PointCut : Advice를 적용하는 Target의 메서드를 선별한다. ⭐ AOP (As..

Back-End/Java 2021.06.24

[JWT] JSON Web Token 개념과 구조를 알아보자

JWT (JSON Web ToKen) 이란 ? 자가수용 방식으로 정보를 더욱 안정성있게 전달해주고 사용자에 대한 속성을 저장한다. 여기서 자가 수용적(Self-Contained)란 토큰에 대한 정보, 전달할려는 정보, 토큰 검증이 되었다는 증명해주는 서명을 포함하고 있습니다. 그래서 주로 JWT 토큰은 유저가 로그인을 하게되면 서버는 유저의 정보에 기반한 토큰을 발급하여 유저에게 전달해주고 토큰이 유효하고 인증이 되었는지 검증을 하는 로그인에 많이 사용됩니다. JWT (JSON Web ToKen) 구조 ① 헤더 (Header) 토큰의 타입을 지정한다. 해싱 알고리즘을 지정하며 주로 RSA가 사용된다. ② 정보(Payload) 토큰에 담을 정보가 들어가 있습니다. 여기서 담는 정보의 한 조각을 클레임(Cl..

Back-End/Java 2021.06.23

[Spring] 스프링 Security 사용이유와 설정 방법을 알아보자

spring security 란 ? Spring 기반의 애플리케이션의 은증과 권한, 인가 등의 보안을 담당하는 스프링 하위 프레임 워크이다. 처리 방법으로는 Filter 흐름에 따라 처리하고 있으며 특히 Spring Security는 보안과 관련해 많은 옵션을 제공해주기 때문에 개발자입장에서는 보안관련 로직을 작성하지 않아도 되는 장점을 가지고 있다. spring security 프로젝트 생성 ※ 참고로 저의 버전은 java => 1.8 springframework => 5.2.15 servlet => 3.1버전으로 사용하였습니다. Spring Security 프로젝트 설정 https://mvnrepository.com/ 메이븐사이트에서 라이브러리를 받아오고 pom.xml에 저장한다. 1. spring-..

Back-End/Java 2021.06.23

[React] 리액트 redux 예제를 통해 알아보기

① React redux 란 ? Flux 개념을 바탕으로 하여 State 관리 라이브러리이다. 그래서 React는 컴포넌트에서 관리를 하지만 Redux 라이브러리를 사용하게 된다면 store에서 상태를 관리를 해주기 때문에 React Component에서 보여주기만 하는 용도로 사용이 되고 있다. ② redux 장점 웹 사이트 상태관리를 고민할 필요가 없다. state에서 쉽게 저장하고 불러올 수 있다. 읽기 전용으로만 취급하기 때문에 이전 상태로 돌아가고 싶다면 덮어쓰면 된다. 상태 변경을 전송할 수 있도록 자바스크립트 객체로 구성을 강제로 부여한다. ③ redux 단점 강제하는 방식때문에 반대로 코드가 복잡해 질 수 있어서 개발자에게 제약이 발생한다. ④ redux 예제 ※ 1. 우선 라이브러리를 다..

Front-End/React 2021.06.20

[React] 리액트 코드분할 이유 및 예제

① React 코드 분할을 하는 이유는? 사용자가 웹 페이지를 접속을 하여 main.js 파일이 로드가 된다면 프로젝트 파일이 크면 클수록 로드하는 시간이 많이 걸리고 퀼리티가 저해될 수 있기 때문이다. 그래서 main.js를 여러 파일로 나누어서 용량을 줄일려고 코드 분할을 한다. ② 코드 분할의 방법은? bundler가 설치되어야 한다. 여기서 bundler는 파일을 하나로 병합한 번들 된 파일을 웹 페이지를 포함해 한번에 전체 앱을 로드시켜준다. ③ bundler 예제 App.js import Top from './components/Top'; import Bottom from './components/Bottom'; import './App.css'; import { useState } from ..

Front-End/React 2021.06.19

[React] 리액트 JSX 문법정리 및 const, let, var 차이를 알아보자

JSX 문법 정리 ① return에는 하나의 엘레멘트만 담을 수 있다. ② const, let, var 1. const : 한번 선언된 상수는 다시 재정의 할 수 없다. const good='good'; hello='change good'; // 오류 const good ='good!'; { const good = 'inner good!'; console.log(good); // inner good! } console.log(good); // good! 괄호안에 good을 선언하였고 const의 scope은 괄호 블록 안에 있기 때문에 괄호를 벗어나 바깥에 good 상수를 선언할 수 있다. 2. let : 선언해도 값이 재정의가 가능하다. let good ='first good'; // first goo..

Front-End/React 2021.06.16
반응형