计划作业不再运行

时间:2017-05-29 15:33:05

标签: java spring spring-batch

我有春季批处理项目,代码如下:

@Scheduled(fixedRate = 5000)
    public Job xmlJob() throws Exception {
        return jobBuilderFactory
                .get("XMLjob")
                .start(stepBuilderFactory.get("XML")
                        .<Person, Person>chunk(10)
                        .reader(personXmlReader())
                        .processor(xmlPersonProcessor())
                        .writer(displayData())
                        .build()
                )
                .build();
    }

@Bean
    StaxEventItemReader personXmlReader() throws Exception {
        System.out.println("Reader");
        Jaxb2Marshaller jaxb2Marshaller = new Jaxb2Marshaller();
        jaxb2Marshaller.setClassesToBeBound(Person.class);
        jaxb2Marshaller.afterPropertiesSet();

        StaxEventItemReader staxEventItemReader = new StaxEventItemReader();
        staxEventItemReader.setName("persons");
        staxEventItemReader.setResource(new ClassPathResource("person.xml"));
        staxEventItemReader.setFragmentRootElementName("person");
        staxEventItemReader.setUnmarshaller(jaxb2Marshaller);

        return staxEventItemReader;
    }

@Override
    public Person process(final Person person) throws Exception {

        final int id = person.getPersonId();
        final String firstName = person.getFirstName().toUpperCase();
        final String lastName = person.getLastName().toUpperCase();
        final int age = person.getAge();
        final String job = person.getJob();

        final Person transformedPerson = new Person(id, firstName, lastName, age+1, job);
        log.info("Job Converting (" + person + ") into (" + transformedPerson + ")");
        return transformedPerson;
    }

程序从xml文件中读取结构,然后将其打印到控制台中。 问题是工作不再运行,我不知道为什么。 当我写这样的东西时:

@Scheduled(fixedRate = 5000)
    public String show(){
        System.out.println("System");
        return null;
    }

程序正常运行... 我启用了@EnableScheduling。

0 个答案:

没有答案