From e823c424891be5d0ea95e714c333d1d6b66be3e9 Mon Sep 17 00:00:00 2001 From: Jame <3525166560@qq.com> Date: Fri, 28 Jun 2024 06:51:12 +0000 Subject: [PATCH] =?UTF-8?q?add=20Java/abstract.java.=20=E7=A7=B0=E4=B9=8B?= =?UTF-8?q?=E4=B8=BA=E6=88=91=E8=A7=81=E8=BF=87=E7=9A=84=E7=9C=9F=E7=9A=84?= =?UTF-8?q?=E6=9C=80=E6=8A=BD=E8=B1=A1=E7=9A=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Jame <3525166560@qq.com> --- Java/abstract.java | 109 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 109 insertions(+) create mode 100644 Java/abstract.java diff --git a/Java/abstract.java b/Java/abstract.java new file mode 100644 index 0000000..527db76 --- /dev/null +++ b/Java/abstract.java @@ -0,0 +1,109 @@ +@Controller +public class XXXController { + + /** + * 真事,之前的公司项目就是这样的,我都看傻了 + * 一个controller直接掌管全局,根据入参的"cmd"参数来控制到底走那个处理 + * 你可能会问,那传json怎么传呢?哎!人家自有妙招 直接转字符串传入,然后在转Map处理 + * 无论是普通的请求,还是下载文件等等,只要是请求,就都请求这个一个接口 + * @param req + * @param res + */ + @RequestMapping(value = "/xxx", method = {RequestMethod.GET}) + public void xxx(HttpServletRequest req, HttpServletResponse res) { + A a = new A(); + B b = new B(); + C c = new C(); + if (a.invoke(req, res)) return; + if (b.invoke(req, res)) return; + if (c.invoke(req, res)) return; + } + +} + +class A { + + public boolean invoke(HttpServletRequest req, HttpServletResponse res) { + int cmd = Integer.parseInt(req.getParameter("cmd")); + int c = 6000; + if (cmd == c) { + //一顿操作 + return true; + } else if (cmd == c + 1) { + //一顿操作 + return true; + } else if (cmd == c + 2) { + //一顿操作 + return true; + } else if (cmd == c + 3) { + //一顿操作 + return true; + } else if (cmd == c + 4) { + //一顿操作 + return true; + } else if (cmd == c + 5) { + //一顿操作 + return true; + } + return false; + } + +} + +class B { + + public boolean invoke(HttpServletRequest req, HttpServletResponse res) { + int cmd = Integer.parseInt(req.getParameter("cmd")); + int c = 7000; + if (cmd == c) { + //一顿操作 + return true; + } else if (cmd == c + 1) { + //一顿操作 + return true; + } else if (cmd == c + 2) { + //一顿操作 + return true; + } else if (cmd == c + 3) { + //一顿操作 + return true; + } else if (cmd == c + 4) { + //一顿操作 + return true; + } else if (cmd == c + 5) { + //一顿操作 + return true; + } + return false; + } + +} + +class C { + + public boolean invoke(HttpServletRequest req, HttpServletResponse res) { + int cmd = Integer.parseInt(req.getParameter("cmd")); + int c = 8000; + if (cmd == c) { + //一顿操作 + return true; + } else if (cmd == c + 1) { + //一顿操作 + return true; + } else if (cmd == c + 2) { + //一顿操作 + return true; + } else if (cmd == c + 3) { + //一顿操作 + return true; + } else if (cmd == c + 4) { + //一顿操作 + return true; + } else if (cmd == c + 5) { + //一顿操作 + return true; + } + return false; + } + +} \ No newline at end of file -- Gitee