이클립스에서
Dynamic web project 를 하나 생성하시고
sec02.ex01 패키지에 CalcServlet 클래스를 생성합니다.
CalcServlet.java 클래스에 아래대로 입력을 합니다.
실행하고
http://localhost:8080/pro06/calc로 요청한 후 원화에 값을 입력하고 변환을 클릭해 봅니다
그럼 변환된 값이 출력이 됩니다^^
ps. 탐캣이 설치되어 있어야 합니다...
package sec02.ex01;
import java.io.IOException;
import java.io.PrintWriter;
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("/calc")
public class CalcServlet extends HttpServlet{
private static float USD_RATE = 1124.70F;
private static float JPY_RATE = 10.113F;
private static float CNY_RATE = 163.30F;
private static float GBP_RATE = 1444.35F;
private static float EUR_RATE = 1295.97F;
public void init() {
System.out.println("init 실행");
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
request.setCharacterEncoding("utf-8");
response.setContentType("text/html; charset=utf-8");
PrintWriter pw = response.getWriter();
String command = request.getParameter("command"); //수행할 요청을 받아옵니다.
String won = request.getParameter("won"); //변환할 원화를 받아옵니다.
String operator = request.getParameter("operator"); // 변환할 외화종류를 받아옵니다.
if(command != null && command.equals("calculate")) { //최초 요청 시 command가 null이면 계산기 화면을 출력하고, command값이 calculate이면 계산 결과를 출력합니다.
String result = calculate(Float.parseFloat(won), operator);
pw.print("변환결과"); pw.print(""+ result + ""); pw.print("환율 계산기"); return; } pw.print(""); pw.print("환율 계산기"); pw.print("
"); pw.print(""); pw.close(); } // 원화를 선택한 외화로 환산합니다. private static String calculate(float won, String operator) { String result = null; if(operator.equals("dollar")) { result = String.format("%.6f", won / USD_RATE); }else if (operator.equals("en")) { result = String.format("%.6f", won / JPY_RATE); }else if (operator.equals("wian")) { result = String.format("%.6f", won / CNY_RATE); }else if (operator.equals("pound")) { result = String.format("%.6f", won / GBP_RATE); }else if (operator.equals("euro")) { result = String.format("%.6f", won / EUR_RATE); } return result; } }
'2020 > JSP SERVLET' 카테고리의 다른 글
실습 예제: 서브릿으로 로그인 요청 시 관리자 화면 나타내기 (0) | 2019.11.26 |
---|---|
JSP/SERVLET login(아이디를 입력하지 않았을 때 다시 로그인하라는 메시지를 표시) (0) | 2019.11.26 |
자바스크립트로 서블릿에 요청하기(LOGIN) (0) | 2019.11.25 |
GET 방식과 POST 방식 요청 동시에 처리하기 doHandle() (0) | 2019.11.25 |
JSP/SERVLET post 방식으로 서블릿에 요청 (0) | 2019.11.25 |