Как преобразовать запрос подпапок в params - PullRequest
0 голосов
/ 28 декабря 2010

Я использую сервер Java, и мне нужно, чтобы подпапки в запросе действовали как параметры.

пример:

MyHost / р / а / 1

и мне нужен сервер, чтобы «понять» это так:

MyHost / р? А = 1

Как я могу это сделать?

Спасибо, Коби

Ответы [ 2 ]

2 голосов
/ 28 декабря 2010

1: тег Spring 3 mvc @RequestMapping может извлекать значения пути из uri

 @RequestMapping(value="/owners/{ownerId}", method=RequestMethod.GET)  
 public String findOwner(@PathVariable String ownerId, Model model) {  
   Owner owner = ownerService.findOwner(ownerId);  
      model.addAttribute("owner", owner);  
      return "displayOwner";   
    }

2: использовать UrlRewiter: http://www.tuckey.org/urlrewrite/. Может извлекать параметры пути с помощью регулярных выражений.

<rule>  
    <from>^/image/([A-Za-z0-9-]+).html\??(.*)?$</from>  
    <to>/image.html?imagecode=$1&amp;$2</to>  
 </rule>  
1 голос
/ 28 декабря 2010

Создать фильтр - в этом фильтре getServletPath() затем проанализировать путь и направить запрос соответствующему контроллеру / сервлету


Создать фильтр на скажем пути /files/* см. Здесь ,

В этом фильтре добавьте логику, которая возвращает вам весь путь после базового URL - то есть путь вашего сервлета смотрите здесь

Вы анализируете этот путь путем разделения, используя "/", а затем передаете массив в качестве параметра сервлету, который хочет использовать этот путь. см. Здесь для пересылки запроса

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...