public boolean selectCountById(String id) { int count = 0; WIFIInfo wifiInfo = WIFIInfo.builder().id(id).build(); try{ count = wifiInfoMapper.selectCount(wifiInfo); log.info("通过id:"+id+"查询是否存在对应wifi,结果数="+count); } catch (Exception e){ log.error("通过id查询是否存在对应wifi信息出错",e.getMessage()); } return count > 0 ? true : false; }简化代码
时间: 2024-03-20 18:44:56 浏览: 8
可以简化为:
```
public boolean selectCountById(String id) {
WIFIInfo wifiInfo = WIFIInfo.builder().id(id).build();
int count = wifiInfoMapper.selectCount(wifiInfo);
log.info("通过id:"+id+"查询是否存在对应wifi,结果数="+count);
return count > 0;
}
```
这里同样去掉了无用的三目运算符和异常处理。
相关问题
public void insertOrUpdate(WIFIInfo wifiInfo) { log.info("创建wifi账号密码,账号密码信息:"+ JSONObject.toJSONString(wifiInfo)); //查询是否已存在对应的wifi信息 boolean isHave = selectCountById(wifiInfo.getId()); wifiInfo.setUpdateTime(new Date()); //如果已存在wifi数据则修改,不存在则添加 int ins = 0; try { if(isHave){ ins = wifiInfoMapper.updateByPrimaryKeySelective(wifiInfo); if (ins > 0) { log.info("修改wifi账号成功"); } } else { wifiInfo.setCreateTime(new Date()); ins = wifiInfoMapper.insert(wifiInfo); if (ins > 0) { log.info("创建wifi账号成功"); } } } catch (Exception e) { log.error(isHave ? "wifi账号修改失败" : "wifi账号创建失败" + ",报错信息:"+ e.getMessage()); } }简化代码
可以简化为:
```
public void insertOrUpdate(WIFIInfo wifiInfo) {
log.info("创建wifi账号密码,账号密码信息:"+ JSONObject.toJSONString(wifiInfo));
wifiInfo.setUpdateTime(new Date());
boolean isHave = selectCountById(wifiInfo.getId());
int result = 0;
try {
if (isHave) {
result = wifiInfoMapper.updateByPrimaryKeySelective(wifiInfo);
log.info(result > 0 ? "修改wifi账号成功" : "wifi账号修改失败");
} else {
wifiInfo.setCreateTime(new Date());
result = wifiInfoMapper.insert(wifiInfo);
log.info(result > 0 ? "创建wifi账号成功" : "wifi账号创建失败");
}
} catch (Exception e) {
log.error((isHave ? "wifi账号修改失败" : "wifi账号创建失败") + ",报错信息:" + e.getMessage());
}
}
```
去掉了无用的局部变量,将修改和创建的判断改为使用返回值来判断。
android wifi连接 增加重试次数的代码
您好,如果您想在Android应用中实现连接WiFi时增加重试次数的功能,可以使用以下代码:
```java
private void connectToWifi(String ssid, String password, int retryCount) {
WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
// 检查WiFi是否已连接
if (isConnectedToWifi(ssid)) {
return;
}
// 创建WiFi配置
WifiConfiguration wifiConfiguration = new WifiConfiguration();
wifiConfiguration.SSID = String.format("\"%s\"", ssid);
wifiConfiguration.preSharedKey = String.format("\"%s\"", password);
// 添加WiFi配置
int networkId = wifiManager.addNetwork(wifiConfiguration);
if (networkId == -1) {
return;
}
// 连接WiFi
boolean isConnected = false;
int count = 0;
while (!isConnected && count < retryCount) {
wifiManager.disconnect();
wifiManager.enableNetwork(networkId, true);
wifiManager.reconnect();
// 等待WiFi连接成功
int waitCount = 0;
while (!isConnectedToWifi(ssid) && waitCount < 10) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
waitCount++;
}
isConnected = isConnectedToWifi(ssid);
count++;
}
}
private boolean isConnectedToWifi(String ssid) {
WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
if (wifiInfo != null && wifiInfo.getSSID() != null) {
return wifiInfo.getSSID().equals(String.format("\"%s\"", ssid));
}
return false;
}
```
上述代码中,`connectToWifi`方法中增加了一个`retryCount`参数,用于指定最大重试次数。在连接WiFi时,如果连接不成功,会进行重试,重试次数由`retryCount`指定。如果重试次数超过最大重试次数,就直接返回。
希望这些代码能够帮助到您。