diff --git a/org_ccalm_weather.yml b/org_ccalm_weather.yml
index b7e913c..de17d0f 100644
--- a/org_ccalm_weather.yml
+++ b/org_ccalm_weather.yml
@@ -6,7 +6,7 @@ server:
spring:
application:
- name: kz_mcp_weather
+ name: kz_ccalm_weather
cache:
type: none
@@ -16,14 +16,14 @@ custom:
data_dir: O:\\temp\\CCALM\\
#data_dir: /temp/CCALM/
db_all:
- url: jdbc:postgresql://192.168.0.90:5432/weather?ApplicationName=kz_mcp_weather&sslmode=require
+ url: jdbc:postgresql://92.46.48.43:5444/weather?ApplicationName=kz_mcp_weather&sslmode=require
+ #url: jdbc:postgresql://192.168.0.90:5432/weather?ApplicationName=kz_mcp_weather&sslmode=require
#url: jdbc:postgresql://127.0.0.1:5432/weather?ApplicationName=kz_mcp_weather&sslmode=require
- #url: jdbc:postgresql://92.46.48.43:5433/weather?ApplicationName=kz_mcp_weather&sslmode=require
login: postgres
password: PasSecrKey1
db_ru:
- url: jdbc:postgresql://192.168.0.90:5433/weather_ru?ApplicationName=kz_mcp_weather&sslmode=require
- #url: jdbc:postgresql://92.46.48.43:5433/weather_ru?ApplicationName=kz_mcp_weather&sslmode=require
+ url: jdbc:postgresql://92.46.48.43:5444/weather_ru?ApplicationName=kz_mcp_weather&sslmode=require
+ #url: jdbc:postgresql://192.168.0.90:5433/weather_ru?ApplicationName=kz_mcp_weather&sslmode=require
#url: jdbc:postgresql://127.0.0.1:5432/weather_ru?ApplicationName=kz_mcp_weather&sslmode=require
login: postgres
password: PasSecrKey1
diff --git a/src/main/java/org/ccalm/weather/AirTemperature.java b/src/main/java/org/ccalm/weather/AirTemperature.java
index 68eece2..b448105 100644
--- a/src/main/java/org/ccalm/weather/AirTemperature.java
+++ b/src/main/java/org/ccalm/weather/AirTemperature.java
@@ -154,7 +154,7 @@ public class AirTemperature implements ServletContextAware {
logger.error("N2:"+ex.getMessage(),ex);
result+=ex.getMessage()+"
";
}
- if(!strPos1.equals(""))
+ if(!strPos1.isEmpty())
{
StringBuffer answer1=new StringBuffer(strPos1);
CutBeforeFirst(answer1,":");
@@ -333,27 +333,31 @@ public class AirTemperature implements ServletContextAware {
main.get_air_temperature_date(cast(to_timestamp(?, 'YYYYMMDD HH24') as timestamp without time zone),?)
);
""";
- String point_id="";
+ String point_id=null;
if(db_all) {
point_id = DBTools.getPointId(st_all, country_id, lon, lat);
- try (PreparedStatement pstmt = conn_all.prepareStatement(sql)) {
- pstmt.setFloat(1, dataArrayTmp.getFloat(pos));
- pstmt.setLong(2, Long.valueOf(country_id));
- pstmt.setLong(3, Long.valueOf(point_id));
- pstmt.setString(4, date+" "+time);
- pstmt.setInt(5, Integer.valueOf(forecast));
- pstmt.executeUpdate();
+ if(point_id!=null) {
+ try (PreparedStatement pstmt = conn_all.prepareStatement(sql)) {
+ pstmt.setFloat(1, dataArrayTmp.getFloat(pos));
+ pstmt.setLong(2, Long.valueOf(country_id));
+ pstmt.setLong(3, Long.valueOf(point_id));
+ pstmt.setString(4, date + " " + time);
+ pstmt.setInt(5, Integer.valueOf(forecast));
+ pstmt.executeUpdate();
+ }
}
}
if(db_ru) {
point_id = DBTools.getPointId(st_ru, country_id, lon, lat);
- try (PreparedStatement pstmt = conn_ru.prepareStatement(sql)) {
- pstmt.setFloat(1, dataArrayTmp.getFloat(pos));
- pstmt.setLong(2, Long.valueOf(country_id));
- pstmt.setLong(3, Long.valueOf(point_id));
- pstmt.setString(4, date+" "+time);
- pstmt.setInt(5, Integer.valueOf(forecast));
- pstmt.executeUpdate();
+ if(point_id!=null) {
+ try (PreparedStatement pstmt = conn_ru.prepareStatement(sql)) {
+ pstmt.setFloat(1, dataArrayTmp.getFloat(pos));
+ pstmt.setLong(2, Long.valueOf(country_id));
+ pstmt.setLong(3, Long.valueOf(point_id));
+ pstmt.setString(4, date + " " + time);
+ pstmt.setInt(5, Integer.valueOf(forecast));
+ pstmt.executeUpdate();
+ }
}
}
} catch (SQLException ex) {
@@ -421,20 +425,6 @@ public class AirTemperature implements ServletContextAware {
return result;
}
//---------------------------------------------------------------------------
- //@Autowired
- @GetMapping("/geodatalist/AirTemperatureDates0")
- @ResponseBody
- public String getGeoDataList0(HttpServletResponse response) {
- String headerValue = CacheControl.maxAge(60, TimeUnit.SECONDS).getHeaderValue();
- response.addHeader("Cache-Control", headerValue);
-
- String html="";
- html+="AirTemperatureDates
";
- html+="PrecipitationDates
";
- html+="SoilDates
";
- return html;
- }
- //---------------------------------------------------------------------------
//List of "Air temperature" dates from database in JSON
//@CacheControl(maxAge = 300)
@CrossOrigin
diff --git a/src/main/java/org/ccalm/weather/DBTools.java b/src/main/java/org/ccalm/weather/DBTools.java
index 6445906..fc9aad5 100644
--- a/src/main/java/org/ccalm/weather/DBTools.java
+++ b/src/main/java/org/ccalm/weather/DBTools.java
@@ -26,7 +26,7 @@ public class DBTools {
}
//---------------------------------------------------------------------------
public static String getPointId(Statement st, String country_id, double lon, double lat) {
- String point_id = "";
+ String point_id = null;
PreparedStatement pstmt = null;
try {
String sql = "SELECT id FROM main.points WHERE lon = ? AND lat = ? LIMIT 1";
@@ -41,15 +41,13 @@ public class DBTools {
} catch (SQLException ex) {
logger.error("N9: " + ex.getMessage(), ex);
}
- if(point_id.isEmpty()){
+ if(point_id==null){
try {
- String sql = "insert into main.points(country_id,geom,lon,lat)values(?,ST_SetSRID(st_makepoint(?,?),4326),?,?) RETURNING id";
+ String sql = "insert into main.points(country_id,lon,lat)values(?,?,?) RETURNING id";
pstmt = st.getConnection().prepareStatement(sql);
pstmt.setLong(1, Long.valueOf(country_id));
pstmt.setDouble(2, lon);
pstmt.setDouble(3, lat);
- pstmt.setDouble(4, lon);
- pstmt.setDouble(5, lat);
try (ResultSet rs = pstmt.executeQuery()) {
if (rs.next()) {
point_id = rs.getString(1); // Получаем ID, возвращаемый SQL-запросом
diff --git a/src/main/java/org/ccalm/weather/MainController.java b/src/main/java/org/ccalm/weather/MainController.java
index a00b8d1..9f93080 100644
--- a/src/main/java/org/ccalm/weather/MainController.java
+++ b/src/main/java/org/ccalm/weather/MainController.java
@@ -23,11 +23,11 @@ public class MainController {
@GetMapping("/geodatalist")
@ResponseBody
public String getGeoDataList(Model model) {
- String html="";
- html+="AirTemperatureDates
";
- html+="PrecipitationDates
";
- html+="SoilDates
";
- return html;
+ return """
+ AirTemperatureDates
+ PrecipitationDates
+ SoilDates
+ """;
}
}
\ No newline at end of file
diff --git a/src/main/java/org/ccalm/weather/Precipitation.java b/src/main/java/org/ccalm/weather/Precipitation.java
index 8015cd1..df12bfc 100644
--- a/src/main/java/org/ccalm/weather/Precipitation.java
+++ b/src/main/java/org/ccalm/weather/Precipitation.java
@@ -178,7 +178,7 @@ public class Precipitation implements ServletContextAware {
logger.error("N2:"+ex.getMessage(),ex);
result+=ex.getMessage()+"
";
}
- if(!strPos1.equals(""))
+ if(!strPos1.isEmpty())
{
StringBuffer answer1=new StringBuffer(strPos1);
CutBeforeFirst(answer1,":");
@@ -353,27 +353,31 @@ public class Precipitation implements ServletContextAware {
main.get_precipitation_date(cast(to_timestamp(?, 'YYYYMMDD HH24') as timestamp without time zone),?)
);
""";
- String point_id="";
+ String point_id=null;
if(db_all) {
point_id = DBTools.getPointId(st_all, country_id, lon, lat);
- try (PreparedStatement pstmt = conn_all.prepareStatement(sql)) {
- pstmt.setFloat(1, dataArrayTmp.getFloat(pos));
- pstmt.setLong(2, Long.valueOf(country_id));
- pstmt.setLong(3, Long.valueOf(point_id));
- pstmt.setString(4, date+" "+time);
- pstmt.setInt(5, Integer.valueOf(forecast));
- pstmt.executeUpdate();
+ if(point_id!=null) {
+ try (PreparedStatement pstmt = conn_all.prepareStatement(sql)) {
+ pstmt.setFloat(1, dataArrayTmp.getFloat(pos));
+ pstmt.setLong(2, Long.valueOf(country_id));
+ pstmt.setLong(3, Long.valueOf(point_id));
+ pstmt.setString(4, date + " " + time);
+ pstmt.setInt(5, Integer.valueOf(forecast));
+ pstmt.executeUpdate();
+ }
}
}
if(db_ru) {
point_id = DBTools.getPointId(st_ru, country_id, lon, lat);
- try (PreparedStatement pstmt = conn_ru.prepareStatement(sql)) {
- pstmt.setFloat(1, dataArrayTmp.getFloat(pos));
- pstmt.setLong(2, Long.valueOf(country_id));
- pstmt.setLong(3, Long.valueOf(point_id));
- pstmt.setString(4, date+" "+time);
- pstmt.setInt(5, Integer.valueOf(forecast));
- pstmt.executeUpdate();
+ if(point_id!=null) {
+ try (PreparedStatement pstmt = conn_ru.prepareStatement(sql)) {
+ pstmt.setFloat(1, dataArrayTmp.getFloat(pos));
+ pstmt.setLong(2, Long.valueOf(country_id));
+ pstmt.setLong(3, Long.valueOf(point_id));
+ pstmt.setString(4, date + " " + time);
+ pstmt.setInt(5, Integer.valueOf(forecast));
+ pstmt.executeUpdate();
+ }
}
}
} catch (SQLException ex) {
diff --git a/src/main/java/org/ccalm/weather/SoilTmperature.java b/src/main/java/org/ccalm/weather/SoilTmperature.java
index 0c1bb5c..88d03f7 100644
--- a/src/main/java/org/ccalm/weather/SoilTmperature.java
+++ b/src/main/java/org/ccalm/weather/SoilTmperature.java
@@ -188,7 +188,7 @@ public class SoilTmperature implements ServletContextAware {
logger.error("N2: "+ex.getMessage(),ex);
result+=ex.getMessage()+"
";
}
- if(!strPos1.equals(""))
+ if(!strPos1.isEmpty())
{
//String strPos1 = "250:146339365:d=2017022818:TSOIL:0-0.1 m below ground:anl:"
StringBuffer answer1=new StringBuffer(strPos1);
@@ -372,27 +372,31 @@ public class SoilTmperature implements ServletContextAware {
main.get_soil_temperature_date(cast(to_timestamp(?, 'YYYYMMDD HH24') as timestamp without time zone),?)
);
""";
- String point_id="";
+ String point_id=null;
if(db_all) {
point_id = DBTools.getPointId(st_all, country_id, lon, lat);
- try (PreparedStatement pstmt = conn_all.prepareStatement(sql)) {
- pstmt.setFloat(1, dataArrayTmp.getFloat(pos));
- pstmt.setLong(2, Long.valueOf(country_id));
- pstmt.setLong(3, Long.valueOf(point_id));
- pstmt.setString(4, date+" "+time);
- pstmt.setInt(5, Integer.valueOf(forecast));
- pstmt.executeUpdate();
+ if(point_id!=null) {
+ try (PreparedStatement pstmt = conn_all.prepareStatement(sql)) {
+ pstmt.setFloat(1, dataArrayTmp.getFloat(pos));
+ pstmt.setLong(2, Long.valueOf(country_id));
+ pstmt.setLong(3, Long.valueOf(point_id));
+ pstmt.setString(4, date + " " + time);
+ pstmt.setInt(5, Integer.valueOf(forecast));
+ pstmt.executeUpdate();
+ }
}
}
if(db_ru) {
point_id = DBTools.getPointId(st_ru, country_id, lon, lat);
- try (PreparedStatement pstmt = conn_ru.prepareStatement(sql)) {
- pstmt.setFloat(1, dataArrayTmp.getFloat(pos));
- pstmt.setLong(2, Long.valueOf(country_id));
- pstmt.setLong(3, Long.valueOf(point_id));
- pstmt.setString(4, date+" "+time);
- pstmt.setInt(5, Integer.valueOf(forecast));
- pstmt.executeUpdate();
+ if(point_id!=null) {
+ try (PreparedStatement pstmt = conn_ru.prepareStatement(sql)) {
+ pstmt.setFloat(1, dataArrayTmp.getFloat(pos));
+ pstmt.setLong(2, Long.valueOf(country_id));
+ pstmt.setLong(3, Long.valueOf(point_id));
+ pstmt.setString(4, date + " " + time);
+ pstmt.setInt(5, Integer.valueOf(forecast));
+ pstmt.executeUpdate();
+ }
}
}
} catch (SQLException ex) {