如何使用Spring启动本地简单项目?

时间:2018-02-25 10:16:18

标签: java spring-boot

这有点傻,但我真的错过了这一点。我有一个Spring Boot工作应用程序,主要的Application类是

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Application {

  public static void main(String[] args) {
    SpringApplication.run(Application.class, args);
  }

}

它来自这个https://github.com/netgloo/spring-boot-samples/tree/master/spring-boot-mysql-springdatajpa-hibernate伟大而简单的例子。 它有一个用于http请求的控制器,表示

@RequestMapping("/create")
  @ResponseBody
  public String create(String email, String name) {
    User user = null;
    try {
      user = new User(email, name);
      userDao.save(user);
    }
    catch (Exception ex) {
      return "Error creating the user: " + ex.toString();
    }
    return "User succesfully created! (id = " + user.getId() + ")";
  }

我的问题是,我如何使用它像我的简单本地应用程序与main()mwthod中的一些逻辑? 我试过像

这样的东西
new UserController().create("test@test.test", "Test User");

虽然没有错误,但它不起作用。我只是不需要任何http请求/响应。

2 个答案:

答案 0 :(得分:2)

一旦应用程序运行并且UserController()准备好接受@Controller注释的请求,则可以通过url调用create方法 例如localhost:8080 / create提供电子邮件,名称作为请求参数

答案 1 :(得分:0)

是的,您可以创建sprint启动命令行应用程序。

请在spring boot的Application类中添加以下方法

@Autowired
private UserServiceImpl userServiceImpl;

@Bean
public CommandLineRunner commandLineRunner(ApplicationContext context) {

    return ((String...args) -> {

    /**
     * 
     * Call any methods of service class
     * 
     */ 

     userServiceImpl.create();

    });
}