我正在尝试创建基于用户的JSP Web应用程序。在这个应用程序中,我想添加社交网站的个人资料功能,它看起来像网站/用户名和网站/用户档案等。
相信我,我不想制作任何其他不受欢迎的社交网站。但在我的网站中,我想添加类似网站/用户名/即将显示该特定人的页面的功能"用户名"和其他功能,如网站/用户名/联系人,网站/用户名/技能等。如果有人登录,那么我想使用网站/用户名/设置,网站/用户名/帐户,网站/用户名/编辑等所以任何人都可以告诉我怎么能用JAVA / JSP创建这个webapp?使用servlet,我可以进行网站/设置,网站/帐户,网站/编辑等,但我不想这样做。我想按照我的描述做(使用用户名功能)。任何人都可以建议我应该怎么做,如果有任何框架可以帮助我,请告诉我。现在,我只使用带有eclipse的jsp / java,所以我需要更改IDE吗?
提前谢谢。
答案 0 :(得分:1)
有各种Web框架可以让您开发RESTFul Web应用程序(例如Struts,JSF,Spring MVC等)。我个人更喜欢Spring MVC,你可以阅读更多关于它的信息here
答案 1 :(得分:0)
我认为你不需要为servlet以外的任何东西使用任何API来完成它。
您所需要的只是使用request.getPathInfo()
。
您必须创建一个控制器servlet或过滤器,例如您在问题中指定的site
。这个site
servlet将充当控制器,您将使用site/Anurag/contact
,其中Anurag
是用户的名称,在这种情况下,它是我。
request.getPathInfo()
将返回/Anurag/contact
。
你可以像这样处理它
String pathInfo = request.getPathInfo();
String[] pathParams = {};
if(validations for pathInfo){
pathInfo = pathInfo.substring(pathInfo.indexOf("/")+1);
pathParams = pathInfo.split("/");
}
pathParams [0]将拥有用户名
pathParams [1]将具有用户想要执行的操作名称
if(pathParams[1].equalsIgnoreCase("contact")){
then redirect to View for contact
}
OR
if(pathParams[1].equalsIgnoreCase("setting")){
then redirect to View for setting
}
可以这种方式实现。
我认为stackoverflow
以相同的方式重定向到问题。可能它使用API,我不知道,但它会清除我想传达的信息。
当您点击页面上的问题按钮时,它会显示此网址http://stackoverflow.com/questions
。
您可以直接在此网址后面写下问题编号,它会将您带到该问题。 http://stackoverflow.com/questions/26920116
。这是传递问号的方式。
以同样的方式可以实现此Usename特定URL。您必须使site
成为控制器。