我试图将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)
奇怪的是,当这种情况发生并重新提交页面时,一切都运行良好.有没有更好的方法来实现我想要做的事情?
谢谢!
我需要能够使用子查询的结果更新表上的多个列.一个简单的例子如下所示 -
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) 我想在使用复选框上的 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 以支持此功能?
谢谢!
我在 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
controller ×1
dom ×1
forms ×1
html ×1
java ×1
javascript ×1
spring ×1
subquery ×1