[英]Each time a page loads, how do I save the Auto Increment count in a database using Hibernate?
我有這個實體類,正在生成表,但我無法用數據填充它。
@Entity
@Table(name = "app_form_order_Id")
public class Order implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "orderId")
private Integer orderId;
public Integer getOrderId() {
return orderId;
}
public void setOrderId(Integer orderId) {
this.orderId = orderId;
}
}
現在,每次在控制器中調用此加載函數時,我們都必須增加數據庫中的數據。
@RequestMapping(value = "/ajax/form/{formId}/load", method = RequestMethod.GET)
public @ResponseBody AjaxResponseBean loadForm(HttpSession session, @PathVariable Integer formId, @RequestBody AjaxRequestBean request) {
.
.
if (!"designer".equals(request.getData().getMode())){
Order order = new Order();
}
.
.
}
這是服務類
public class OrderServiceImpl implements OrderService{
@Autowired
private OrderDao orderDao;
@Transactional(propagation = Propagation.REQUIRED, readOnly = false)
public Order addOrder(Order orderId) {
return orderDao.addOrder(orderId);
}
}
道類
public class OrderDaoImpl implements OrderDao{
@Autowired
private SessionFactory sessionFactory;
@Override
public Order addOrder(Order order) {
sessionFactory.getCurrentSession().saveOrUpdate(order);
return order;
}
有人可以幫我弄清楚如何將它鏈接到數據庫嗎?
你在這里犯了很多錯誤。
由於orderId
是自動遞增的,因此我在這里對其進行了編輯以添加lastUpdate
。
DAO類
public class OrderDaoImpl implements OrderDao{
@Autowired
private SessionFactory sessionFactory;
@Override
public void addOrder(Order order) {
sessionFactory.getCurrentSession().saveOrUpdate(order);
}
服務類
public class OrderServiceImpl implements OrderService{
@Autowired
private OrderDao orderDao;
@Transactional(propagation = Propagation.REQUIRED, readOnly = false)
public void addOrder(Order order) {
orderDao.addOrder(order);
}
}
控制器
@RequestMapping(value = "/ajax/form/{formId}/load", method = RequestMethod.GET)
public @ResponseBody AjaxResponseBean loadForm(HttpSession session, @PathVariable Integer formId, @RequestBody AjaxRequestBean request) {
if (!"designer".equals(request.getData().getMode())){
Order order = new Order();
order.setLastUpdate(new SimpleDateFormat("yyyyMMdd_HHmmss").format(Calendar.getInstance().getTime()););
orderServiceImpl.addOrder(order);
}
}
豆類
@Entity
@Table(name = "app_form_order_Id")
public class Order implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "orderId")
private Integer orderId;
@Column(name = "lastUpdate")
private Date lastUpdate;
public Integer getOrderId() {
return orderId;
}
public void setOrderId(Integer orderId) {
this.orderId = orderId;
}
public Date getLastUpdate() {
return lastUpdate;
}
public void setLastUpdate(Date lastUpdate) {
this.lastUpdate = lastUpdate;
}
}
這是粗略鍵入的代碼。 請嘗試一下。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.