百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

.NET 转JAVA(.net 转java代码)

bigegpt 2024-08-03 11:33 5 浏览

string.Join

// C#
string.Join(",", yiZhuYCMCs)
// Java
yiZhuYCMCs.stream().collect(Collectors.joining(","))

Concat

//#c
var zhuYuanYZXXList = yiZhuXXSaveDto.AddZhuYuanYZXXList.Concat(yiZhuXXSaveDto.UpdateZhuYuanYZXXList).ToList();
//Java
var zhuYuanYZXXList = Stream.concat(yiZhuXXSaveDto.getAddZhuYuanYZXXList().stream(),yiZhuXXSaveDto.getUpdateZhuYuanYZXXList().stream()).collect(toList());

Any

// c#
list.Any()
// Java
list.stream().anyMatch(element -> true);
// c#
!list.Any()
// Java
list.stream().noneMatch(element->true);

All

// c#
list.All()
// Java
list.stream().allMatch(element->true);

ToList

// 简单转为list
// 写法一
shenQingDanList.stream().toList(); 
// 写法二
shenQingDanList.stream().collect(Collectors.toList()); 
// 如果需要对返回的对象进行更多控制,请参照写法二
// 比如根据字段分组
var groupList = shenQingDanXXList.stream().collect(Collectors.groupingBy(s -> s.getShenQingDanDto().getId()));
// 比如集合的元素根据分隔符拼接成字符串
var ids = shouShuHZXXList.stream()
                    .map(SM_SQ_ShenQingDHZXXDto::getZhuYuanJZID)
                    .distinct()
                    .collect(Collectors.joining(","));

Select

// 获取对象中的某一字段
shenQingDanList.stream().map(BaseDto::getId).collect(Collectors.toList());
//采用回调函数,返回对象             
List<SM_SQ_NiShouShuXX> list = niShouShuList.stream().map(o -> {
    SM_SQ_NiShouShuXX niShouShuXX = new SM_SQ_NiShouShuXX();
    niShouShuXX.setZhuCiShouShuMC(o.getZhuShouSBZ() == 1 ? "主手术" : "次手术");
    niShouShuXX.setShouShuMCID(o.getShouShuMCID());
    niShouShuXX.setShouShuMC(o.getShouShuMC());
    niShouShuXX.setShouShuBW(o.getShouShuBW());
    niShouShuXX.setQieKouLBDM(o.getQieKouLBDM());
    niShouShuXX.setQieKouLBMC(o.getQieKouLBMC());
    niShouShuXX.setShouShuJBDM(o.getShouShuJBDM());
    niShouShuXX.setShouShuJBMC(o.getShouShuJBMC());
    niShouShuXX.setZhuShouShuBZ(o.getZhuShouSBZ());
    niShouShuXX.setShouShuMCQZ(o.getShouShuMCQZ());
    niShouShuXX.setShouShuMCHZ(o.getShouShuMCHZ());
    niShouShuXX.setId(o.getId());
    return niShouShuXX;
}).collect(Collectors.toList());
// c#select返回new字段
var xinZengLinChuangXMSs = yiZhuXXSaveDto.AddZhuYuanYZXXList.Where(x => x.LinChuangLJDRBZ == 1 || !string.IsNullOrWhiteSpace(x.LinChuangLJBRXMID)).Select(x => new { x.LinChuangLJDRBZ, x.LinChuangLJBRXMID });
// Java
var xinZengLinChuangXMSs = yiZhuXXSaveDto.getAddZhuYuanYZXXList().stream().filter(o -> o.getLinChuangLJDRBZ() == 1 && !o.getLinChuangLJBRXMID().isEmpty()).map(t->new Object(){
            public Integer LinChuangLJDRBZ = t.getLinChuangLJDRBZ();
            public String LinChuangLJBRXMID = t.getLinChuangLJBRXMID();
        }).collect(Collectors.toList());

Where

List<SM_SQ_ShenQingDMXDto> filteredDMXList = shenQingDMXList.stream()
    .filter(x -> Objects.equals(x.getShenQingDID(), s.getId()))
    .collect(Collectors.toList());

FirstOrDefault

// 获取集合的第一个对象
// c#
var first = list.FirstOrDefault();
// java
var first = list.findFirst().orElse(null);

