2016-11-22 5 views
0

Я хотел бы знать, как сохранять несколько данных одновременно с такими же именами в моей базе данных, используя Struts2 У меня есть несколько элементов, количество, количество, описание, цена единицы товара ... и они находятся внутри динамической таблицы. Вот мой код нижеКак сохранить динамические данные в мою базу данных с тем же именем, используя Struts 2

public String createPO() { 

    if (isAuthorizedUser(authorizedUsers)) { 
     dao = HibernateDAOFactory.getInstance(); 
     order = new OrderEntity() 

     order.setQuantity(quantity); 
     order.setAmount(amount); 
     order.setDescription(description); 
     order.setUnit(unit); 
     order.setUnitPrice(unitPrice); 
     order.setUser(user); 
     System.out.println(order.getOrderid()); 
     dao.getOrderDAO().isSaved(order); 

     return SUCCESS; 
    } 
    return logout(); 
} 

И это моя страница JSP. После того, как я нажму кнопку «Добавить», он создаст другие поля с одинаковыми именами.

<table id="orderTable" class="table table-bordered"> 

<tr> 

<td style="background-color: #40926f; color: white;"><strong><center>Quantity</center></strong></td> 
<td style="background-color: #40926f; color: white;"><strong><center>Unit</center></strong></td> 
<td style="background-color: #40926f; color: white;"><strong><center>Description</center></strong></td> 
<td style="background-color: #40926f; color: white;"><strong><center>Unit Price</center></strong></td> 
<td style="background-color: #40926f; color: white;"><strong><center>Amount</center></strong></td> 
<td style="background-color: #40926f; color: white;"><strong><center>Add</center></strong></td> 
<td style="background-color: #40926f; color: white;"><strong><center>Delete</center></strong></td> 
</tr>         
<tr id="orderDetailsTr" class="order"> 
    <td> 
     <center> 
      <input required style="height: 35px; width: 100px;" type="text" placeholder="QTY" 
      name="quantity" 
      id="quantity" class="quantity" > 
      </center> 
    </td> 
<td> 
<center> 
<input required style="height: 35px; width: 200px;" type="text" placeholder="Unit" 
      name="unit" 
      id="unit" > 
      </center> 
      </td> 
<td> 
<center> 
<input required style="height: 35px; width: 300px;" type="text" placeholder="Description" 
      name="description" 
      id="description" > 
      </center> 
      </td> 
<td> 
<center> 
<input required style="height: 35px; width: 100px;" type="text" placeholder="Unit Price" 
      name="unitPrice" 
      id="unitPrice" class="unitPrice" > 
      </center> 
      </td> 
<td> 
<center> 
<input required style="height: 35px; width: 100px;" type="text" placeholder="Amount" 
      name="amount" 
      id="amount" class="amount" > 
      </center> 
      </td> 

      <td><input type="button" class="btn btn-primary" id="addmorePOIbutton" value="Add"/></td>  
</tr>  
</table> 
+0

Вы должны использовать массив или список для заполнения нескольких Pos. –

+0

tnx много roman может уставить примеры кода? –

+0

См. Ниже мой пример кода –

ответ

0

Для преобразования данных из таблицы в списке следует использовать свойство

List<OrderEntity> list = new ArrayList<OrderEntity>(); 
//getter and setter 

public String createPO() { 
    if (isAuthorizedUser(authorizedUsers)) { 
     dao = HibernateDAOFactory.getInstance(); 
     for (List<OrderEntity> order: list){ 
     System.out.println(order.getOrderid()); 
     dao.getOrderDAO().isSaved(order); 
     } 
     return SUCCESS; 
    } 
    return logout(); 
} 

В JSP вы должны изменить имена полей ввода, так что они включают в себя привязки к свойству списка.

Вы можете использовать JavaScript, чтобы изменить имена перед отправить событие

for(var i=0; i < table.rows.length; i++) { 
    var quantity= table.rows[i].cells[0].getElementsByTagName("input"); 
    quantity[0].name= "list["+i+"].quantity"; 
    ... 
} 
+0

привет roman приятный ответ может у дать полные коды здесь..tnx много roman –

+0

может у вас полный код javascript здесь roman tnx ... им новый в java –

+0

он не доступен, вам нужно написать это самостоятельно с помощью этого ответа или отказаться от –

 Смежные вопросы

  • Нет связанных вопросов^_^