JAVA 开发中 常用

(1)诺依项目运行条件:
    1.  java环境 配置好
    2.  先 启动redis   重重重 
    3.  在 启动后台   ruoyi-admin   运行项目  D:\java\WeiCar-Server\ruoyi-admin\src\main\java\com\ruoyi\RuoYiApplication.java  启动
    4. 最后 启动vue(新项目启动vue  先要npm i) 切换到 ruoyi-ui目录下  linux:命令   npm run dev
    5.  vue关闭 ctrl+c  

(2)spring boot  后端接口部分文件名称
        SysPostController.java:岗位管理模块controller控制层文件;

    ISysPostService.java:岗位管理模块service业务层接口定义文件;

    SysPostServiceImpl.java:岗位管理模块service业务层接口实现文件;

    SysPostMapper.java:岗位管理模块dao数据持久层接口定义文件;

    SysPostMapper.xml:岗位管理模块dao数据持久层接口实现文件;

    SysPost.java:岗位管理模块pojo实体类文件;

(3)数据层处理的一些方法
    这个BaseMapper接口定义了一系列与数据库操作相关的方法,主要用于CRUD(创建、读取、更新、删除)操作。下面是对每个方法的解释:
    insert(T entity): 插入一个实体到数据库中。
    deleteById(Serializable id): 根据ID删除一个实体。
    deleteById(T entity): 根据实体本身(可能是某些特定的字段)删除一个实体。
    deleteByMap(Map<String, Object> columnMap): 根据传入的列名和值映射删除匹配的实体
    delete(Wrapper<T> queryWrapper): 使用查询包装器删除匹配的实体。
    deleteBatchIds(Collection<?> idList): 批量删除给定ID列表中的实体。
    updateById(T entity): 根据ID更新一个实体的信息。
    update(T entity, Wrapper<T> updateWrapper): 使用实体和更新包装器更新匹配的实体。
    selectById(Serializable id): 根据ID查询一个实体。
    selectBatchIds(Collection<? extends Serializable> idList): 批量查询给定ID列表中的实体。
    selectByMap(Map<String, Object> columnMap): 根据传入的列名和值映射查询匹配的实体列表。
    以下是默认方法,即这些方法在接口中直接提供了实现,不需要子类去实现:
    selectOne(Wrapper<T> queryWrapper): 查询单个实体。如果查询结果不是恰好一个,则抛出异常。
    exists(Wrapper<T> queryWrapper): 检查是否存在匹配的实体。
    selectCount(Wrapper<T> queryWrapper): 查询匹配的实体数量。
    selectList(Wrapper<T> queryWrapper): 查询匹配的实体列表。
    selectMaps(Wrapper<T> queryWrapper): 查询匹配的实体,并将结果转换为Map列表。
    selectObjs(Wrapper<T> queryWrapper): 查询匹配的实体,并将结果转换为Object列表。
    selectPage(P page, Wrapper<T> queryWrapper): 分页查询匹配的实体,其中P是IPage<T>或其子类的类型参数。
    selectMapsPage(P page, Wrapper<T> queryWrapper): 分页查询匹配的实体,并将结果转换为Map列表。
    这里的Wrapper<T>可能是一个用于构建查询条件的工具类,它允许用户以更灵活的方式构建查询条件。IPage<T>可能是一个分页相关的接口或类,    用于处理分页查询的结果。

(4)实体类  ---验证不为空处理
     @NotNull(message = "验证所有类型 ")  
    @NotBlank(message = "验证字符串")  
        @Min(value = 1, message = "部门编号必须大于0") 

(5) 添加一个公共类
    D:\java\WeiCar-Server\ruoyi-common\src\main\java\com\ruoyi\common\config\RestTemplateConfig.java

(6)使用配置类  获取参数
   @Value("${php.requestUrl}")
    private  String requestUrl;

(7).数据交互
    LambdaQueryChainWrapper 提供了多种查询方式以满足不同的查询需求。你可以根据需要选择适合的查询方法:

        WeiCarInformation carInformation = new LambdaQueryChainWrapper<>(weiCarInformationMapper)
                .eq(WeiCarInformation::getFlowId, carPriceEvaluationVo.getFlowId())
                .eq(WeiCarInformation::getDel, DelFlagEnum.UN_DEL.getStatus())
                .eq(WeiCarInformation::getStatus, DataStatusEnum.ENABLE.getStatus())
                .one();
    list(): 获取列表
    one(): 获取单条记录
    oneOpt(): 获取单条记录(Optional包装)
    listObjs(): 获取单个字段的列表
    count(): 获取记录数
    exists(): 判断记录是否存在-->>返回布尔值true,false
    page(): 分页查询
    listMaps(): 获取记录映射为 Map
    listObjs(Function<R, Object> mapper): 使用自定义映射函数获取单个字段的列表
    .eq()(等于)
    .gt()(大于)、.lt()(小于)、.ge()(大于等于)和.le()(小于等于)in(参数,第一个值,第二个值)(或者满足2个条件)

(8)DTO使用方式

创建dto  xml调用

(9)数据库类型 字典名称的调用
    weiGuaranteeList-----查询得到的参数
    WeiGuarantee-----实体类
    "wei_work_situation",-----字典的类型
      String.valueOf(contact.getPost()),-----数据库的字段
      contact::setRelationName------需要赋值的字段
             if (!weiGuaranteeList.isEmpty()) {
                    for (WeiGuarantee contact : weiGuaranteeList) {
                        DictConverterUtils.mapDictValueToLabel(
                                "wei_work_situation",
                                String.valueOf(contact.getPost()),
                                contact::setPostName
                        );
                    }
            }


(10).类型转换
//        String newPlanIdAsString = newPlanId.toString();//转字符串
//        int newPlanIdAsInt = Integer.parseInt(newPlanIdAsString);//转int

(11).查询列表拼接
    public AjaxResult userRiskList(Long flowId) {

        //查询主借人
        List<WeiCustomer> customersList = new LambdaQueryChainWrapper<WeiCustomer>(weiCustomerMapper)
                .eq(WeiCustomer::getFlowId, flowId)
                .eq(WeiCustomer::getDel, DelFlagEnum.UN_DEL.getStatus())
                .list();
        //查询担保人
        List<WeiGuarantee> guaranteeList = new LambdaQueryChainWrapper<WeiGuarantee>(weiGuaranteeMapper)
                .eq(WeiGuarantee::getFlowId, flowId)
                .eq(WeiGuarantee::getDel, DelFlagEnum.UN_DEL.getStatus())
                .list();

        List<UserRiskListDto> contactInfoList = Stream.concat(
                customersList.stream().map(customer -> new UserRiskListDto(
                        customer.getName(), customer.getIdNo(), customer.getTel(),"1")),
                guaranteeList.stream().map(guarantee -> new UserRiskListDto(
                        guarantee.getName(), guarantee.getIdNo(), guarantee.getTel(),"2"))
        ).collect(Collectors.toList());

        return AjaxResult.success("成功",contactInfoList);
    }

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值