// 获取集合的第一个对象的某个属性
// c#
var shouShuMC = list.FirstOrDefault()?.ShouShuMC;
//java 
String shouShuMC = list.stream().findFirst().map(SM_SQ_ShenQingDWJZDto::getShouShuMC).orElse("");

Distinct

// 简单用法
var list= list.stream().distinct().toList();
//根据指定属性移除重复的对象
var shouShuHZXXList = ExpressionUtils.removeDuplicateObjects(shouShuHZXXList, SM_SQ_ShenQingDHZXXDto::getZhuYuanJZID);

Order、OrderByDescending

// 根据ZhuShouSBZ字段降序
var niShouShuList = shenQingDMXXX.stream()
        .filter(o -> o.getShuHouSSBZ() == 0)
        .sorted(Comparator.comparing(SM_SQ_ShenQingDMXModel::getZhuShouSBZ).reversed())
        .collect(Collectors.toList()); 
// 根据ZhuShouSBZ字段升序
var niShouShuList = shenQingDMXXX.stream()
        .filter(o -> o.getShuHouSSBZ() == 0)
        .sorted(Comparator.comparing(SM_SQ_ShenQingDMXModel::getZhuShouSBZ))
        .collect(Collectors.toList()); 
// 根据多个字段升序
var shiJiSSList = shenQingDMXXX.stream()
        .sorted(Comparator.comparing(SM_SQ_ShenQingDMXModel::getZhuShouSBZ)
                .thenComparing(SM_SQ_ShenQingDMXModel:: getShenQingDID))
		.collect(Collectors.toList());
// java在内存里面排序时里面字段如果是null会报空指针
var yiAnPList = yiAnPList.stream()
		.sorted(comparing(SM_SQ_ShenQingDXQDto::getShouShuJDM,
                          Comparator.nullsLast(String::compareTo))
        .thenComparing(SM_SQ_ShenQingDXQDto:: getAnPaiSJ))
		.collect(Collectors.toList());
//c#
var chuYuanYZ = checkYiZhuXXs.OrderByDescending(x=>x.KaiShiSJ).FirstOrDefault(o => o.ZuZhiJGID == zuZhiJGID
                                                    && o.ZhuYuanJZID == yiZhuXXSaveDto.ZhuYuanJZID
                                                    && o.YiZhuZTDM != YiZhuZTEnum.YiCheXiao.ToEnumString()
                                                    && o.YiZhuFLDM == YiZhuFLDMEnum.ZhiLiao.ToEnumString()
                                                    && o.YiZhuLXDM == YZ_ZD_YiZhuLX.ChuYuan.ToEnumString());
// Java
 var chuYuanYZ = checkYiZhuXXs.stream().filter(o -> zuZhiJGID.equals(o.getZuZhiJGID()) 
                && yiZhuXXSaveDto.getZhuYuanJZID().equals(o.getZhuYuanJZID())
                && YiZhuConstant.YiZhuZTEnum.YiCheXiao.getDescription().equals(o.getYiZhuZTDM())
                && YiZhuConstant.YiZhuFLDMEnum.ZhiLiao.getDescription().equals(o.getYiZhuFLDM()) 
                && YiZhuConstant.YZ_ZD_YiZhuLX.ChuYuan.getDescription().equals(o.getYiZhuLXDM()))
                .sorted(Comparator.comparing(YZ_ZY_YiZhuXXModel::getKaiShiSJ).reversed()).findFirst().orElse(null);

groupBy casewhen

        QSM_ZD_ShuJuYLBModel model = QSM_ZD_ShuJuYLBModel.sM_ZD_ShuJuYLBModel;

        Expression<String> alias = new CaseBuilder().when(model.shuJuYLBID.eq("SM0001")).then("001").otherwise("other").as("test");
        StringPath cAlias = Expressions.stringPath("test");

        JPAQuery<Tuple> jpaQuery = new JPAQueryFactory(entityManager).select(alias, model.count()).from(model);
        List<Tuple> fetch = jpaQuery.groupBy(cAlias).fetch();

notExists

@Query

    @Query("select s from  SM_SQ_ShenQingDanModelTest as s where not  exists(select 1  from SM_SQ_ShenQingDanModelTest as s1 where s1.zuZhiJGID=s.zuZhiJGID )")

QueryDSL

