spring 3 mvc 保存多个实体

国外例子:

实体

public class Team {
     private String teamName;
     private String coach;
     private List<Player>  players;
     public Team() {
           players = LazyList.decorate
                   (new ArrayList<Player>(),
                    new InstantiateFactory(Player.class));
     }

     //accessor methods
}

public class Player {
    private String name;
    private String age;

    //accessor methods
}

控制层controller

public class GetTeamController extends SimpleFormController {
        public GeTeamController(){
        setCommandClass(Team.class);
        setCommandName("team");
    }

    @Override
    protected ModelAndView onSubmit(Object command)
                     throws Exception
        {
        Team team = (team) command;
                persist(team);
        return new ModelAndView(getSuccessView());
    }
}

 

页面jsp:

<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>

<form:form commandName="team" id="teamForm">
   Team Name<form:input path="teamName"><br/>
   Coach<form:input path="coach"/>
   <input type="button" value="add player" οnclick="addInput()"/>
   <input type="submit"/>
 </form:form>

 

动态添加js

function addPlayer() {
 document.getElementById(the id of the form).innerHTML +=

"New Player<br/>
  <input type='text' name='players["+ index in arraylist where the player is going to added +"].name'>
  <br />
  <input type='text' name='players["+ same index as above +"].age'>
  <br />";
}

 

经过这几个例子,应该明白了吧。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值