我想在我的logback.xml模式中包含一些spring属性,但直到我知道由于在logback.xml之后加载application.properties而不可能
有一种方法可以从application.properties或项目pom.xml中包含属性吗?
这是我的回溯代码:
%d {“yyyy-MM-dd HH:mm:ss,SSSZ”} [%p]%c $ {project.artifactId} - %msg%n
答案 0 :(得分:1)
您可以在Logback配置文件中使用名为<configuration>
<springProperty name="artifactId" source="project.artifactId"/>
...
<fileNamePattern> ... ${artifactId} ... </fileNamePattern>
...
</configuration>
的专用属性。
source
name
属性应与 application.properties 中的键匹配。 private static ViewPager viewPager;
private static int currentPage = 0;
private List<NewsModel> imageList=new ArrayList<>( );
private ViewPagerAdapter adapter;
private NewsController mController;
private Timer swipeTimer;
private Handler handler;
private Runnable Update;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.option_main_fragment, container, false);
viewPager = view.findViewById(R.id.pager);
adapter=new ViewPagerAdapter( this.getActivity(),imageList );
CircleIndicator indicator = (CircleIndicator) view.findViewById(R.id.indicator);
viewPager.setAdapter(adapter);
indicator.setViewPager(viewPager);
adapter.registerDataSetObserver(indicator.getDataSetObserver());
mController = new NewsController(this);
mController.startFetching();
return view;
}
@Override
public void onResume() {
// Auto start of viewpager
handler = new Handler();
Update= new Runnable() {
public void run() {
if (currentPage == imageList.size()) {
currentPage = 0;
}
viewPager.setCurrentItem(currentPage++, true);
System.out.println(viewPager.getCurrentItem());
}
};
swipeTimer = new Timer();
swipeTimer.schedule(new TimerTask() {
@Override
public void run() {
handler.post(Update);
}
},2000,5000);
super.onResume();
}
@Override
public void onPause() {
swipeTimer.cancel();
super.onPause();
}
属性用于引用配置中的值。