diff --git a/.dockerignore b/.dockerignore
new file mode 100644
index 0000000..9e8cc65
--- /dev/null
+++ b/.dockerignore
@@ -0,0 +1,3 @@
+*
+!target/dailylove*
+!Dockerfile
\ No newline at end of file
diff --git a/Dockerfile b/Dockerfile
index 15363fa..5cea422 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,8 +1,6 @@
-FROM openjdk:17
+FROM ubuntu:latest
MAINTAINER bamanker
-ARG JAR_FILE
-ADD target/${JAR_FILE} /home/dailylove/dailylove.jar
-ADD start.sh /home/dailylove/
-RUN chmod +x /home/dailylove/start.sh
+ARG NATIVE_FILE
+COPY target/${NATIVE_FILE} /home/dailylove/app
EXPOSE 13145
-CMD ["sh","/home/dailylove/start.sh"]
\ No newline at end of file
+ENTRYPOINT ["/home/dailylove/app"]
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index a9cd574..5f5a62f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,21 +5,23 @@
org.springframework.boot
spring-boot-starter-parent
- 2.6.5
+ 3.1.5
com.bamanker
dailylove
- v1.3
+ v2.0
dailyLove
dailylove
UTF-8
UTF-8
17
- 2.0.21
- 3.1.5
- 5.8.11
+ 17
+ 17
+ 2.0.25
+ 4.0.4
+ 5.8.18
172.17.0.1:10888/my_work
@@ -28,15 +30,6 @@
hutool-core
${hutool.version}
-
- org.springframework.cloud
- spring-cloud-starter-bootstrap
- 3.1.5
-
-
- org.springframework.boot
- spring-boot-starter
-
org.projectlombok
lombok
@@ -53,37 +46,44 @@
org.springframework.boot
- spring-boot-devtools
- runtime
- true
+ spring-boot-starter-web
org.springframework.boot
- spring-boot-starter-web
+ spring-boot-starter-tomcat
org.springframework.boot
spring-boot-starter-test
test
+
+ org.springframework.boot
+ spring-boot-autoconfigure
+
+
+ org.graalvm.buildtools
+ native-maven-plugin
+ 0.9.27
+
org.springframework.boot
spring-boot-maven-plugin
- com.spotify
+ com.xenoamess.docker
dockerfile-maven-plugin
- 1.4.13
+ 1.5.0
default
package
build
- push
+
@@ -93,7 +93,7 @@
${docker.private.repository}/${project.artifactId}
${project.version}
- ${project.build.finalName}.jar
+ ${project.artifactId}
diff --git a/src/main/java/com/bamanker/dailylove/DailyLoveApplication.java b/src/main/java/com/bamanker/dailylove/DailyLoveApplication.java
index f5c2bcb..bbd3a54 100644
--- a/src/main/java/com/bamanker/dailylove/DailyLoveApplication.java
+++ b/src/main/java/com/bamanker/dailylove/DailyLoveApplication.java
@@ -1,14 +1,20 @@
package com.bamanker.dailylove;
import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.openfeign.EnableFeignClients;
+import org.springframework.cloud.openfeign.FeignAutoConfiguration;
import org.springframework.scheduling.annotation.EnableScheduling;
+/**
+ * @author bamanker
+ */
@SpringBootApplication
@EnableFeignClients
//开启定时任务
@EnableScheduling
+//@ImportAutoConfiguration({FeignAutoConfiguration.class})
public class DailyLoveApplication {
public static void main(String[] args) {
diff --git a/src/main/java/com/bamanker/dailylove/controller/PushDailyController.java b/src/main/java/com/bamanker/dailylove/controller/PushDailyController.java
index e787c7c..4fcd4e7 100644
--- a/src/main/java/com/bamanker/dailylove/controller/PushDailyController.java
+++ b/src/main/java/com/bamanker/dailylove/controller/PushDailyController.java
@@ -12,7 +12,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
import java.text.SimpleDateFormat;
import java.util.Date;
diff --git a/src/main/java/com/bamanker/dailylove/controller/TestController.java b/src/main/java/com/bamanker/dailylove/controller/TestController.java
index 3857893..c3018dd 100644
--- a/src/main/java/com/bamanker/dailylove/controller/TestController.java
+++ b/src/main/java/com/bamanker/dailylove/controller/TestController.java
@@ -4,6 +4,9 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
+/**
+ * @author bamanker
+ */
@Slf4j
@RestController
public class TestController {
diff --git a/src/main/resources/bootstrap.yml b/src/main/resources/application.yml
similarity index 100%
rename from src/main/resources/bootstrap.yml
rename to src/main/resources/application.yml
diff --git a/src/test/java/com/bamanker/dailylove/DailyLoveApplicationTests.java b/src/test/java/com/bamanker/dailylove/DailyLoveApplicationTests.java
index 826e553..57a989c 100644
--- a/src/test/java/com/bamanker/dailylove/DailyLoveApplicationTests.java
+++ b/src/test/java/com/bamanker/dailylove/DailyLoveApplicationTests.java
@@ -13,7 +13,7 @@ import org.bouncycastle.util.Strings;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
-import javax.annotation.Resource;
+import jakarta.annotation.Resource;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
@@ -25,128 +25,128 @@ import static com.bamanker.dailylove.utils.DataUtils.getBirthdays;
@Slf4j
class DailyLoveApplicationTests {
- @Resource
- DataRemoteClient dataRemoteClient;
-
- String remark = "❤";
-
- @Test
- void test4(){
- log.info("mark: {}",205%100);
-
- }
- @Test
- void test3() {
-
-
- //获取输入的生日
- String boyBirthday = DailyLoveConfigure.Boy_Birthday;
- //获取农历生日
- ChineseDate chineseBir = new ChineseDate(DateUtil.parseDate(DailyLoveConfigure.Boy_Birthday));
- log.info("生日的农历日期是:{}", chineseBir);
- //截取日、月
- String[] strings = Strings.split(boyBirthday, '-');
- int chineseMonth = chineseBir.getMonth();
- int chineseDay = chineseBir.getDay();
- //获取当前日期的年
- Calendar dateToday = Calendar.getInstance();
- int todayYear = dateToday.get(Calendar.YEAR);
- //把生日的年改为今年,方便计算
- ChineseDate chineseDate = new ChineseDate(todayYear, chineseMonth, chineseDay,false);
- //农历日期对应的阳历日期
- int gregorianDay = chineseDate.getGregorianDay();
- //计算时间差
- long days = haveThisDay(chineseMonth, chineseDay, dateToday, todayYear, chineseDate, gregorianDay);
- log.info("days:{}", days);
-
- }
-
- /**
- * 需要递归计算日期差
- *
- * @param chineseMonth 农历月
- * @param chineseDay 农历日
- * @param dateToday 今天的日期类
- * @param todayYear 当前的年
- * @param chineseDate 组装的待计算的新日期
- * @param gregorianDay 判断是否存在农历日期的参数,-1代表今年不存在这个农历日期
- * @return 计算好的天数
- */
- private static long haveThisDay(int chineseMonth, int chineseDay, Calendar dateToday, int todayYear, ChineseDate chineseDate, int gregorianDay) {
- //判断当前年份是否存在农历日对应的阳历日
- while (gregorianDay == -1) {
- //不存在,计算明年
- todayYear += 1;
- chineseDate = new ChineseDate(todayYear, chineseMonth, chineseDay, false);
- gregorianDay = chineseDate.getGregorianDay();
- }
- //存在
- //将农历日期改为阳历日期
- Calendar gregorianbir = chineseDate.getGregorianCalendar();
- //判断这个日期是否和今年是同一年
- if (todayYear == dateToday.get(Calendar.YEAR)) {
- //是同一年,判断这一天过了没
- if (gregorianbir.get(Calendar.DAY_OF_YEAR) < dateToday.get(Calendar.DAY_OF_YEAR)) {
- //这一天过了,计算明年
- todayYear += 1;
- chineseDate = new ChineseDate(todayYear, chineseMonth, chineseDay, false);
- gregorianDay = chineseDate.getGregorianDay();
- //递归计算下一年是否存在对应的阳历日
- return haveThisDay(chineseMonth, chineseDay, dateToday, todayYear, chineseDate, gregorianDay);
- }
- //没有过,直接计算
- }
- //不是同一年,直接计算
- Date time = dateToday.getTime();
- log.info("当前的日期是:{}", time);
- Date time1 = gregorianbir.getTime();
- log.info("下一个生日的日期:{}", time1);
- return DateUtil.between(dateToday.getTime(), gregorianbir.getTime(), DateUnit.DAY);
- }
-
- @Test
- void test2() {
-
- TianXinReqParam param1 = new TianXinReqParam();
- param1.setKey(DailyLoveConfigure.TianXin_Key);
- param1.setCity(DailyLoveConfigure.City_ID);
- param1.setType("7");
- String weatherJson = dataRemoteClient.getWeather(param1);
- log.info("weather:{}", weatherJson);
- JSONObject resWeather = JSONObject.parseObject(weatherJson);
- JSONObject result = resWeather.getJSONArray("result").getJSONObject(0).getJSONArray("list").getJSONObject(2);
- log.info("----result----:{}", result);
- Weather weather = result.toJavaObject(Weather.class);
- log.info("weather:{}", weather);
- ChineseDate chineseDate = new ChineseDate(DateUtil.parseDate(weather.getDate()));
- System.out.println("--------------55555----------"+weather.getDate());
- System.out.println("------------------------"+chineseDate);
-
-
- }
-
-
- @Test
- void test1() {
- int loveDays = getBirthdays("2023-05-14");
- log.info("-------------------------------{}", loveDays);
- }
-
- public static int getLoveDays(String loveday) {
- SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
- int days = 0;
- try {
- long time = System.currentTimeMillis() - dateFormat.parse(loveday).getTime();
- days = (int) (time / (24 * 60 * 60 * 1000));
-
- } catch (ParseException e) {
- e.printStackTrace();
- }
- return days;
- }
-
- @Test
- void contextLoads() {
+// @Resource
+// DataRemoteClient dataRemoteClient;
+//
+// String remark = "❤";
+//
+// @Test
+// void test4(){
+// log.info("mark: {}",205%100);
+//
+// }
+// @Test
+// void test3() {
+//
+//
+// //获取输入的生日
+// String boyBirthday = DailyLoveConfigure.Boy_Birthday;
+// //获取农历生日
+// ChineseDate chineseBir = new ChineseDate(DateUtil.parseDate(DailyLoveConfigure.Boy_Birthday));
+// log.info("生日的农历日期是:{}", chineseBir);
+// //截取日、月
+// String[] strings = Strings.split(boyBirthday, '-');
+// int chineseMonth = chineseBir.getMonth();
+// int chineseDay = chineseBir.getDay();
+// //获取当前日期的年
+// Calendar dateToday = Calendar.getInstance();
+// int todayYear = dateToday.get(Calendar.YEAR);
+// //把生日的年改为今年,方便计算
+// ChineseDate chineseDate = new ChineseDate(todayYear, chineseMonth, chineseDay,false);
+// //农历日期对应的阳历日期
+// int gregorianDay = chineseDate.getGregorianDay();
+// //计算时间差
+// long days = haveThisDay(chineseMonth, chineseDay, dateToday, todayYear, chineseDate, gregorianDay);
+// log.info("days:{}", days);
+//
+// }
+//
+// /**
+// * 需要递归计算日期差
+// *
+// * @param chineseMonth 农历月
+// * @param chineseDay 农历日
+// * @param dateToday 今天的日期类
+// * @param todayYear 当前的年
+// * @param chineseDate 组装的待计算的新日期
+// * @param gregorianDay 判断是否存在农历日期的参数,-1代表今年不存在这个农历日期
+// * @return 计算好的天数
+// */
+// private static long haveThisDay(int chineseMonth, int chineseDay, Calendar dateToday, int todayYear, ChineseDate chineseDate, int gregorianDay) {
+// //判断当前年份是否存在农历日对应的阳历日
+// while (gregorianDay == -1) {
+// //不存在,计算明年
+// todayYear += 1;
+// chineseDate = new ChineseDate(todayYear, chineseMonth, chineseDay, false);
+// gregorianDay = chineseDate.getGregorianDay();
+// }
+// //存在
+// //将农历日期改为阳历日期
+// Calendar gregorianbir = chineseDate.getGregorianCalendar();
+// //判断这个日期是否和今年是同一年
+// if (todayYear == dateToday.get(Calendar.YEAR)) {
+// //是同一年,判断这一天过了没
+// if (gregorianbir.get(Calendar.DAY_OF_YEAR) < dateToday.get(Calendar.DAY_OF_YEAR)) {
+// //这一天过了,计算明年
+// todayYear += 1;
+// chineseDate = new ChineseDate(todayYear, chineseMonth, chineseDay, false);
+// gregorianDay = chineseDate.getGregorianDay();
+// //递归计算下一年是否存在对应的阳历日
+// return haveThisDay(chineseMonth, chineseDay, dateToday, todayYear, chineseDate, gregorianDay);
+// }
+// //没有过,直接计算
+// }
+// //不是同一年,直接计算
+// Date time = dateToday.getTime();
+// log.info("当前的日期是:{}", time);
+// Date time1 = gregorianbir.getTime();
+// log.info("下一个生日的日期:{}", time1);
+// return DateUtil.between(dateToday.getTime(), gregorianbir.getTime(), DateUnit.DAY);
+// }
+//
+// @Test
+// void test2() {
+//
+// TianXinReqParam param1 = new TianXinReqParam();
+// param1.setKey(DailyLoveConfigure.TianXin_Key);
+// param1.setCity(DailyLoveConfigure.City_ID);
+// param1.setType("7");
+// String weatherJson = dataRemoteClient.getWeather(param1);
+// log.info("weather:{}", weatherJson);
+// JSONObject resWeather = JSONObject.parseObject(weatherJson);
+// JSONObject result = resWeather.getJSONArray("result").getJSONObject(0).getJSONArray("list").getJSONObject(2);
+// log.info("----result----:{}", result);
+// Weather weather = result.toJavaObject(Weather.class);
+// log.info("weather:{}", weather);
+// ChineseDate chineseDate = new ChineseDate(DateUtil.parseDate(weather.getDate()));
+// System.out.println("--------------55555----------"+weather.getDate());
+// System.out.println("------------------------"+chineseDate);
+//
+//
+// }
+//
+//
+// @Test
+// void test1() {
+// int loveDays = getBirthdays("2023-05-14");
+// log.info("-------------------------------{}", loveDays);
+// }
+//
+// public static int getLoveDays(String loveday) {
+// SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
+// int days = 0;
+// try {
+// long time = System.currentTimeMillis() - dateFormat.parse(loveday).getTime();
+// days = (int) (time / (24 * 60 * 60 * 1000));
+//
+// } catch (ParseException e) {
+// e.printStackTrace();
+// }
+// return days;
+// }
+//
+// @Test
+// void contextLoads() {
// TianXinReqParam param1 = new TianXinReqParam();
// param1.setKey(DailyLoveConfigure.TianXin_Key);
// param1.setCity(DailyLoveConfigure.City_ID);
@@ -203,6 +203,6 @@ class DailyLoveApplicationTests {
// log.info("resultVo:{}", resultVo);
- }
+// }
}
diff --git a/start.sh b/start.sh
deleted file mode 100644
index 08f4af4..0000000
--- a/start.sh
+++ /dev/null
@@ -1,2 +0,0 @@
-nohup java -Xms32M -Xmx32M -jar /home/dailylove/dailylove.jar >> /home/dailylove/log/runout.log 2>&1 &
-tail -f /home/dailylove/log/runout.log
\ No newline at end of file