QSM_SQ_ShenQingDanModelTest s = QSM_SQ_ShenQingDanModelTest.sM_SQ_ShenQingDanModelTest;
        QSM_SQ_ShenQingDanModelTest s1 = new QSM_SQ_ShenQingDanModelTest("s1");

        BooleanExpression notExists = new JPAQuery<>(entityManager)
                .from(s1)
                .where(s1.zuZhiJGID.eq(s.zuZhiJGID))
                .notExists();

        JPAQuery<SM_SQ_ShenQingDanModelTest> query = new JPAQuery<>(entityManager);
        query.select(s).from(s).where(notExists);
        List<SM_SQ_ShenQingDanModelTest> result = query.fetch();

??操作符

// C#
var dangQianZTDMs = shouShuZT ?? "";  
//java
var dangQianZTDMs = Optional.ofNullable(shouShuZT).orElse(""); 

判断相等

// 两个对象属性之间的比较使用Objects.equals()方法进行比较
if(Objects.equals(a,b)){
   
}
// 常量比较的时候,常量需要放到前面
if (ShouMaConstant.SSZT_YIANPAI.equals(shenQingDan.getDangQianZTDM())) {
    //...
}

MapTo

// c#
var shouShuGLXQ = row.MapTo<SM_SQ_ShenQingDXQDto, SM_SQ_ShouShuGLXQ>(); 

// 单个对象自动映射
var shouShuGLXQ = MapUtils.copyProperties(row,SM_SQ_ShouShuGLXQ::new);
var shouShuGLXQ = MapUtils.copyProperties(row,SM_SQ_ShouShuGLXQ::new,(a,b)->{
   //...
});
// 集合自动映射
var shenQingDMXList = MapUtils.copyListProperties(shenQingDMXmodelList, SM_SQ_ShenQingDMXDto::new);
 

Merge

// java
MapUtils.mergeProperties(updateDto, shenQingDXX);

//C# merge 时,忽略医嘱id,医嘱名称
shenQingDan.MergeWithIgnore(updateDto.ShenQingDXX, o => new { o.YiZhuID, o.YiZhuMC });

//JAVA merge 时,忽略医嘱id,医嘱名称
MapUtils.mergeProperties(updateDto.getShenQingDXX(), shenQingDan, (a, b) -> {
    b.setYiZhuID(b.getYiZhuID());
    b.setYiZhuMC(b.getYiZhuMC());
});

String拼接时 null表现不同

// c#
shouShuSQD.NianLing + shouShuSQD.NianLingDW  // 返回 "24岁"
// java
shouShuSQD.NianLing + shouShuSQD.NianLingDW //返回 "24岁null"
// 要改成
StringUtil.join("",  jiuZhenXX.getNianLing().toString(),  jiuZhenXX.getNianLingDW())

RemoteHelpers

//对应着c#中调用远程后是否调用成功,失败报错(判断code)
var rso = RemoteHelper.getData(yiZhuRemoteService.cheXiaoZYYZ(yiZhuCXDtoList),"医嘱撤销失败");

JPA

官方文档:

  • 添加、更新直接调用 xxxxRepository.save(shenQingDXX);仓储的save方法,当实体有id时是修改数据,没有id时是新增数据,不存在await_unitOfWork.SaveChangesAsync();
    更新可使用xxxxRepository.asUpdateDsl().set(s -> s.zuZhiJGId, "2").update();
    插入新数据可使用: xxxxRepository.insert(shenQingDXX);,相比较save,insert不需要查询之后再判断是否新增,而是直接插入,若存在主键直接报错。
  • 软删调用 xxxxxRepository.asDeleteDsl().where(s -> s.zuZhiJGId.eq("1")).execute();如果手写sql的update语句,不会自动更新框架字段,比如更新时间等;

常用的查询写法

// 获取单个实体,Optional<> 表示可选值
Optional<SM_SQ_ShenQingDanModel> findByZuZhiJGIDAndId(String zuZhiJGID, String id);

// 支持手写sql,在获取单个实体别名需要定义为s
@Query("select s from SM_SQ_ShenQingDanModel as s where s.zuZhiJGID = :zuZhiJGID and s.id in :shenQingDIDs")
List<SM_SQ_ShenQingDanModel> findByZuZhiJGIDAndIdIn(String zuZhiJGID,List<String> shenQingDIDs);

