rename com.imyeyu.server to com.imyeyu.api
This commit is contained in:
75
src/main/java/com/imyeyu/api/TimiServerAPI.java
Normal file
75
src/main/java/com/imyeyu/api/TimiServerAPI.java
Normal file
@@ -0,0 +1,75 @@
|
||||
package com.imyeyu.api;
|
||||
|
||||
import com.imyeyu.io.IO;
|
||||
import com.imyeyu.java.TimiJava;
|
||||
import com.imyeyu.java.bean.Language;
|
||||
import com.imyeyu.java.ref.Ref;
|
||||
import com.imyeyu.spring.TimiSpring;
|
||||
import com.imyeyu.utils.OS;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.BeansException;
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.context.ApplicationContextAware;
|
||||
import org.springframework.core.env.Environment;
|
||||
import org.springframework.transaction.annotation.EnableTransactionManagement;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
/**
|
||||
* 夜雨综合数据中心接口
|
||||
*
|
||||
* <p>本端所有接口面向用户,不做管理接口,数据管理将使用 JavaFX
|
||||
*
|
||||
* @author 夜雨
|
||||
* @since 2021-02-23 21:35
|
||||
*/
|
||||
@Slf4j
|
||||
@SpringBootApplication(scanBasePackages = {"com.imyeyu.api", "com.imyeyu.spring"})
|
||||
@EnableTransactionManagement
|
||||
public class TimiServerAPI implements OS.FileSystem, ApplicationContextAware {
|
||||
|
||||
private static final String DEV_LANG_CONFIG = "dev.lang";
|
||||
|
||||
public static ApplicationContext applicationContext;
|
||||
|
||||
@Override
|
||||
public void setApplicationContext(@NotNull ApplicationContext applicationContext) throws BeansException {
|
||||
TimiServerAPI.applicationContext = applicationContext;
|
||||
}
|
||||
|
||||
public static Language getUserLanguage() {
|
||||
Language userLanguage = TimiSpring.getLanguage();
|
||||
Environment env = applicationContext.getBean(Environment.class);
|
||||
if (env.containsProperty(DEV_LANG_CONFIG)) {
|
||||
String property = env.getProperty(DEV_LANG_CONFIG);
|
||||
if (TimiJava.isNotEmpty(property)) {
|
||||
userLanguage = Ref.toType(Language.class, property);
|
||||
}
|
||||
}
|
||||
return userLanguage;
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
try {
|
||||
{
|
||||
// 导出配置
|
||||
String[] files = {"application.yml", "logback.xml"};
|
||||
for (int i = 0; i < files.length; i++) {
|
||||
File file = new File("config" + SEP + files[i]);
|
||||
if (!file.exists() || !file.isFile()) {
|
||||
log.info("exporting default config at {}", file.getAbsolutePath());
|
||||
IO.resourceToDisk(TimiServerAPI.class, files[i], file.getAbsolutePath());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 启动 SpringBoot
|
||||
SpringApplication.run(TimiServerAPI.class, args);
|
||||
} catch (Exception e) {
|
||||
log.error("launch error", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user