8月7号 连接ftp | Mapstruct 实体间的转换 | PD模型逆向生成 | 接口请求日志记录

 

 

 

1、连接ftp

输入主机号一直连接不上, 前面加上ftps:// 主机 OK

 

 

2、Mapstruct

https://blog.csdn.net/lx_yoyo/article/details/75061614

 pom

        
        <!-- mapstruct -->
        <dependency>
            <groupId>org.mapstruct</groupId>
            <artifactId>mapstruct-jdk8</artifactId>
            <version>1.2.0.CR1</version>
        </dependency>
        <dependency>
            <groupId>org.mapstruct</groupId>
            <artifactId>mapstruct-processor</artifactId>
            <version>1.2.0.CR1</version>
            <scope>provided</scope>
        </dependency>

 

entity

public class Car {

    private String name;
    private int id;
    private String brand;

 

dto

public class CarDTO {
    private String name;
    private String brand;

 

mapper

import org.mapstruct.Mapper;


@Mapper(componentModel = "spring")
public interface CarMapStruct {

    Car dtoToEntity(CarDTO dto);
}

 

controller

    @RequestMapping(value = "/car/add")
    @ResponseBody
    public Car details(@RequestBody CarDTO dto){
        Car car = carMapper.dtoToEntity(dto);
        car.setId(1);
        return car;
    }

 

需求:

新增car 方法,用DTO接收参数,转换成Car 对象

 

注意:这里持久层用的mybatis 

CarMapStruct  没有取名CarMapper 否则会提示缺xml 文件
且一定要加上 @Mapper(componentModel = "spring")

 

没有让mybatis 扫描成mapper 包名也是test
测试

 

结果:

 

# 两个对象转成DTO #
    @RequestMapping(value = "/detail/{id}")
    @ResponseBody
    public GoodInfoDTO details(@PathVariable("id")int id){
        GoodInfo goodInfo = GoodInfo.getGoodInfo(id);
        GoodType goodType = GoodType.getGoodInfo(id);
        return goodInfoMapper.fromGoodInfoDTO(goodInfo,goodType);
    }

@Mapper(componentModel = "spring")
public interface GoodInfoMapStruct {
    @Mappings({
            @Mapping(source = "type.name",target = "typeName"),
            @Mapping(source = "good.id",target = "goodId"),
            @Mapping(source = "good.title",target = "goodName"),
            @Mapping(source = "good.price",target = "goodPrice")
    })
    GoodInfoDTO fromGoodInfoDTO(GoodInfo good, GoodType type);
}

 

### eclipse 要下载插件才可以正常使用

在market里下载m2e-apt就可以了。

 POM 里加上

<properties>
        <m2e.apt.activation>jdt_apt</m2e.apt.activation>
</properties>

 

就可以看到这个

参考:https://blog.csdn.net/u014519194/article/details/54410391 

 

3、PD模型 逆向生成代码错误

 

PD 里面类型弄错了 应该是varchar 

这样生成表

逆向工程生成代码会错

 

 

 #### 一开始我用逆向工程的时候,

        <table schema="" tableName="bbs_banner" ></table>

 

没有写完整

        <table schema="" tableName="bbs_banner" domainObjectName="BbsBanner"></table>

开始我以为是没有写domain的缘故,后来我就全部写了,写了三十几个,生成发现都有问题

当你发现有问题的时候,写两三个看看,是不是这里的问题。

写完了生成发先不是这个原因,浪费了时间

 

4、接口请求日志记录

 @Login
    @ApiOperation(value="角色列表查询")
    @PostMapping(value="/getlist")
    public ResponseEntity<HttpResponse> getList(@RequestBody PageRequest request) throws URISyntaxException {
        log.info("#角色列表查询#" + JsonUtils.obj2str(request));

参数是统一写成request ,用一个工具类将参数转成json 然后写到日志里

 

posted @ 2018-08-07 09:24  lyon♪♫  阅读(373)  评论(0编辑  收藏  举报