// 获取单个实体的自动映射,model-> dto
@Query("select s from SM_SQ_ShenQingDanModel as s where s.zuZhiJGID = :zuZhiJGID and s.id in :shenQingDIDs")
List<SM_SQ_ShenQingDanDto> findByZuZhiJGIDAndIdIn(String zuZhiJGID,List<String> shenQingDIDs);
// 结合valueOf实现自动映射
public class SM_SQ_ShenQingDanDto extends BaseDto {
    public static SM_SQ_ShenQingDanDto valueOf(SM_SQ_ShenQingDanModel model) {
        return MapUtils.copyProperties(model, SM_SQ_ShenQingDanDto::new);
    }
}

// 获取多个实体自动映射
@Query("select new cn.mediinfo.vela.shouma.dto.shenqingdandto.ShenQingDXXDto(a,b) from SM_SQ_ShenQingDanModel as a left join SM_SQ_ShenQingDMXModel as b on a.id = b.shenQingDID and b.zhuShouSBZ = 1 where a.zuZhiJGID = :zuZhiJGID and a.zhuYuanJZID = :zhuYuanJZID")
List<ShenQingDXXDto> findShenQingDanLeftJoinShenQingDMXOnIdEqualShenQingDID(@Param("zuZhiJGID") String zuZhiJGID, @Param("zhuYuanJZID") String zhuYuanJZID);
// 结合调用构造函数实现自动映射
package cn.mediinfo.vela.shouma.dto.shenqingdandto;
public class ShenQingDXXDto {

    private SM_SQ_ShenQingDanDto shenQingDanDto;
    private SM_SQ_ShenQingDMXDto shenQingDanMXDto;

    public ShenQingDXXDto(SM_SQ_ShenQingDanModel shenQingDan, SM_SQ_ShenQingDMXModel shenQingDMX) {
        this.shenQingDanDto = SM_SQ_ShenQingDanDto.valueOf(shenQingDan);
        this.shenQingDanMXDto = SM_SQ_ShenQingDMXDto.valueOf(shenQingDMX);
    }
}

// 查询平铺的字段
@Query("select  s.zhuYuanJZID as jiuZhenYWID, count(s) as shuLiang from SM_SQ_ShenQingDanModel as s where s.zhuYuanJZID in :zhuYuanJZIDList and s.dangQianZTDM = '9' group by s.zhuYuanJZID")
List<Map<String,Object>> findByZhuYuanJZIDInGroupByZhuYuanJZID(List<String> zhuYuanJZIDList);
// 需要在Service里把List<Map<String,Object>>类型对象手动转换为dto
var mapList = sm_sq_shenQingDanRepository.findByZhuYuanJZIDInGroupByZhuYuanJZID(zhuYuanJZIDs);
var zhuYuanJZYXList = new ArrayList<SM_SQ_ShenQingDSLByJZYWIDItem>();
for (var map : mapList){
    var item = MapUtils.copyMapProperties(map,SM_SQ_ShenQingDSLByJZYWIDItem::new);
    zhuYuanJZYXList.add(item);
}

// 分页查询
// sql定义
@Query("select s from SM_ZD_ShuJuYLBModel as s " +
        "where (:zuzhiJGID is null or s.zuZhiJGID=:zuzhiJGID) " +
        "and (:likeQuery is null " +
        "or (s.shuJuYLBMC like %:likeQuery% or s.shuJuYLBID like %:likeQuery% " +
        "or  (case when :shuRuMLX = '1' then upper(s.shuRuMa1) when  :shuRuMLX = '2' then  s.shuRuMa2  else s.shuRuMa3 end like  %:likeQuery%) ))" +
        "order by s.shuJuYLBID asc")
Slice<SM_ZD_ShuJuYLBModel> findTopByZuzhiJGIDAndLikeQuery(@Param("zuzhiJGID") String zuzhiJGID,
                                                          @Param("likeQuery") String likeQuery,
                                                          @Param("shuRuMLX") String shuRuMLX,
                                                          Pageable pageable);
// 分页仓储程序调用
var page = sm_zd_shuJuYLBRepository
		.findTopByZuzhiJGIDAndLikeQuery("","","",
                                        PageRequestUtil.of(dto.getPageIndex(), 
                                                           dto.getPageSize()));
// 取前n条数据
var page = sm_zd_shuJuYLBRepository
		.findTopByZuzhiJGIDAndLikeQuery("","","", PageRequestUtil.ofSize(count)));


