스프링8 [Spring] 로그인 처리 (1/2) - 쿠키(Cookie)와 세션(Session) 개발자(혹은 우리)가 로그인 기능을 구현할 때는 고려할 부분이 생각보다 많습니다.예를 들어, 로그인 페이지에서 아이디와 비밀번호를 서버로 전송했을 때, 서버에서 로그인을 처리하는 로직의 파악해야 하고, 이렇게 한 번 로그인 한뒤에는 동일한 클라이언트로부터 요청이 오면 이 로그인 상태가 유지되어야 합니다. 보통 이러한 로그인 상태는 쿠키(Cookie) 혹은 세션(Session)으로 관리를 하며 여기에 해당 키의 유효시간 관리를 통해 일정시간만 유지되도록 할 수 있습니다. 단순히 스프링 프레임워크를 공부 중이라면 아직은 관련없겠지만, 스프링 시큐리티라는 프레임워크로 로그인, 계층화 등 다양한 기능을 제공하지만 결국 이러한 스프링 시큐리티도 쿠키, 세션을 통해 관리하는 것이고 여러 리졸버를 이용합니다. 이번 .. 2024. 5. 27. [Spring] 메시지, 국제화 개념 및 적용방법 메시지우리가 개발을 하다가 만약 "상품명"이라는 글자를 "상품이름"이라고 고치고 싶다고 해봅시다.//addForm.html상품명 위 addForm.html 파일에 들어가서 상품명을 상품이름으로 바꿔주면 됩니다.HTML 파일에 하드코딩 되어 있기 때문에, 개발자가 직접 하나하나 바꿔주어야 하는 수고스러움이 있습니다. 위같이 한 개의 파일이 아닌, 1000개의 HTML 파일을 고쳐야한다면 아주 절망스러울 겁니다. 이런 다양한 메시지를 한 곳에서 관리하도록 하는 기능을 메시지 기능이라고 합니다. 예를 들어서 messages.properties 라는 메시지 관리용 파일을 만들고item=상품item.id=상품 IDitem.itemName=상품명item.price=가격item.quantity=수량 각 HTML들은.. 2024. 5. 23. [Spring] 싱글톤 패턴이란? 그리고 스프링에서의 싱글톤 싱글톤 패턴(Singleton Pattern)싱글톤 패턴(Singleton Pattern)은 객체지향 프로그래밍에서 자주 사용되는 디자인패턴입니다. 소프트웨어 디자인 패턴 중 하나인 싱글톤 패턴의 핵심은 클래스의 인스턴스를 딱 하나만 생성하여 애플리케이션 전체에서 공유한다는 것입니다. 생성자가 여러 번 호출이 되더라도 실제로 생성되는 객체는 하나이고 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체를 리턴합니다. 이런 싱글톤 패턴을 사용하면 메모리 사용을 줄일 수 있으며, 데이터의 공유가 편해집니다. 이 글에서는 싱글톤 패턴이 무엇인지 그리고 자바를 이용하여 싱글톤을 구현해보고 장단점을 보겠습니다.스프링에서 싱글톤 패턴을 어떻게 사용하는지까지 예제와 그림을 통해서 완벽하게 이해하는 시간을 .. 2024. 4. 25. [Spring] 빈 생명주기 콜백 - 꼬리에 꼬리를 물고 완벽 이해하기 빈 생명주기 콜백프로그램을 작성하면서 우리는 데이터베이스 커넥션 풀이나, 네트워크 소켓처럼 애플리케이션 시작 시점에 필요한 연결을 미리 해두고, 애플리케이션 종료 시점에 연결을 모두 종료하는 작업을 진행하려면, 객체의 초기화와 종료 작업이 필요하다. (Ex: 커넥션 풀의 connect & disconnect) 이해를 돕기 위해 네트워크에 연결하는 동작을 표현하는 NetworkClient 예제 클래스를 보겠습니다. NetworkClientpublic class NetworkClient { private String url; public NetworkClient() { //NetworkClient를 생성하면 생성자가 호출된다. System.out.print.. 2024. 4. 24. [Spring] 스프링과 스프링부트(Spring Boot) 이 글에서는 초보자 관점으로 이해하기 쉽게 스프링과 스프링 부트에 대해서 알아보도록 하겠습니다. 저 뿐 아니라 많은 분들이 스프링(Spring)과 스프링 부트(Spring Boot)의 차이점을 잘 모르고 사용하는 경우가 있습니다. 그 차이점과 장점 등등 이 글을 통해 완벽하게 이해할 수 있게 될 것입니다. 우선 Spring과 Spring Boot는 모두 스프링 프레임워크를 기반으로 한 자바 웹 개발 프레임워크입니다. 하지만, 둘 간에는 몇가지 차이점이 존재합니다. 스프링(Spring) Spring은 스프링 프레임워크의 핵심 모듈을 모아서 만든 프레임워크입니다. 우리가 흔히 말하는 스프링은 여러 가지 관점에서 사용하고 있는데요. 스프링 생태계 자체를 스프링이라고 얘기하는 경우도 있고, 스프링 프레임워크를 .. 2024. 4. 20. [Spring] IoC(제어의 역전)와 DI(의존성 주입)의 완벽 이해 IoC(Inversion of Control) IoC란 제어의 역전이라는 의미로 메서드나 객체의 호출 작업을 개발자가 결정하는 것이 아닌 외부에서 결정하는 것을 의미합니다. 간단히 말해, "제어의 흐름을 바꾼다" 라고 합니다. 객체의 의존성을 역전시켜 객체 간의 결합도를 줄이고 유연한 코드를 작성할 수 있게 하여 가독성 및 코드 중복, 유지보수를 편리하게 할 수 있게 해줍니다. 아래 코드와 같이 A 클래스는 B 클래스를 직접 생성하고 있으며, A 객체가 생성되면 B 객체도 같이 생성되고 있습니다. 이 방법은 A 객체가 B 객체를 new 생성자를 통해 직접 생성하는 방법입니다. class B { // B 클래스의 구현 내용 } class A { private B b; public A() { b = new.. 2024. 3. 20. 이전 1 2 다음 반응형