是否可以将HTML参数与列表中的JavaBean变量进行比较?
我试图访问HTML参数并将其与位于数组列表中的JavaBean变量进行比较。下面是我所拥有的,但是当JSP页面被转发时它不工作。返回的JSP框架没有从数组接收到任何信息是否可以将HTML参数与列表中的JavaBean变量进行比较?,java,arraylist,collections,javabeans,Java,Arraylist,Collections,Javabeans,我试图访问HTML参数并将其与位于数组列表中的JavaBean变量进行比较。下面是我所拥有的,但是当JSP页面被转发时它不工作。返回的JSP框架没有从数组接收到任何信息 itemBean item=newitemBean(); collection coll=新集合(); List songs=coll.getItems(); 对于(int i=0;i
itemBean item=newitemBean();
collection coll=新集合();
List songs=coll.getItems();
对于(int i=0;i
JSP页面:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<%@page import="my.pack.collection" %>
<%@include file="/header.jsp"%>
<%@include file="/user-navigation.jsp"%>
<%@include file="/site-navigation.jsp"%>
<div id="productList">
<h5><a href="categories.jsp">back</a></h5>
<h2>Lesson 1</h2>
<% if ((request.getAttribute("itemCode")) != null ){ %>
<jsp:include page="item.jsp" flush="true"/>
<% }%>
<ul>
<li><a>Song: ${itemBean.song}</a></li><br>
<li><b>Artist: ${itemBean.artist}</b></li><br>
<li><img src=${itemBean.songURL}> </li><br>
<p> Lyrics: ${itemBean.desc}</p><br>
<form action="feedback.jsp" method="post">
<input type="text" name="song"/> <br />
<input type="text" name="artist"/><br />
<button type="submit" id="save"> Save! </button>
<button type="submit" id="rate"> Rate It</button>
</form>
</ul>
</div>
<%@include file="/footer.jsp" %>
第1课
- 歌曲:${itemBean.Song}
- 艺术家:${itemBean.Artist}
歌词:${itemBean.desc}
拯救
评价它
集合Java:包含所需信息的JavaBean数组列表
package my.pack;
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
import java.util.*;
/**
*
* @author Anastasia
*/
public class collection{
private List<itemBean> Song;
public collection(){
Song = new ArrayList<>();
//String itemCode;
//itemBean item = new itemBean();
Song.add(new itemBean("S1", "View","SHINee","Song",
"모두 할 말을 잃지 like you<br>\n,
"","/image/viewShinee.jpg"));
Song.add(new itemBean("S2","Pray","FTIsland","Song",
"또 다른 현실 속에 속삭이던 많은 거짓말<br>\n",
"","/image/pray_FTIsland.jsp"));
Song.add(new itemBean("S3","X","Monsta X","Song",
"Yeah ah yeah hey hey hey<br>\n" ,
"","/image/X_MonstaX.jpg"));
Song.add(new itemBean("OST3","Stay With Me", "Punch & Chanyeol(EXO)","OST"," 나의 두 눈을 감으면 <br>\n" ,
"", "/image/GoblinOST.jpg"));
Song.add(new itemBean("OST2","Before the Sunset--Goblin OST","Eric Name", "OST",
"나즈막히 건넨 인사가<br>\n",
"","/image/MadDogOST.jpg"));
Song.add(new itemBean("OST3","You Are My Everything", "Gummy","OST",
"처음부터 그대였죠<br>\n" ,
"","/image/DOTS.jpg"));
}
public List<itemBean> getItems(){
return Song;
}
}
打包my.pack;
/*
*要更改此许可证标题,请在“项目属性”中选择“许可证标题”。
*要更改此模板文件,请选择工具|模板
*然后在编辑器中打开模板。
*/
导入java.util.*;
/**
*
*@作者阿纳斯塔西娅
*/
公共类集合{
私人列表歌曲;
公众收藏(){
宋=新的ArrayList();
//字符串项代码;
//itemBean item=新的itemBean();
添加(新的itemBean(“S1”,“View”,“SHINee”,“Song”,
"모두 할 말을 잃지 像你一样
\n,
“,”/image/viewShinee.jpg”);
添加(新项Bean(“S2”、“祈祷”、“FTIsland”、“歌曲”,
"또 다른 현실 속에 속삭이던 많은 거짓말
\n“,
“,”/image/pray_FTIsland.jsp”);
添加(新的itemBean(“S3”,“X”,“Monsta X”,“Song”,
“是啊是啊嘿嘿
\n”,
“,”/image/X_MonstaX.jpg”);
添加(新的itemBean(“OST3”,“和我在一起”,“潘趣酒和香奈儿(EXO)”,“OST”,”나의 두 눈을 감으면
\n“,
“,”/image/GoblinOST.jpg”);
添加(新的itemBean(“OST2”,“日落前——妖精OST”,“埃里克名字”,“OST”,
"나즈막히 건넨 인사가
\n“,
“,”/image/MadDogOST.jpg”);
添加(新的itemBean(“OST3”,“你是我的一切”,“口香糖”,“OST”,
"처음부터 그대였죠
\n“,
“,”/image/DOTS.jpg”);
}
公共列表getItems(){
返回歌曲;
}
}
我怀疑错误可能是您没有请求。
在EL中;您是否尝试过${request.itemBean.song}
你真的应该:
地图
保存您的歌曲集您使用哪种技术来访问请求属性(“itemBean”)在您的JSP页面上?也许您可以发布页面的重要部分。@Renardo抱歉,这是JSP页面的编码Coll不是空的,我不相信我发布了集合classIs
action
的编码,它是从请求参数设置的?它的值是什么?@Renardo这是如何设置的String action=request.getParameter(“itemCode”)@jan larsen:你刚刚在调用默认构造函数后写到,coll
是空的。但是collection
类有一个填充列表的默认构造函数,所以它不是空的。这很奇怪,但是Anastasia的编码风格似乎与你我不同。Anastasia,我仍然想知道这个值是什么request为itemCode
指定。也许您应该在程序中打印它。一些跟踪可能有助于了解发生了什么。@Renardo我在for循环中添加了一个变量并将其设置为songs.get(I).getItemCode();然后它返回“。因此if语句没有从数组列表中获取itemCode