-1

xyz.com/abc.jsp?user=5 のような URL を持つ Web サイトを持っています。

このユーザーの ID が 5 の場合。xyz.com/deepakagra で自分のプロファイルにアクセスできるように、deepakagra のようなハンドルを作成したいと考えています。どうすれば達成できますか?

Tomcatでjsp、サーブレットを使用しています。

4

4 に答える 4

0

tuckeyによるurlrewriteを使用しました。ここで、上記を実現するルールを簡単に作成できます。

于 2012-10-15T17:08:01.137 に答える
0

「deepakagra」をページへの GET パラメータとして解析し、データベース検索を行ってそのユーザー名の ID を見つけ、必要なコンテンツを取得する必要があります。

于 2012-06-10T16:42:43.170 に答える
0

サーブレットがあるので、いつでもサーブレットを作成し、web.xml で servlet-mapping を「deepakagra」として定義できます。これにより、要求が abc.jsp に転送されます。

于 2012-06-10T16:43:56.597 に答える
0

私の理解が正しければ、GETでパラメーターを使用したくないでしょう。localhost:8080/profile/deepakagra にアクセスすると、このサーブレットがパターンにマップされている場合は、このサーブレットが呼び出されます。

@WebServlet(name="profile", urlPatterns={"/profile/*"} )
public class ProfileServlet extends HttpServlet { 
....

protected final String getProfileId(HttpServletRequest request ){
        String base = request.getPathInfo();
        String id = null ;
        if( base.split("/").length >= 2 )
          id = base.split("/")[1] ;
        return id ;
      }

次に、GET/POST メソッドで getProfileId を呼び出し、ID を取得します。DB からプルし、必要な処理を行い、JSP に転送します。

注: このコードはテストされていません。

于 2012-06-10T19:43:25.437 に答える