我相信这很容易,但我不经常与网站开发合作,而且我迷失于此。如何使用小服务器来回应对象的请求
我有一个web应用程序需要支持多个客户端使用不同的设置,图标和其他内容。这些文件的内容位于每个客户端的独立目录中。
我想要做的是响应发送到jsp/java servlet的请求。这个servlet将在数据库中查找正确的文件夹位置(我有数据库的东西可以工作)并将实际对象发送到请求页面,无论它是xml,图形还是视频。
我该怎么做?我应该使用什么方法。帮助我迷路了! :(
我相信这很容易,但我不经常与网站开发合作,而且我迷失于此。如何使用小服务器来回应对象的请求
我有一个web应用程序需要支持多个客户端使用不同的设置,图标和其他内容。这些文件的内容位于每个客户端的独立目录中。
我想要做的是响应发送到jsp/java servlet的请求。这个servlet将在数据库中查找正确的文件夹位置(我有数据库的东西可以工作)并将实际对象发送到请求页面,无论它是xml,图形还是视频。
我该怎么做?我应该使用什么方法。帮助我迷路了! :(
提供用户登录,以便您可以根据登录用户采取相应措施。在登录时,将发现的User
存储在会话范围HttpSession#setAttribute()
中。然后,在每个请求中,通过HttpSession#getAttribute()
检查登录用户。例如。
User user = (User) session.getAttribute("user");
List<Movie> movies = movieDAO.findMoviesByUser(user);
request.setAttribute("movies", movies);
request.getRequestDispatcher("/WEB-INF/movies.jsp").forward(request, response);
写一个servlet,做在doPost方法和/或doGet方法如下:
你必须打包成servlet的WAR文件。写一个web.xml声明您的servlet并将其映射到请求URL。
就是这样。
请求和响应是你的serlvet的一部分doGet
和doPost
方法:
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
//...
}
可以使用request
来存储对象:
request.SetAttribute("customValue", new CustomClass());
RequestDispatcher dispatcher = request.getRequestDispatcher(/*..*/);
dispatcher.forward(request, response);
在JSP你只在查找来自请求的属性:
CustomClass customValue= (CustomClass) request.getAttribute("customValue");
已更新。
您无法在Response对象上设置属性。只有HttpSession,ServletContext和ServletRequest实例可能具有与它们一起存储的属性。 – DoctorRuss 2010-04-23 14:13:57
@DoctorRuss oops ...据此更新。 – Kiril 2010-04-23 14:27:21