【问题标题】:Package doesnt exist error when trying to import my own package to servlet尝试将我自己的包导入 servlet 时出现包不存在错误
【发布时间】:2020-04-20 09:18:00
【问题描述】:

我正在尝试使用 tomcat 将我自己的包导入到我正在制作的 servlet 中。

我使用的两个 java 文件是 servlet (movieServlet.java),另一个我试图从包中导入的类 (Movie.java)

文件夹的层次结构是:

classes
|
+--movieServlet.java
|
+--movie
   |
   +--Movie.java

movieServlet.java

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.WebServlet;
import movie.Movie;

@WebServlet(urlPatterns = {"/movieServlet"})
public class movieServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
    PrintWriter out = response.getWriter();

    Movie Movie = new Movie();
    request.setAttribute("movies", Movie.getAllMovies());

    RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/WEB-INF/jsps/movies.jsp");
    dispatcher.forward(request,response);
} 


public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
    PrintWriter out = response.getWriter();


    RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/WEB-INF/jsps/movieDetails.jsp");
    dispatcher.forward(request,response);
} 

}

这是 Movie.java 的顶部(它是一个长文件)

package movie;
import java.util.*;
import java.util.List;
import javax.sql.*;
import java.sql.*;
import javax.naming.InitialContext;

public class Movie implements java.io.Serializable
{
private static DataSource dataSource = null;
private static Connection c = null;

private int id;
private String title;
private String url;
private int year;

public Movie(){}

如果需要更多信息,请询问:),这一直困扰着我。

【问题讨论】:

  • 您还没有提到您面临的问题类型(编译/运行时)。另外,请在编辑问题时提及错误消息。

标签: java tomcat servlets package


【解决方案1】:

我是新来的,如果我的回答不完美,请见谅。正如您所提到的,您想导入自己的包含 Movie 类的包。我尝试实现你所有的主要方法,它运行完美,我从 Movie.java 中获得了我的价值。

movieServlet.java

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import movie.Movie;

public class movieServlet extends HttpServlet {

    protected void doGet(HttpServletRequest request, HttpServletResponse response)
           throws ServletException, IOException {
              PrintWriter out = response.getWriter();
               Movie Movie = new Movie();
               request.setAttribute("movies", Movie.getAllMovies());
               out.println(request.getAttribute("movies"));
   }


 }

Movie.java

package movie;
public class Movie {
String s;
   public Movie(){
      s="hello zDoctor";   
   }
   public String getAllMovies(){
       return s;
   }
}

servlet output

file structure

【讨论】:

  • 您好,感谢您的回复,很抱歉花了这么长时间才回复。我相信我没有正确编译代码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-22
  • 2019-05-03
  • 2013-12-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多