gpt4 book ai didi

java - 如何创建可用于整个 servlet 的类的一个实例

转载 作者:行者123 更新时间:2023-12-02 11:01:35 26 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Cannot make a static reference to the non-static method

(8 个回答)


6年前关闭。




我有一个 JSP 应用程序,它带有一个普通的 java 类 Login.java 和一个 servlet,它在 doGet 方法中调用了一个名为 loginList 的过程。 loginList 过程需要使用名为 OAVDbUtil 的 java 类和方法“getLoginsList”创建登录列表。但是 Eclipse 似乎无法识别“getLoginsList”过程,当我输入它时,会给出“eclipse 无法对非静态方法进行静态引用”的消息。但是一切看起来都很好,因为我没有将 getLoginsList 声明为静态的。我认为有一种方法可以创建 OAVDbUtil 的实例以避免必须创建新 OAVdbUtil 对象的多个实例,但是有人可以告诉我如何做到这一点,而不是收到“eclipse 无法对非静态引用-静态方法”?

这是一些代码和屏幕转储

servlet 的屏幕转储

enter image description here

这是 OAVDbUtil 的代码

public OAVDbUtil(DataSource theDataSource) {
dataSource = theDataSource;
}

public List<Login> getLoginsList() throws Exception {

List<Login> loginList = new ArrayList<Login>();

最佳答案

您需要提供 OAVDbUtil 的实例到 servlet,然后调用 getLoginsList()在那个物体上。

servlet 可以在其初始化方法中构造这样的对象,也可以通过容器将其注入(inject)到 servlet 中。

关于java - 如何创建可用于整个 servlet 的类的一个实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37077246/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com