Java Tutorial/Servlet/Path

Материал из Java эксперт
Перейти к: навигация, поиск

Get path info from Servlet Request

   <source lang="java">

import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class MyServlet extends HttpServlet {

 public void doGet(HttpServletRequest req, HttpServletResponse res)
                              throws ServletException, IOException {
   res.setContentType("text/plain");
   PrintWriter out = res.getWriter();
   if (req.getPathInfo() != null) {
     out.println("The file \"" + req.getPathInfo() + "\"");
     out.println("Is stored at \"" + req.getPathTranslated() + "\"");
   }
   else {
     out.println("Path info is null, no file to lookup");
   }
 }

}</source>





Get real path from Servlet Request

   <source lang="java">

import java.io.*; import java.text.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*; public class MyServlet extends HttpServlet {

 public void doGet(HttpServletRequest req, HttpServletResponse res)
                              throws ServletException, IOException {
   res.setContentType("text/plain; charset=Shift_JIS");
   PrintWriter out = res.getWriter();
   res.setHeader("Content-Language", "ja");
   Locale locale = new Locale("ja", "");
   DateFormat full = DateFormat.getDateTimeInstance(DateFormat.LONG,
                                                    DateFormat.LONG,
                                                    locale);
   out.println("In Japanese:");
   try {
     FileInputStream fis =
       new FileInputStream(req.getRealPath("/HelloWorld.ISO-2022-JP"));
     InputStreamReader isr = new InputStreamReader(fis, "ISO-2022-JP");
     BufferedReader reader = new BufferedReader(isr);
     String line = null;
     while ((line = reader.readLine()) != null) {
       out.println(line);
     }
   }
   catch (FileNotFoundException e) {
     e.printStackTrace();
   }
   out.println(full.format(new Date()));
 }

}</source>