Java 需要帮助:我的套装没有';t显示我输入的所有项目
我现在正在处理一个问题,我不明白为什么我的收藏没有正确显示我的输入,它只显示最后一个条目。让我给你看看我的代码 首先有两个jsp(inputsubjects.jsp和schedule.jsp)、两个servlet(LE4Servlet1和LE4Servlet2)和一个普通Java类(Subjects.Java) 对于inputsubjects.jsp:Java 需要帮助:我的套装没有';t显示我输入的所有项目,java,jsp,servlets,collections,set,Java,Jsp,Servlets,Collections,Set,我现在正在处理一个问题,我不明白为什么我的收藏没有正确显示我的输入,它只显示最后一个条目。让我给你看看我的代码 首先有两个jsp(inputsubjects.jsp和schedule.jsp)、两个servlet(LE4Servlet1和LE4Servlet2)和一个普通Java类(Subjects.Java) 对于inputsubjects.jsp: <%@page contentType="text/html" pageEncoding="UTF-8"%> <!DOCTYP
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<form method="post">
Subject Code: <input type="text" name="inputSC">
<br><br>
Description: <input type="text" name="inputDesc">
<br><br>
Unit(s): <input type="text" name="inputUnit">
<br><br>
<center>
<input type="SUBMIT" value="Save and Add" formaction="LE4Servlet1">
<input type="SUBMIT" value="Save and Exit" formaction="LE4Servlet2">
</center>
</form>
</body>
</html>
下面是我的Subjects.java代码,我认为问题出在哪里
对于Subjects.java:
public class Subjects
{
private String code;
private int unit;
private String description;
public Subjects(String code, int unit, String description)
{
this.code = code;
this.unit = unit;
this.description = description;
}
public Set getCode(String inputSC)
{
Set code = new HashSet();
code.add(inputSC);
return code;
}
public Set getUnit(int inputUnit)
{
Set unit = new HashSet();
unit.add(inputUnit);
return unit;
}
public Set getDesc(String inputDesc)
{
Set desc = new HashSet();
desc.add(inputDesc);
return desc;
}
}
我真的很感激你们的帮助,因为我想学习很多关于网络开发的知识,现在我真的有问题,因为我还是一名学生。很抱歉问了这么长的问题:(
注意:请不要把这个问题当作我只是为了通过我的作业,但我问这个问题是为了让我了解更多关于web开发的知识,因为我对它充满热情,我希望有一天成为一名web开发人员:)
注意:我在这个项目中使用的是NetBeans IDE 8.1。您提供的代码太多了,需要使用调试器逐步调试并确定问题的位置。但是,从一眼看,似乎你没有添加到现有的集合中,你每次都在制作新的集合。很抱歉,我提供了很多代码,我只是想如果有人想尝试代码,那么它已经存在了。我也想到了这个想法,但我找不到解决方案,我最近想了很多,我想添加一个计数器,让它重复,并在有限的数量上一次又一次地执行add函数,但我认为这是不正确的,因为JSP应该是动态的。我在移动。。因此无法运行此代码。。首先,在schedule.jsp中,将所有内容存储在一个字符串中,然后一次打印所有内容。。另外,在Subjects.java中,每次都要创建一个新的哈希集。。将哈希集行发送到构造函数。。get方法应该只包含add()方法。使用get方法containg add()方法将HashSet行发送到构造函数时出现问题。我想我不能使用get方法中构造函数中声明的HashSet,因为它们只使用局部变量。谢谢你的回答!我很感激!:)嘿,那是错的。至少自己编写代码。声明专用集合代码、单位、描述;并在构造函数中初始化它们,然后在函数中添加()任何内容。
String inputsc = request.getParameter("inputSC");
String inputdesc = request.getParameter("inputDesc");
String inputunit = request.getParameter("inputUnit");
int x = Integer.parseInt(inputunit);
Subjects subj = new Subjects(inputsc,x,inputdesc);
Set isc = subj.getCode(inputsc);
Set id = subj.getDesc(inputdesc);
Set iu = subj.getUnit(x);
request.setAttribute("output1", isc);
request.setAttribute("output2", id);
request.setAttribute("output3", iu);
RequestDispatcher view = request.getRequestDispatcher("inputsubjects.jsp");
view.forward(request, response);
public class Subjects
{
private String code;
private int unit;
private String description;
public Subjects(String code, int unit, String description)
{
this.code = code;
this.unit = unit;
this.description = description;
}
public Set getCode(String inputSC)
{
Set code = new HashSet();
code.add(inputSC);
return code;
}
public Set getUnit(int inputUnit)
{
Set unit = new HashSet();
unit.add(inputUnit);
return unit;
}
public Set getDesc(String inputDesc)
{
Set desc = new HashSet();
desc.add(inputDesc);
return desc;
}