我必须通过网站的控制面板提交一些链接,它们应该会自动出现在 jsp 页面中,下次用户刷新它时。为此,我在粘贴链接后单击提交按钮,生成一个发布请求并servlet 通过从自身调用 bean 的函数来处理该链接,并将链接存储在 ArrayList 中。
servlet 的片段
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String link = request.getParameter("song link");
StoreSongLink store = new StoreSongLink(); // A Bean class
int ret = store.storeSongLink(link); // calls the bean method
// if ret is 0,return to the cpanel home page
豆类
public class StoreSongLink {
public static ArrayList<String> linkList = new ArrayList<String>();
public int storeSongLink(String link) {
linkList.add(link);
return 0;
}
}
在此之后,我尝试将提交的链接获取为(在 jsp 页面中):
<%! ArrayList<String> songList = new ArrayList<String>(); %>
<%
songList = StoreSongLink.linkList;
%>
<% for (String links : songList){ %>
<li><%= links%></li>
<%}%>
我看到链接提交了一两次,然后在我刷新同一页面后它消失了,我看到还没有提交任何链接的消息!为什么会这样?我知道这可能不是最好的方法,但我仍然想这样做。
为什么我刷新页面后看不到提交的链接?ArrayList 中的数据是如何丢失的?