lunar是一个支持阳历、阴历、佛历和道历的日历工具库
地址:http://6tail.cn/calendar/api.html
<dependency>
<groupId>cn.6tail</groupId>
<artifactId>lunar</artifactId>
<version>1.6.3</version>
</dependency>
import com.alibaba.fastjson2.JSONObject;
import com.nlf.calendar.Lunar;
import java.util.List;
/**
* @Description 老黄历工具
* @Author WangKun
* @Date 2024/2/20 15:16
* @Version
*/
public class ChinaCalendarUtil {
/**
* @param
* @Description 获取当日老黄历 (地址:<a href="http://6tail.cn/calendar/api.html">...</a>)
* gj:公历/阳历
* nj:农历/阴历
* xs:喜神方位
* ygs1:阳贵神方位
* ygs2:阴贵神方位
* fs:福神方位
* cs1:财神方位
* cs2:冲煞
* zx:十二值星
* ts:十二天神
* y:宜
* j:忌
* jsyq:吉神宜趋
* xsyj:凶煞宜忌
* @Throws
* @Return com.alibaba.fastjson2.JSONObject
* @Date 2024-02-20 16:10:29
* @Author WangKun
*/
public static JSONObject getChinaCalendar() {
JSONObject obj = new JSONObject();
//今天
Lunar d = new Lunar();
obj.put("gj", d.getSolar().toFullString());
obj.put("nj", d.getYearInChinese() + "年 " + d.getMonthInChinese() + "月 " + d.getDayInChinese() + "日 " + "星期" + d.getWeekInChinese());
obj.put("xs", d.getDayPositionXi() + " = " + d.getDayPositionXiDesc());
obj.put("ygs1", d.getDayPositionYangGui() + " = " + d.getDayPositionYangGuiDesc());
obj.put("ygs2", d.getDayPositionYinGui() + " = " + d.getDayPositionYinGuiDesc());
obj.put("fs", d.getDayPositionFu() + " = " + d.getDayPositionFuDesc());
obj.put("cs1", d.getDayPositionCai() + " = " + d.getDayPositionCaiDesc());
obj.put("cs2", "冲:" + d.getDayChongDesc() + " 煞:" + d.getDaySha());
obj.put("zx", d.getZhiXing());
obj.put("ts", d.getDayTianShen() + " 天神道:" + d.getDayTianShenType() + " 天神吉凶:" + d.getDayTianShenLuck());
StringBuilder y = new StringBuilder();
List<String> l = d.getDayYi();
for (String s : l) {
y.append(s).append(" ");
}
obj.put("y", y);
StringBuilder j = new StringBuilder();
l = d.getDayJi();
for (String s : l) {
j.append(s).append(" ");
}
obj.put("j", j);
StringBuilder js = new StringBuilder();
List<String> ll = d.getDayJiShen();
for (String s : ll) {
js.append(s).append(" ");
}
obj.put("jsyq", js);
StringBuilder xs = new StringBuilder();
ll = d.getDayXiongSha();
for (String s : ll) {
xs.append(s).append(" ");
}
obj.put("xsyj", xs);
return obj;
}