사용자 입력 데이터 얻어오기(파라미터) - @RequestParam
·
Framework/SPRING FRAMEWORK
@RequestParam public String xxx (HttpServletRequest request) { String id = request.getParameter("userid"); 👇👇👇 public String xxx(@RequestParam("userid") String userid) { } public String xxx(@RequestParam String userid) { } // 요청파라미터명 생략 가능 LoginDTO dto = new LoginDTO(); dto.setUserid(request.getParameter("userid")); 👇 public String xxx(LoginDTO dto) { } // tag의 name값과 LoginDTO의 변수명이 반드시 일치해야 된다...
사용자 입력 데이터 얻어오기(파라미터) - HttpServletRequest방식 & POST 한글처리
·
Framework/SPRING FRAMEWORK
이전 서블릿 Public class TestServlet extends HttpServlet { //상속받아야함 public void doGet (HttpServletRequest request, HttpServletResponse response) { String id = request.getParameter(”userid”); String [ ] v = request.getParameter(”hobby”); } } Spring 에서는 Controller 클래스의 특정 메서드에서 처리가 다양한 방법이 제공된다. @GetMapping(”/xxx”) public String xxx( ) { //사용자 입력 데이터 얻기 } ⇒ POJO 기반이기 때문에 메서드의 파라미터 영역에는 마음대로 임의의 타입을 지정할..
View 처리
·
Framework/SPRING FRAMEWORK
현재 view 처리 코드 @GetMapping("/loginForm") public String loginForm() { System.out.println("@GetMapping.loginForm"); return "/WEB-INF/views/loginForm.jsp"; // view 처리 } ⇒ 문제점: 경로가 매우 길다. 확장자가 정해져 있음. ( jsp로만 처리됨 ) 해결 파일명(loginForm)만 리턴 jsp 뿐만 아니라 임의의 형태로도 view 처리가 가능하다. 예를 들어 ( /WEB-INF/views/loginForm.pdf )도 가능하게 된다는 것이다. 파일명만 알려주면 나중에 스프링이 임의의 정보 (ViewResolver)를 이용해서 경로정보 ( /WEB-INF/views/ )와 확장자(..
GET/POST 요청에 대한 @RequestMapping 처리 - 어노테이션방식
·
Framework/SPRING FRAMEWORK
Spring Framework 4.3 이후에 어노테이션이 추가됨 @RequestMapping(value=”/add”, method=RequestMethod.GET) ⇒ @GetMapping(”/add”) @RequestMapping(value=”/add”, method=RequestMethod.POST) ⇒ @POSTMapping(”/add”)
@RequestMapping 처리 - root 경로
·
Framework/SPRING FRAMEWORK
@RequestMapping (value="/member/add") public String add(){ } @RequestMapping (value="/member/del") public String del(){ } ⇒ /member 경로가 중복된다. 👇👇👇 해결 : 중복된 부분을 클래스 맵핑으로 따로 작성해준다. @Controller @RequestMapping("/member") public class MemberController{ @RequestMapping(value="/add") public String add(){} @RequestMapping(value="/del") public String del(){} }
GET/POST 요청에 대한 @RequestMapping 처리 - method방식
·
Framework/SPRING FRAMEWORK
GET, POST, HEAD, PUT, DELETE 같은 요청 메서드 이용 따라서 같은 URL이라고 하더라도 요청메소드에 따라서 다른 메서드에 맵핑이 가능하다. 배열 타입이므로 여러 개 지정 가능하다. GET (기본) 브라우저 —————> @RequestMapping(value=”/add”, method=RequestMethod.GET) —————> @RequestMapping(value=”/add”, method=RequestMethod.POST) POST
@RequestMapping - URL 패턴 이용
·
Framework/SPRING FRAMEWORK
용도 사용자가 요청한 URL 정보를 이용하여 실제 처리되는 메소드를 선택 방법1. URL 패턴 이용 기본 속성인 value는 스트링 배열타입으로 URL 패턴을 지정할 수 있다. @RequestMapping("/add") @RequestMapping(value="/add") @RequestMapping(value={"/add", "/bbb"}) @RequestMapping(value="/ccc*") #ccc로 시작하는 요청맵핑값 @RequestMapping(value="/ddd/*") #ddd 이후로 임의의 특정경로 하나 지정시 @RequestMapping(value="/eee/**") #eee 이후로 임의의 특정경로 여러개 지정시 @RequestMapping(value="/fff/*/ggg") @Requ..
Multi
·
Framework/SPRING FRAMEWORK
하나의 파일을 먼저 만든다. Controller.java jsp servlet-context.xml web.xml에 servlet-context.xml 등록되어있는지 확인 💡 오류 발생 시 Project -> Clean 으로 들어가 두어번 Clean을 해준다 또 다른 파일을 만든다. Controller.java jsp test-context.xml web.xml에 test-context.xml 등록되어있는지 확인하고 없으면 추가
Spring MVC
·
Framework/SPRING FRAMEWORK
Spring MVC Spring Framework 에서는 클라이언트의 화면을 표현하기 위한 View와 서비 스를 수행하기 위한 개발 로직 부분(Model)을 나누는 MVC 2 패턴을 지원한다. 또한 Model, View, Controller 사이의 의존 관계를 DI 컨테이너에서 관리 하여 유연한 웹 어플리케이션을 쉽게 구현 및 개발할 수 있다. Spring MVC 구성 요소 ○ Dispatcher Servlet 클라이언트의 요청을 전달받음 요청에 맞는 컨트롤러가 리턴한 결과값을 View에전달하여 알맞은 응답을 생성 ○ Handler Mapping 클라이언트의 요청 URL을어떤 컨트롤러가 처리할지 결정 ○ Controller 클라이언트의 요청을 처리한 뒤,결과를 DispatcherServlet에게 리턴 ○..
Transaction 처리
·
Framework/SPRING FRAMEWORK
Spring에서의 트랜잭션 처리 ⇒ Service 클래스에서 처리 JDBC 방식 public int insert(DeptDTO dto){ Connection con = null; try{ con = DriverManager.getConnection(url, username, passwd); .. con.setAutoCommit(false); //DAO연동하면서 트랜잭션 처리 con.commit(); }catch(Exception e){ con.rollback(); } } ⇒ JDBC는 기본적으로 compile checked 예외를 발생시킨다. 무조건 try~catch, throws가 필수. (IOException, SQLException) 이전 MyBatis public int insert(DeptDTO..
xoo | 수진