2010-12-28 11 views
0

私はJavaサーバーを使用しています。要求の中でサブフォルダをパラメータのように動作させる必要があります。サブフォルダをparamsに変換する方法

例:

のmyhost/P// 1

と私はそのようにそれを "理解" するためにサーバを必要とする:?

のmyhost/Pどのように= 1

それをしてもいいですか?

おかげで、 Koby

+0

パラメータは1つだけですか? – dacwe

+0

はい、当然です。それは大きな違いですか? – koby

答えて

2

1を転送するsee herehttp://www.tuckey.org/urlrewrite/:UrlRewiterを使用します。これは、regexpを使ってパスパラメータを抽出することができます。

<rule> 
    <from>^/image/([A-Za-z0-9-]+).html\??(.*)?$</from> 
    <to>/image.html?imagecode=$1&amp;$2</to> 
</rule> 
+0

ビットをフォーマット –

1

フィルタの作成 - そのフィルタにgetServletPath()が、パスを解析して適切なコントローラに要求を転送する/サーブレット


言う経路/files/*see hereでフィルタを作成し、

このフィルタでは、ベースURLの後に全体のパスを取得するロジックを追加します。つまり、サーブレットパスsee here

"/"を使用してこのパスを分割して解析し、このパスを使用するサーブレットにパラメータとして配列を渡します。

@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 URI

からパス値を抽出することができ、スプリング3 MVC @RequestMappingタグ:要求

+0

このフィルタはどこに配置しますか? – koby

+0

@kobyは答えを更新しています。 – Nishant

関連する問題