728x90
1. pro08/webapp/WEB-INF/bin/init.txt 파일 생성
2. init.txt 파일의 내용 작성
// init.txt
회원등록 회원조회 회원수정, 주문조회 주문수정 주문취소, 상품조회 상품등록 상품수정 상품삭제
3. init.txt 에서 메뉴 데이터를 읽어와 출력하는 기능을 구현하기 위해 ContextFileServlet 클래스 생성
// ContextFileServlet.java
package sec05.ex03;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.StringTokenizer;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class ContextFileServlet
*/
@WebServlet("/cfile")
public class ContextFileServlet extends HttpServlet {
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html; charset=utf-8");
PrintWriter out = response.getWriter();
ServletContext context = getServletContext();
InputStream is = context.getResourceAsStream("/WEB-INF/bin/init.txt"); // 해당 위치의 파일을 읽어들임
BufferedReader buffer = new BufferedReader(new InputStreamReader(is));
String menu = null;
String menu_member = null;
String menu_order = null;
String menu_goods = null;
// 콤마(,)를 구분자로 하여 메뉴 항목을 분리
while((menu=buffer.readLine()) != null) {
StringTokenizer tokens = new StringTokenizer(menu, ",");
menu_member = tokens.nextToken();
menu_order = tokens.nextToken();
menu_goods = tokens.nextToken();
}
out.print("<html><body>");
out.print(menu_member + "<br>");
out.print(menu_order + "<br>");
out.print(menu_goods + "<br>");
out.print("</body></html>");
out.close();
}
}
728x90
'웹 개발 기초 > 자바 웹을 다루는 기술' 카테고리의 다른 글
@WebServlet 애너테이션과 web.xml을 이용한 서블릿 설정 (0) | 2023.02.20 |
---|---|
ServletConfig 서블릿 확장 API (0) | 2023.02.20 |
ServletContext의 매개변수 설정 기능 (0) | 2023.02.20 |
ServletContext 바인딩 기능 (0) | 2023.02.20 |
ServletContext 클래스 (0) | 2023.02.20 |