1

現在、私はウェブショップの新しい URL 構造の実装に忙殺されています。新しい URL 構造は、検索エンジン向けにより最適化されているはずです。また、古い構造が引き続き機能し、301 を使用して新しい構造にリダイレクトすることも必要です。

問題は、新しい構造が古い URL と競合する場合があることです。

古い URL マッピングの例:

@RequestMapping(value = "/brand/{categoryCode}/{categoryName}/{brandGroup}.do", method = RequestMethod.GET)

新しい構造:

@RequestMapping(value = "/brand/{brandGroup}/{superCategoryName}/{categoryName}.do", method = RequestMethod.GET)

ご覧のとおり、URL には同じ量の値があるため、古いマッピングが新しいマッピングをキャッチし、その逆も同様です。

これを修正する最善の方法は何ですか? URL フィルターを使用して古いものを新しい URL 構造に書き換えますか?

4

2 に答える 2

3

SpringMVCでURLルーターを使用できます。アプリ内で競合するルートを定義し、ルートのプロパティ(リクエストに一致する最初のルートが優先される)でそれらを処理し、リクエストの一致を調整できます。

ルート構成ファイルは次のようになります。

GET /brand/{<[0-9]+>categoryCode}/{categoryName}/{brandGroup}.do oldcontroller.oldAction
GET /brand/{<[a-zA-Z]+>brandGroup}/{superCategoryName}/{categoryName}.do newController.newAction
于 2012-04-19T09:15:19.510 に答える