fix(structs): limit user form validation to add/update flows

This commit is contained in:
likingcode
2026-03-10 00:24:29 +08:00
parent ebe4f0467c
commit 67f800c3cb
2 changed files with 8 additions and 0 deletions

View File

@@ -13,6 +13,7 @@ import java.util.List;
* - 动态方法调用 * - 动态方法调用
*/ */
public class UserFormAction extends ActionSupport { public class UserFormAction extends ActionSupport {
private String actionName;
private static List<User> users = new ArrayList<>(); private static List<User> users = new ArrayList<>();
private static Long idCounter = 1L; private static Long idCounter = 1L;
@@ -70,6 +71,9 @@ public class UserFormAction extends ActionSupport {
@Override @Override
public void validate() { public void validate() {
if (!("user_add".equals(actionName) || "user_update".equals(actionName))) {
return;
}
if (user == null) { if (user == null) {
return; return;
} }
@@ -93,6 +97,8 @@ public class UserFormAction extends ActionSupport {
public List<User> getUserList() { return userList; } public List<User> getUserList() { return userList; }
public void setUserList(List<User> userList) { this.userList = userList; } public void setUserList(List<User> userList) { this.userList = userList; }
public String getActionName() { return actionName; }
public void setActionName(String actionName) { this.actionName = actionName; }
// 内部类 - 用户实体 // 内部类 - 用户实体
public static class User { public static class User {

View File

@@ -85,6 +85,7 @@
</action> </action>
<action name="user_add" class="com.example.struts2.UserFormAction" method="add"> <action name="user_add" class="com.example.struts2.UserFormAction" method="add">
<param name="actionName">user_add</param>
<result type="redirectAction">user</result> <result type="redirectAction">user</result>
<result name="input">/user-form.jsp</result> <result name="input">/user-form.jsp</result>
</action> </action>
@@ -94,6 +95,7 @@
</action> </action>
<action name="user_update" class="com.example.struts2.UserFormAction" method="update"> <action name="user_update" class="com.example.struts2.UserFormAction" method="update">
<param name="actionName">user_update</param>
<result type="redirectAction">user</result> <result type="redirectAction">user</result>
<result name="input">/user-form.jsp</result> <result name="input">/user-form.jsp</result>
</action> </action>