冬天的傻瓜 2022-08-05 09:24 采纳率: 100%
浏览 44
已结题

springboot contriller参数类如何添加管理

在初步参与java springboot 的项目,关于参数的定义一般怎么做的比较迷糊。
比如我定义一个完整的用户类型为
class UserInfo {
Long userId;
String userName;
String pwd;
String mobile;
String email;
}
但是在接口设计的时候,用户添加接口仅用到了其中userName, pwd, mobile和email字段,并没有userId字段。
用户登录接口则一般嘛只需要mobile和pwd,或者是email和pwd。
这种情况下,我是针对用户添加接口和用户登录接口专门增加对应的参数类,还是直接使用UserInfo类?
感觉如果是针对用户添加接口和用户登录接口专门增加对应的参数类,那么在使用swagger的时候自动生成的接口文档参数都是正确的,但是代码里类可能就会特别多。但是如果大家都使用UserInfo,那么swagger生成的接口参数里面很多属性都是接口不用的,对前端也是问题
有没有什么方法是可以既让接口没有多余的参数,又可以尽量少的避免添加过多的类的?一般项目里会怎么做?

  • 写回答

3条回答 默认 最新

  • 专家-郭老师 Java领域新星创作者 2022-08-05 09:34
    关注

    1.接口参数≤2个参数的时候,直接写参数。
    2.≥2个参数的时候,就需要写个对应的参数类,切记不是用数据库表对应的实体类。而是自己创建。因为要保证数据库表对应实体类的干净。
    3.你要是嫌定义参数类麻烦,你可以使用Map去接收参数。(但是不推荐)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 8月13日
  • 已采纳回答 8月5日
  • 创建了问题 8月5日

悬赏问题

  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。
  • ¥20 CST怎么把天线放在座椅环境中并仿真