Java 我想创建非web spring启动应用程序
我想创建非web spring启动应用程序。但我有以下错误Java 我想创建非web spring启动应用程序,java,spring,spring-boot,spring-mvc,spring-data,Java,Spring,Spring Boot,Spring Mvc,Spring Data,我想创建非web spring启动应用程序。但我有以下错误 @SpringBootApplication public class TaskApplication implements CommandLineRunner { @Autowired TaskService taskService; public static void main(String[] args) { SpringApplication.run(TaskApplication.
@SpringBootApplication
public class TaskApplication implements CommandLineRunner {
@Autowired
TaskService taskService;
public static void main(String[] args) {
SpringApplication.run(TaskApplication.class, args);
}
@Override
public void run(String... args) throws Exception {
taskService.print();
}
}
public interface TaskService {
public void print();
}
public class TaskServiceImpl implements TaskService {
@Override
public void print() {
System.out.println("sam");
}
}
特性:
spring.datasource.url=jdbc:mysql://localhost:3306/demo?verifyServerCertificate=false&useSSL=false&requireSSL=false&allowPublicKeyRetrieval=true
spring.datasource.username=root
spring.datasource.password=root@123
spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver
spring.jpa.show-sql=true
spring.jpa.hibernate.dialect=org.hibernate.dialect.MySQLDialect
spring.main.allow-bean-definition-overriding=true
##spring.jpa.hibernate.ddl-auto=update
错误
行动:
考虑在配置中定义“com.example.task.service.TaskService”类型的bean
您需要在主类上配置@EnableAutoConfiguration,并且您的TaskService必须用@Service注释。您需要在主类上配置@EnableAutoConfiguration,并且您的TaskService必须用@Service注释。Deinum已经在注释中解释过。您需要使用
@Service
或@Component
注释标记类,以创建Springbean并在main方法中自动连接
// mark it with service annotation.
@Service
public class TaskServiceImpl implements TaskService {
@Override
public void print() {
System.out.println("sam");
}
}
要理解为什么这里需要这些注释,请访问此链接:@M.Deinum已经在评论中解释过了。您需要使用
@Service
或@Component
注释标记类,以创建Springbean并在main方法中自动连接
// mark it with service annotation.
@Service
public class TaskServiceImpl implements TaskService {
@Override
public void print() {
System.out.println("sam");
}
}
要了解为什么需要在此处进行这些注释,请访问此链接:您的
TaskServiceImpl
应使用@Service
或@Component
进行注释以检测。您的TaskServiceImpl
应使用@Service
或@Component
进行注释检测到。@EnableAutoConfiguration
已通过@SpringBootApplication
暗示,因此无需添加。@EnableAutoConfiguration
已通过@SpringBootApplication
暗示,因此无需添加。