我不确定我是否正确地标记了此问题。但是我想要做的是映射一个Javabean来形成我拥有的输入。除了Bean包含一个我想映射到的复杂类型属性(以及我想映射到它的一个属性是特定的)。让我用代码解释。我有一个游戏类:JavaBeans与复杂类型一起使用
public class Game
{
private GameStatistics gameStats;
public GameStatistics getGameStats() {
if(gameStats == null){
gameStats = new GameStatistics();
}
return gameStats;
}
public void setGameStats(GameStatistics value) {
gameStats = value;
}
}
,我有一个GameStatistics类:
private int amountOfNumbersToMemorise;
public int getAmountOfNumbersToMemorise() {
return amountOfNumbersToMemorise;
}
public void setAmountOfNumbersToMemorise(String value) {
amountOfNumbersToMemorise = Integer.parseInt(value);
}
然后在我的JSP我有类似:
<jsp:useBean id='game' scope='session' class='Classes.Game' />
<form method="Post" action="numberDisplay.jsp">
Enter your username: <input name="username" type="text" /> <br />
How many numbers to remember: <input name="gameStats.amountOfNumbersToMemorise" type="text"/> <br />
<input type="Submit" value="Show me the numbers!" />
</form>
上面的页面转到另一页:
<jsp:useBean id='game' scope='session' class='Classes.Game' />
<jsp:setProperty name="game" property="*"/>
//more code here
<ul>
<% for(int x=0; x < game.getNumbersToMemorise().size(); x++)
{%>
<li><%=game.getNumbersToMemorise().get(x) %> </li>
<% } %></ul>
// more code
有一些特性我还没有包括在内,因为它们并不重要,但我似乎无法进入第二输入框属性的复合型数字地图。
我不能使用MVC,因为这是一个任务,我们必须这样做,这样:(
这是否有道理?我敢对Java(我是一个C#的人),所以任何帮助将不胜感激,谢谢:)
你在做什么映射? – objects 2011-03-13 22:06:03
你正在做这个突击队(即原始的servlet API),还是使用更高级别的框架(例如spring,struts等)? – skaffman 2011-03-13 22:06:48
你是什么意思的映射?你是否试图让变量在你的表单中“打印”,或者一旦表单被提交,你试图检索变量并将它们绑定到对象图表上? – CarlosZ 2011-03-13 22:07:03