关于Servlet转到jsp页面出现的404问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/toward_south/article/details/79703396

本人通过在servlet里面连接数据库,获取数据,然后通过打包集合传到另外一个jsp页面的时候,出现了404问题。

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		//response.getWriter().append("Served at: ").append(request.getContextPath());
		//PrintWriter out=response.getWriter();
		/*try{
			Class.forName("com.mysql.jdbc.Driver");
			String url="jdbc:mysql://localhost:3306/javaweb";
			String username="root";
			String password="1223360222";
			Connection conn=(Connection) DriverManager.getConnection(url,username,password);
			Statement stmt=(Statement) conn.createStatement();
			String sql="SELECT * FROM tb_bbok";
			//out.print("hello world");
			ResultSet rs=stmt.executeQuery(sql);
			List<Book>list=new ArrayList<Book>();
			while(rs.next()){
				Book book=new Book(); 
				book.setId(rs.getInt("id"));
				book.setName(rs.getString("name"));
				//out.println(rs.getInt("id"));
				book.setPrice(rs.getFloat("price"));
				book.setBookCount(rs.getInt("bookcount"));
				book.setAuthor(rs.getString("author"));
				list.add(book);
			}
			request.setAttribute("list", list);
			rs.close();
			stmt.close();
			conn.close();
			//out.close();
		}catch(ClassNotFoundException ex){
			ex.printStackTrace(); 
		}catch(SQLException ex){
			ex.printStackTrace();
		}*/
		RequestDispatcher rd=request.getRequestDispatcher("JDBC/bookQuery.jsp");
		rd.forward(request, response);

原因是

RequestDispatcher rd=request.getRequestDispatcher("JDBC/bookQuery.jsp");的bookQuery.jsp的路径没对。

如果jsp文件直接放在web下面,这个绝对路径就是对的,但是如果你在web现在新建了文件夹,你的bookQuery.jsp是放在这下面的话,那么跳转页面的时候,路径要加上新建的文件夹名。

当然,如果你使用绝对路径,那肯定是对了。只是提醒下使用相对路径的伙伴要注意下。

猜你喜欢

转载自blog.csdn.net/toward_south/article/details/79703396
今日推荐