0
봄 부팅 응용 프로그램에 새내기가 있습니다. 나머지 컨트롤러로 처리해야하는 일반적인 저장소를 만드는 작업이 있습니다. 방금 몇 가지 예를 시작했습니다. 하지만 내 응용 프로그램은 임베디드 바람둥이 시작되지 않습니다. 또한 나머지 컨트롤러 URI는 매핑되지 않습니다. 이것은 maven 모듈 프로젝트이며 모든 의존성은 부모 클래스에서 설정됩니다. 이 문제를 해결하는 방법. 여기 스프링 부트 응용 프로그램이 포함 된 톰캣을 시작하지 않습니다.
내 코드입니다import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class CRUDEngineApplication {
public static void main(String[] args) {
SpringApplication.run(CRUDEngineApplication.class, args);
}
}
컨트롤러
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RestController;
import com.scm.services.CRUDEngineService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@RestController("/api")
public class CRUDEngineController {
@Autowired
private CRUDEngineService crudEngineService;
public static final Logger logger =
LoggerFactory.getLogger(CRUDEngineController.class);
/* public void setProductService(CRUDEngineService crudEngineService) {
this.crudEngineService = crudEngineService;
}*/
@RequestMapping(value = "/user", method = RequestMethod.POST)
public ResponseEntity<?> createUser(@RequestBody Object entity) {
System.out.println("Check point entered.");
crudEngineService.save(entity);
return new ResponseEntity<String>(HttpStatus.CREATED);
}
}
서비스 인터페이스는
import java.util.UUID;
public interface CRUDEngineService {
void save(Object entity);
void delete(UUID id);
}
서비스 구현 클래스가
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.scm.repositories.CRUDEngineRespository;
import java.util.UUID;
@Service
public class CRUDEngineServiceImpl implements CRUDEngineService {
@Autowired
private CRUDEngineRespository productRepository;
@Override
public void save(Object entity) {
productRepository.save(entity);
}
@Override
public void delete(UUID id) {
productRepository.delete(id);
}
}
,369 임
그리고 침전물 저장소 구현은
import java.util.UUID;
import org.springframework.data.repository.CrudRepository;
public interface CRUDEngineRespository extends CrudRepository<Object, UUID>
{
}
하위의 pom.xml이
<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.scm</groupId>
<artifactId>scm-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>crudEngineService</artifactId>
<packaging>war</packaging>
<name>crudEngineService</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>
부모 치어가
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.scm</groupId>
<artifactId>scm-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<name>scm-parent</name>
<description>scm project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.7.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-cassandra</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-rest</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-validator -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>5.4.1.Final</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<modules>
<module>userService</module>
<module>authenticationService</module>
<module>dataLayerService</module>
<module>uiService</module>
<module>crudEngineService</module>
</modules>
입니다 그리고 콘솔 결과가
0입니다2017-10-07 13:03:32.348 INFO 6508 --- [ main]
c.s.configuration.CRUDEngineApplication : Starting CRUDEngineApplication on
STS-STP-A808 with PID 6508 (started by muthuvignesh.k in E:\Septa_Bench\STS
Septa Repo\ppts_scm\scm-parent\crudEngineService)
2017-10-07 13:03:32.350 INFO 6508 --- [ main]
c.s.configuration.CRUDEngineApplication : No active profile set, falling
back to default profiles: default
2017-10-07 13:03:32.378 INFO 6508 --- [ main]
s.c.a.AnnotationConfigApplicationContext : Refreshing org.spring[email protected]4df828
d7: startup date [Sat Oct 07 13:03:32 IST 2017]; root of context hierarchy
2017-10-07 13:03:32.766 WARN 6508 --- [ main]
o.h.v.m.ParameterMessageInterpolator : HV000184:
ParameterMessageInterpolator has been chosen, EL interpolation will not be supported
2017-10-07 13:03:32.872 WARN 6508 --- [ main] o.h.v.m.ParameterMessageInterpolator : HV000184: ParameterMessageInterpolator has been chosen, EL interpolation will not be supported
2017-10-07 13:03:33.052 INFO 6508 --- [ main] com.datastax.driver.core.Native : Could not load JNR C Library, native system calls through this library will not be available (set this logger level to DEBUG to see the full stack trace).
2017-10-07 13:03:33.052 INFO 6508 --- [ main] com.datastax.driver.core.ClockFactory : Using java.lang.System clock to generate timestamps.
2017-10-07 13:03:33.197 INFO 6508 --- [ main] com.datastax.driver.core.NettyUtil : Did not find Netty's native epoll transport in the classpath, defaulting to NIO.
2017-10-07 13:03:33.541 INFO 6508 --- [ main] c.d.d.c.p.DCAwareRoundRobinPolicy : Using data-center name 'datacenter1' for DCAwareRoundRobinPolicy (if this is incorrect, please provide the correct datacenter name with DCAwareRoundRobinPolicy constructor)
2017-10-07 13:03:33.543 INFO 6508 --- [ main] com.datastax.driver.core.Cluster : New Cassandra host /10.10.30.125:9042 added
2017-10-07 13:03:33.795 INFO 6508 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup
2017-10-07 13:03:33.804 INFO 6508 --- [ main] c.s.configuration.CRUDEngineApplication : Started CRUDEngineApplication in 1.619 seconds (JVM running for 2.002)
당신은 '시작되지'무엇을 의미합니까? 어떤 오류가 있습니까? catalina.out 로그를 붙이십시오. – zuckermanori
콘솔 결과를 업데이트했습니다. @zuckermanori –
컨테이너가 없으므로 제공된 범위로 설정합니다. 즉, 런타임시 사용할 수 없으므로 시작할 것이 없습니다. –