// SQL左连接转换为程序的一对多的数据结构
// 左连接仓储定义
@Query("SELECT
	NEW cn.mediinfo.vela.shouma.dto.shenqingdandto.ShenQingDXXDto(a,
	b)
FROM
	SM_SQ_ShenQingDanModel AS a
LEFT JOIN SM_SQ_ShenQingDMXModel AS b ON
	a.id = b.shenQingDID
	AND b.zhuShouSBZ = 1
WHERE
	a.zuZhiJGID = :zuZhiJGID
	AND a.zhuYuanJZID = :zhuYuanJZID
	AND a.dangQianZTDM <> '0'
	AND a.dangQianZTDM <> '2'
	AND (a.wanChengJZBZ <> 1
		OR a.maZuiWCJZBZ <> 0)")
List<ShenQingDXXDto> findShenQingDanLeftJoinShenQingDMXOnIdEqualShenQingDIDByZuZhiJGIDAndZhuYuanJZID(String zuZhiJGID,String zhuYuanJZID);
// JAVA 代码 SQL左连接转换为程序的一对多的数据结构
@Override
public List<SM_SQ_ShenQingDWJZDto> getShouMaWJZSSSQD(String zhuYuanJZID) throws TongYongYWException
{
    //排除作废和取消的手术 的所所有未记账的手术
    var shenQingDanXXList = shenQingDanRepository
    	.findShenQingDanLeftJoinShenQingDMXOnIdEqualShenQingDIDByZuZhiJGIDAndZhuYuanJZID(lyraIdentityService.getJiGouID(),zhuYuanJZID);
	// 根据主表id分组
    Map<String,List<ShenQingDXXDto>> groupList = shenQingDanXXList.stream()
    		.collect(Collectors.groupingBy(x -> x.getShenQingDanDto().getId()));
    var result = new ArrayList<SM_SQ_ShenQingDWJZDto>();
    for (var entry : groupList.entrySet()){
        var shenQingDXXDto = entry.getValue().stream().findFirst()
        	.map(ShenQingDXXDto::getShenQingDanDto).get();
        var item = MapUtils.copyProperties(shenQingDXXDto,SM_SQ_ShenQingDWJZDto::new);
        var zhuShouShu = entry.getValue().stream()
        	.filter(s->s.getShenQingDanMXDto().getZhuShouSBZ() ==1)
        	.map(ShenQingDXXDto::getShenQingDanMXDto)
        	.sorted(comparingInt(SM_SQ_ShenQingDMXDto::getShuHouSSBZ).reversed())
        	.findFirst().orElse(null);
        if(null != zhuShouShu){
            item.setShouShuMC(zhuShouShu.getShouShuMC());
            item.setShouShuJBMC(zhuShouShu.getShouShuJBMC());
            item.setShouShuBW(zhuShouShu.getShouShuBW());
        }
        result.add(item);
    }
    return result;
}

/*  用QueryDSL解决C#的
	WhereIf、
 	x =>(string.IsNullOrWhiteSpace(shuJuYLBQueryDto.ZuZhiJGID) 
  		|| x.ZuZhiJGID == shuJuYLBQueryDto.ZuZhiJGID)) 查询条件用
*/
QSM_SQ_ShenQingDanModel shenQingDan= sM_SQ_ShenQingDanModel;
QSM_SQ_ShenQingDMXModel shenQingDMX= QSM_SQ_ShenQingDMXModel.sM_SQ_ShenQingDMXModel;
var factory= new JPAQueryFactory(entityManager);

var query =factory.select(shenQingDan, shenQingDMX)
        .from(shenQingDan)
        .leftJoin(shenQingDMX)
        .on(shenQingDan.id.eq(shenQingDMX.shenQingDID))
        .where(shenQingDan.zuZhiJGID.eq(lyraIdentityService.getJiGouID()))
        .where(shenQingDMX.shuHouSSBZ.eq(0));
//门诊:申请医生过滤
if("1".equals(weiZhiLB)){
   query.where(shenQingDan.shenQingYSID.eq(weiZhiCXBS));
}else if("2".equals(weiZhiLB)){//住院医生:申请科室过滤
   query.where(shenQingDan.shenQingKSID.eq(weiZhiCXBS));
}else if("3".equals(weiZhiLB)){//住院护士:病区过滤
   query.where(shenQingDan.dangQianBQID.eq(weiZhiCXBS));
}
//手术状态过滤
if(!dangQianZTDMs.isEmpty()){
    query.where(shenQingDan.dangQianZTDM.in(dangQianZTDMs));
}
//要求时间过滤
if("1".equals(chaXunLX)){
    query.where(shenQingDan.yaoQiuSJ.between(kaiShiSj,jieShuSJ));
}else if("2".equals(chaXunLX)){
    //申请时间过滤
    query.where(shenQingDan.shenQingSJ.between(kaiShiSj,jieShuSJ));
}else if("3".equals(chaXunLX)){
    //安排时间过滤
    query.where(shenQingDan.anPaiSJ.between(kaiShiSj,jieShuSJ));
}
// 进行数据查询
var queryResult = query.fetch(); 

API定义

/**
 * 获取手术管理列表
 * @param kaiShiSj 开始时间
 * @param jieShuSJ 结束时间
 * @param jiuZhenYWLX 就诊业务类型【1:门诊; 2:急诊; 3:住院; 4:体检】
 * @param chaXunLX 查询类型 1申请与安排 2已完成 3已取消 全部:不传或空
 * @param shouShuKSID 手术室 全部:不传或空
 * @param shouShuJDM 手术间 全部:不传或空
 * @param shenQingKSID 申请科室 全部:不传或空
 * @param zhuDaoYSID 主刀医生 全部:不传或空
 * @param shouShuLBDM 手术类别 全部:不传或空
 * @param shouShuJBDM 手术级别 全部:不传或空
 * @param likeQuery 患者姓名/住院号
 * @return
 */
@Operation(summary = "获取手术申请单明细列表")
@GetMapping("GetShouShuGLList")
public MsfResponse<List<SM_SQ_ShouShuGLXQ>> getShouShuGLList(@RequestParam(required = false) Date kaiShiSj,
                                                             @RequestParam(required = false) Date jieShuSJ,
                                                             @RequestParam(required = false) String jiuZhenYWLX,
                                                             @RequestParam(required = false) String chaXunLX,
                                                             @RequestParam(required = false) String shouShuKSID,
                                                             @RequestParam(required = false) String shouShuJDM,
                                                             @RequestParam(required = false) String shenQingKSID,
                                                             @RequestParam(required = false) String zhuDaoYSID,
                                                             @RequestParam(required = false) String shouShuLBDM,
                                                             @RequestParam(required = false) String shouShuJBDM,
                                                             @RequestParam(required = false) String likeQuery) throws ShuJuCZException, ParseException {
    if (kaiShiSj == null || jieShuSJ == null) {
        return MsfResponse.fail(XiTongResponseCode.CANSHUYC,"请选择开始日期和结束日期!");
    }
    return MsfResponse.success(shouShuGLService.getShouShuGLList(kaiShiSj, jieShuSJ, jiuZhenYWLX, chaXunLX, shouShuKSID, shouShuJDM, shenQingKSID, zhuDaoYSID, shouShuLBDM, shouShuJBDM, likeQuery));
}



/**
 * 获取数据源值域总数
 *
 * @param shuJuYLBQueryDto
 * @return
 * @throws MsfResponseException
 */
@Operation(summary = "获取数据源值域总数")
@GetMapping("GetShuJuYZYCount")
public MsfResponse<Long> getShuJuYZYCount(@ParameterObject SM_ZD_ShuJuYZYQueryDto shuJuYLBQueryDto) throws MsfResponseException {
    var result = shuJuYZYService.getShuJuYZYCount(shuJuYLBQueryDto);
    return MsfResponse.success(result);
}


    /**
     * 手术申请单暂存
     *
     * @param enetity
     * @return
     * @throws MsfResponseException
     * @throws TongYongYWException
     */
    @Operation(summary = "手术申请单暂存")
    @PostMapping("ZanCunSSSQD")
    public MsfResponse<Integer> zuoFeiShenQingDXX(@RequestBody SM_SQ_AddShenQingDDto enetity) throws MsfResponseException,TongYongYWException {
        var result = shenQingDanService.zanCunSSSQD(enetity);
        return MsfResponse.success(result);
    }

零散的

  • java不存在匿名对象

迁移技巧

  • java不存在扩展函数,除了stream()等操作,一般在xxxUtils或者xxxUtil里面,比如 MapUtils.copyProperties()、StringUtils.hasText()、DateUtil.getYYMMDDHHMMSS(jieShuSJ)、String a = String.valueOf(1);;
  • 可以借助ChatGPT帮助我们更快的完成工作,比如:AIchatOS等工具;

相关推荐

【机器学习】数据挖掘神器LightGBM详解(附代码)

来源:机器学习初学者本文约11000字,建议阅读20分钟本文为你介绍数据挖掘神器LightGBM。LightGBM是微软开发的boosting集成模型,和XGBoost一样是对GBDT...

3分钟,用DeepSeek全自动生成语音计算器,还带括号表达式!

最近,大家慢慢了解到了DeepSeek的强大功能,特别是它在编程领域也同样强大。编程零基础小白,一行代码不用写,也能全自动生成一个完整的、可运行的软件来!很多程序员一直不相信小白不写代码也能编软件!下...

python学习笔记 3.表达式

在Python中,表达式是由值、变量和运算符组成的组合。以下是一些常见的Python表达式:算术表达式:由数值和算术运算符组成的表达式,如加减乘除等。例如:5+3、7*2、10/3等。字符...

5.7 VS 8.x,为什么用户不升级MySql

一般来说为了更好的功能和性能,都需要将软件升级到最新的版本,然而在开源软件中,由于一些开发商变化或其他的问题(开源授权变化),致使人们不愿使用最新的版本,一个最典型的问题就是CentOS操作系统。还有...

大厂高频:讲一下MySQL主从复制

大家经常听说主从复制,那么主从复制的意义?能解决的问题有哪些?主从复制能解决的问题就是在我们平时开发的程序中操作数据库的时候,大多数的情况查询的操作大大超过了写的操作,也就说对数据库读取数据的压力比较...

MYSQL数据库的五大安全防护措施

以技术为基础的企业里最有价值的资产莫过于是客户或者其数据库中的产品信息了。因此,在这样的企业中,保证数据库免受外界攻击是数据库管理的重要环节。很多数据库管理员并没有实施什么数据库保护措施,只是因为觉得...

docker安装mysql

准备工作已安装Docker环境(官方安装文档)终端/命令行工具(Linux/macOS/WSL)步骤1:拉取MySQL镜像打开终端执行以下命令,拉取官方MySQL镜像(默认最新版本):d...

Zabbix监控系统系列之六:监控 mysql

zabbix监控mysql1、监控规划在创建监控项之前要尽量考虑清楚要监控什么,怎么监控,监控数据如何存储,监控数据如何展现,如何处理报警等。要进行监控的系统规划需要对Zabbix很了解,这里只是...

详解MySQL的配置文件及优化

#头条创作挑战赛#在Windows系统中,MySQL服务器启动时最先读取的是my.ini这个配置文件。在Linux系统中,配置文件为my.cnf,其路径一般为/etc/my.cnf或/etc/mysq...

Mysql 几个批处理执行脚本

学习mysql过程中,需要创建测试数据,并让多人每人一个数据库连接并进行作业检查。整合部分批处理创建数据批量创建数据库DELIMITER$CREATEPROCEDURECreateDatab...

MySQL学到什么程度?才有可以在简历上写精通

前言如今互联网行业用的最多就是MySQL,然而对于高级Web面试者,尤其对于寻找30k下工作的求职者,很多MySQL相关知识点基本都会涉及,如果面试中,你的相关知识答的模糊和不切要点,基...

mysql 主、从服务器配置“Slave_IO_Running: Connecting” 问题分析

#在进行mysql主、从服务器配置时,”SHOWSLAVESTATUS;“查看从库状态Slave_IO_Runing,出现错误:“Slave_IO_Running:Connectin...

MYSQL数据同步

java开发工程师在实际的开发经常会需要实现两台不同机器上的MySQL数据库的数据同步,要解决这个问题不难,无非就是mysql数据库的数据同步问题。但要看你是一次性的数据同步需求,还是定时数据同步,亦...

「MySQL 8」MySQL 5.7都即将停只维护了,是时候学习一波MySQL 8了

MySQL8新特性选择MySQL8的背景:MySQL5.6已经停止版本更新了,对于MySQL5.7版本,其将于2023年10月31日停止支持。后续官方将不再进行后续的代码维护。另外,...

Prometheus监控mysql

通过Prometheus监控Mysql,我们需要在Mysql端安装一个mysql-exporter,然后Prometheus通过mysql-exporter暴露的端口抓取数据。1.安装一个MYSQL配...