internship:逐渐迈向项目开发

之前写的接口只是用于返回json格式数据,一开始不会去参与正式的项目编写代码,而是负责人会发一些文本具体内容就是json格式数据,先以集合框架来编写。之后在理解了一定的业务逻辑后编写接口实现数据回显,进一步再把之前用map list等集合框架实现的,封装成类其中需要加上swagger之类的注解,也即今天所需要做的。

经过几次的试错,逐渐把整个给参考的项目代码深入了解,具体的springboot在干什么以及MyBatis-Plus的便捷之处,以及建立在MyBatis使用基础之上如何的理解MyBatis-Plus的运作机制。以及整个项目所看见的实体类,一部分是依据数据库表建立的,一部分是word文档或者Excel表提取到的。当然这里给的是json格式数据文本,直接转实体类即可,蛮好的工具集成网站。分清Json格式数据的花括号和中括号 所代表的意思,是整个类包含了其他实体类的实例化 还是分开的单独实体类。

较之前的map写的 改为实体类来实现:

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.util.List;
@Data
@Accessors(chain = true)
public class ModuleDemoInfo {

    @ApiModelProperty(value = "xaxis")
    private List<Integer> xaxis;

    private Yaxis1 yaxis=new Yaxis1();
    private Yaxis1 yaxis11=new Yaxis1();
    private Yaxis1 yaxis12=new Yaxis1();

    @ApiModelProperty(value = "yaxis1")
    private List<Yaxis1> yaxis1;

    @ApiModelProperty(value = "yaxis2")
    private List yaxis2;

public ModuleDemoInfo()
{

}
    @Data
    @Accessors(chain = true)
    public  class Yaxis1
    {
        @ApiModelProperty(value = "ybgg")
        private double ybgg;

        @ApiModelProperty(value = "zfxjj")
        private double zfxjj;

        @ApiModelProperty(value = "gyzcjy")
        private double gyzcjy;

        @ApiModelProperty(value = "shbzjj")
        private double shbzjj;

        @ApiModelProperty(value = "total")
        private double total;
        public Yaxis1()
        {

        }
    }

}

service接口实现类:

 @Override
    public List<ModuleDemoInfo> arg2() throws ClassNotFoundException, NoSuchMethodException, IllegalAccessException, InvocationTargetException, InstantiationException {

            List<ModuleDemoInfo> list=new ArrayList<>();
            List<Integer> intList=new ArrayList<>();
            ModuleDemoInfo moduleDemoInfo=new ModuleDemoInfo();


            List list1=new ArrayList();

        moduleDemoInfo.getYaxis().setGyzcjy(0.29);
        moduleDemoInfo.getYaxis().setZfxjj(1404.3);
        moduleDemoInfo.getYaxis().setShbzjj(0.0);
        moduleDemoInfo.getYaxis().setYbgg(137631.17);
        moduleDemoInfo.getYaxis().setTotal(139035.76);

        moduleDemoInfo.getYaxis11().setGyzcjy(0.0);
        moduleDemoInfo.getYaxis11().setZfxjj(0.0);
        moduleDemoInfo.getYaxis11().setShbzjj(0.0);
        moduleDemoInfo.getYaxis11().setYbgg(0.0);
        moduleDemoInfo.getYaxis11().setTotal(0.0);

        moduleDemoInfo.getYaxis12().setGyzcjy(0.0);
        moduleDemoInfo.getYaxis12().setZfxjj(0.0);
        moduleDemoInfo.getYaxis12().setShbzjj(0.0);
        moduleDemoInfo.getYaxis12().setYbgg(0.0);
        moduleDemoInfo.getYaxis12().setTotal(0.0);

        list1.add(moduleDemoInfo.getYaxis());
        list1.add( moduleDemoInfo.getYaxis11());
        list1.add(moduleDemoInfo.getYaxis12());


       intList.add(2022);
       intList.add(2021);
       intList.add(2020);

       moduleDemoInfo.setXaxis(intList);
       moduleDemoInfo.setYaxis1(list1);
       moduleDemoInfo.setYaxis2(list1);
       list.add(moduleDemoInfo);
            return list;
        }

接口:

@RequestMapping("/Demo")
@RestController
@Api(tags = "demo 1/2")
@Validated
@Slf4j
public class DemoController {
    @Resource
    private DemoService demoService;

    @RequestMapping(value = "/arg1",method = RequestMethod.GET)
    @ApiOperation(value = "详细坐标参数")
    @ApiOperationSupport(order=2)
    public ResponseData<List<ModuleDemoInfo>> listResponseData() throws ClassNotFoundException, NoSuchMethodException, InvocationTargetException, InstantiationException, IllegalAccessException {

        return new ResponseData<>(demoService.arg2());
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值