단순 코드 기록/Spring

Spring_Filter

일일일코_장민기 2024. 2. 13. 12:20
728x90
Controller
package com.app.test;

import javax.servlet.http.HttpSession;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

@Controller
public class TestController {

	@RequestMapping(value =  "xxx", method = RequestMethod.GET)
	public String loginForm(LoginDTO dto) {
		System.out.println("login - loginForm - GET" + dto);
		return "loginForm";
	}

	
	
	@RequestMapping(value =  "/login", method = RequestMethod.GET)
	public String login1(LoginDTO dto) {
		System.out.println("login1 - loginForm - GET" + dto);
		return "login";
	}

	
	//post 방식 한글 처리 --> filter 처리 web.xml에서 처리함
	@RequestMapping(value =  "/login", method = RequestMethod.POST)
	public String login2(LoginDTO dto, HttpSession session) {							//자동으로 request.SetAttribute("loginDTO", "dto")
		System.out.println("login2 - loginForm - POST" +dto);
		session.setAttribute("login", dto);
		return "login";																	//자동으로 데이터 fowarding
	}
	
	
	
}

 

web.xml

 

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee https://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

	<!-- The definition of the Root Spring Container shared by all Servlets and Filters -->
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>/WEB-INF/spring/root-context.xml</param-value>
	</context-param>
	
	<!-- Creates the Spring Container shared by all Servlets and Filters -->
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>

	<!-- Processes application requests -->
	<servlet>
		<servlet-name>appServlet</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
		
	<servlet-mapping>
		<servlet-name>appServlet</servlet-name>
		<url-pattern>/</url-pattern>
	</servlet-mapping>
	
	<!-- post 한글 처리  -->
  <filter>
    <filter-name>filter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>utf-8</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>filter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
	

</web-app>

 

login_jsp

 

<%@page import="com.app.test.LoginDTO"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>

out.print: 
<%
	LoginDTO dto = (LoginDTO)request.getAttribute("loginDTO"); 
	String name = dto.getUserid();
	out.print(name);
%><br>
request.getAttribute: <%= dto %><br>
scope:	${sessionScope.login} / ${sessionScope.login.userid} / ${sessionScope.login.passwd}<br>
el태그: ${login} / ${login.userid} / ${login.passwd}

</body>
</html>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'단순 코드 기록 > Spring' 카테고리의 다른 글

Spring_returnType  (0) 2024.02.13
Spring_Redirect  (0) 2024.02.13
Spring_ViewerParsing  (0) 2024.02.13
Spring_Cookie  (0) 2024.02.13
Spring_Parsing  (0) 2024.02.08