Nay*_*ish 3 java routing servlets ruby-on-rails
我是一个Ruby on Rails开发人员,用Java编写Web应用程序.我试图实现类似于Rails中实现的东西.在Rails中,可以使用localhost:8000\Users\1当Users是Model而1是特定用户的id时调用链接.我想在Java中得到同样的东西.
我正在进行MVC类型设计,其中我的JSP页面是视图,而我的Servlet是控制器.我创建了一个servlet Users,它users.jsp现在呈现页面我可以使用URL访问该页面localhost:8000\projectName\Users,我想路由localhost:8000\projectName\Users\1到页面,user.jsp而相应的Servlet将处理向页面发送正确的用户(id = 1).
知道我怎么能做到这一点?
我在大学项目中这样做,不允许使用任何框架.我也宁愿我可以编码而不是安装.
现在我可以使用URL localhost:8000\projectName\Users访问该页面,我想将localhost:8000\projectName\Users\1路由到页面user.jsp,而相应的Servlet将处理发送到页面的正确user(id = 1).
简单.将servlet映射到URL模式/Users/*而不是/Users.然后,你可以抓住的路径信息(部分后 /Users的URL,这是这样/1如下在您的示例):
String pathInfo = request.getPathInfo();
// ...
Run Code Online (Sandbox Code Playgroud)
你可以users.jsp按照通常的方式前进.
Long id = Long.valueOf(pathInfo.substring(1));
User user = userService.find(id);
request.setAttribute("user", user);
request.getRequestDispatcher("/WEB-INF/users.jsp").forward(request, response);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5083 次 |
| 最近记录: |