재미있게 코딩합시다

JSP - 코드분리 본문

IT /JSP

JSP - 코드분리

감민셔 2018. 12. 26. 18:02

사실 jsp파일에 연산과 출력을 다넣는것이 좋은 코드라고 볼수없다.(더럽다)


가장 깔끔한 코드는....


※JSP에서 연산 = 자바에서 servlet.class 생성후 거기안에서 코딩


 출력 = JSP파일







그리고 시작전에!!


#JSTL core 를 다운받아서 (jar파일로) project - >  WebContent ->  WEB-INF -> lib     파일안에 넣으시면 됩니다.(파일그냥 복사붙여넣기)

이후에   출력할 .jsp  파일에 들어가서

   <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 을  붙여넣기 하시면됩니다.

제 result_gugudan.jsp 파일에 보시면 나와있습니다.



Start_gugudan.jsp



<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

</head>

<body>

<form action="result_gugudan" method="post">

<select name="type">

<option value="2">2단</option>

<option value="3">3단</option>

<option value="4">4단</option>

<option value="5">5단</option>

<option value="6">6단</option>

<option value="7">7단</option>

<option value="8">8단</option>

<option value="9">9단</option>

</select>

<input type="submit"value="출력해봅시당">

</form>

</body>

</html>




gugudanServlet.java



package servlet;


import java.io.IOException;

import java.util.ArrayList;

import java.util.List;


import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;


@WebServlet("/result_gugudan")

public class guguServlet extends HttpServlet{


//리스트하나 준비해서 period를 돌면서 한바퀴 돌때마다  구구단 리스트에 추가해준다.(저는 gugudan 클래스를 만들지않아서 객체 추가X)

//그다음엔 리스트를 한바퀴씩 돌면서 테이블 태그에 적절한 위치에 데이터를 뽑아서 출력하면 됨.


@Override

protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

List<String> list = new ArrayList<>();

int dan = Integer.parseInt(req.getParameter("type"));


for(int i =1;i <10;i++) {

list.add(dan +"*"+i+"="+(dan*i));

}

req.setAttribute("dan", dan);

req.setAttribute("list", list);

req.getRequestDispatcher("guguDan_Main.jsp").forward(req, resp);

}

}



result_gugudan.jsp


<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

</head>

<body>

<c:forEach var = "list" items="${list }" varStatus="status">

${list }<br>

</c:forEach>

</body>

</html>



start_gugudan.jsp 을 실행하면 웹페이지가 start._gugudan.jsp가 뜨게되고 출력한 웹페이지에서 버튼을 누르게 되면

 gugudanservelt.java 파일에서 실행된다음

 result_gugudan.jsp에서 실행된 것을 출력 하게됩니다.


'IT > JSP' 카테고리의 다른 글

JSP - forward  (0) 2018.12.26
JSP-form  (0) 2018.12.26
JSP -input  (0) 2018.12.26
JSP-구구단 출력하기  (0) 2018.12.24
JSP - 2.서블릿  (0) 2018.12.24
Comments