Путаница в понимании включаемого файла в моем веб-приложении

#java #jsp #web-applications #servlets #scriptlet

#java #jsp #веб-приложения #сервлеты #скриптлет

Вопрос:

У меня проблема с пониманием приведенного ниже фрагмента кода.На самом деле это содержимое в файле .inc. Что меня смущает, так это то, что будет сохранено в переменной path. будет ли это путь к текущему рабочему каталогу или что-то еще…

 <%
      String path = application.getRealPath(request.getServletPath());
      path = path.substring(0, path.lastIndexOf(java.io.File.separator));
      String dictionaryPath = path   java.io.File.separator   "dictionaries/english.txt";
      String userdict = path   java.io.File.separator   "spellchecker/dictionaries/user/user-dictionary.txt";

        int searchdepth = 50;

       boolean striphtml = true;

       String format = "javascript";
       int     suggestions = 14;
    if (request.getParameter("jsvar") != null) {
        if (!java.util.regex.Pattern.matches("^[a-zA-Z0-9_.\[\]] $", request.getParameter("jsvar"))) {
            out.println("Invalid Jsvar");
            return;
        }
    }
%>
  

Ответ №1:

Обратитесь к документам, нет другой лучшей замены, context.getRealPath() и request.getServletPath().

Кстати, как насчет того, чтобы распечатать это,

 String path = application.getRealPath(request.getServletPath());
System.out.println("path: "   path);

path = path.substring(0, path.lastIndexOf(java.io.File.separator));
System.out.println("path: "   path);

String dictionaryPath = path   java.io.File.separator   "dictionaries/english.txt";
System.out.println("dictionaryPath: "   dictionaryPath);

String userdict = path   java.io.File.separator   "spellchecker/dictionaries/user/user-dictionary.txt";
System.out.println("userdict: "   userdict);