小编use*_*122的帖子

Spring MVC - 表单的多个提交按钮

我试图将2个提交按钮发布到表单,每个按钮操作映射到不同的控制器.这是我的映射

@RequestMapping(value="/save", method=RequestMethod.POST, params="save")
@RequestMapping(value="/save", method=RequestMethod.POST, params="renew")
Run Code Online (Sandbox Code Playgroud)

我的提交按钮看起来像这些 -

<input type="submit" name="save" class="button" value="Save" />
<input type="submit" name="renew" class="button" value="Renew" />
Run Code Online (Sandbox Code Playgroud)

从我的映射中可以看出,我依靠使用params来区分点击的按钮.问题是它有90%的时间有效,但有时我会得到以下例外 -

java.lang.IllegalStateException: Ambiguous handler methods mapped for HTTP path 'http://localhost:8090/myapp/save': {public java.lang.String com.myapp.SaveController.save(MyEntity,javax.servlet.http.HttpSession), public java.lang.String com.myapp.SaveController.saveAndRenew(MyEntity,javax.servlet.http.HttpSession)}
org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.lookupHandlerMethod(AbstractHandlerMethodMapping.java:248)
org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.getHandlerInternal(AbstractHandlerMethodMapping.java:194)
Run Code Online (Sandbox Code Playgroud)

奇怪的是,当这种情况发生并重新提交页面时,一切都运行良好.有没有更好的方法来实现我想要做的事情?

谢谢!

java spring controller

38
推荐指数
4
解决办法
8万
查看次数

PostgreSQL - 使用子查询更新多个列值

我需要能够使用子查询的结果更新表上的多个列.一个简单的例子如下所示 -

UPDATE table1
SET (col1, col2) =
  ((SELECT MIN (ship_charge), MAX (ship_charge) FROM orders))
WHERE col4 = 1001; 
Run Code Online (Sandbox Code Playgroud)

我怎么能在PostgreSQL中做到这一点?

谢谢你的任何提示!

更新:我为使样本对我的实际用例过于简单而道歉.以下查询更准确 -

UPDATE table1
SET    (TOTAL_MIN_RATE, TOTAL_MAX_RATE) = (SELECT AVG(o.MIN_RATE), AVG(o.MAX_RATE)
                           FROM   ORDR o INNER JOIN table2 ba ON (o.PAY_ACCT_ID = ba.ACCT_ID) 
                                         INNER JOIN table3 mb ON (ba.BANK_ID = mb.BANK_ID)
                               WHERE  ba.CNTRY_ID = table1.CNTRY_ID AND 
                                              o.STUS_CD IN ('01','02','03','04','05','06') AND
                                  ((o.FRO_CRNCY_ID = table1.TO_CRNCY_ID AND o.TO_CRNCY_ID = table1.FRO_CRNCY_ID) OR
                                   (o.TO_CRNCY_ID = table1.TO_CRNCY_ID AND o.FRO_CRNCY_ID = table1.FRO_CRNCY_ID))   
                               GROUP BY ba.CNTRY_ID)
Run Code Online (Sandbox Code Playgroud)

postgresql subquery

31
推荐指数
4
解决办法
5万
查看次数

Javascript - 在提交表单之前删除隐藏字段或设置为空


我想在使用复选框上的 onclick 事件执行 POST 操作之前删除 2 个隐藏字段或在表单中将它们设置为 null。

这就是我所拥有的——

<input type="hidden" id="ci" name="ci" value="2"/>
<input type="hidden" id="pg" name="pg" value="prev"/>

<form:checkboxes path="choices" items="${lookups}" itemValue="id" itemLabel="label" element="li" **onclick="this.form.submit();"**/>
Run Code Online (Sandbox Code Playgroud)

如何修改我的 onclick 事件 JS 以支持此功能?

谢谢!

html javascript forms dom

3
推荐指数
1
解决办法
2万
查看次数

使用带有子选择的更新的 PostgreSQL 记录重新排序

我在 SQL Server 论坛上找到了有关如何对表中的记录重新排序的解决方案。

UPDATE SomeTable
SET rankcol = SubQuery.Sort_Order
FROM
    (
    SELECT IDCol, Row_Number() OVER (ORDER BY ValueCOL) as SORT_ORDER
    FROM SomeTable
    ) SubQuery
INNER JOIN SomeTable ON
SubQuery.IDCol = SomeTable.IDCol
Run Code Online (Sandbox Code Playgroud)

当我尝试在 PostgreSQL 上做同样的事情时,我收到一条错误消息 -

错误:多次指定表名“sometable”

任何帮助将不胜感激。

谢谢!

postgresql

2
推荐指数
1
解决办法
2644
查看次数

标签 统计

postgresql ×2

controller ×1

dom ×1

forms ×1

html ×1

java ×1

javascript ×1

spring ×1

subquery ×1