Я просто следую некоторому руководству по загрузке документов через Spring.Так, работая над этим, я столкнулся с проблемой выше.Поскольку есть много вопросов, связанных с одним и тем же вопросом, я отсылаю их и пробовал все, но ни одна не исправила проблему.Заранее мне не нужно добавлять @Repository для моего интерфейса Repository и @EnableJpaRepositories в мой класс Application, поскольку я использую правильную последовательность пакетов.Для получения дополнительной информации см. https://dzone.com/articles/spring-spring-boot-and-component-scan. Пожалуйста, помогите мне.
Класс приложения
@SpringBootApplication
@ComponentScan("com.project.abhishek")
public class DocumnetwebApplication {
public static void main(String[] args) {
SpringApplication.run(DocumnetwebApplication.class, args);
}}
Контроллер
@Controller
public class DocumentController {
@Autowired
private DocumentRepository documentRepo;
@RequestMapping("/displayUpload")
public String displayUpload() {
return "documentUpload";
}
@RequestMapping(value="/upload", method=RequestMethod.POST )
public String upload(@RequestParam("document")MultipartFile multiPartFile, @RequestParam("id")long id) {
Document document = new Document();
document.setId(id);
document.setName(multiPartFile.getName());
try {
document.setData(multiPartFile.getBytes());
} catch (IOException e) {
e.printStackTrace();
}
documentRepo.save(document);
return "documentUpload";
}}
Боб
@Entity
public class Document {
@Id
private long id;
private String name;
@Lob
private byte[] data;
//getters and setters}}
Репозиторий
public interface DocumentRepository extends JpaRepository<Document, Long> {}
Файл свойств приложения
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=test
spring.jpa.properties.hibernate.id.new_generator_mappings=false
spring.jpa.show-sql=true
server.port=8083
spring.mvc.view.prefix=/WEB-INF/jsps/
spring.mvc.view.suffix=.jsp
server.servlet.context-path= /documentweb
файл pom
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<version>9.0.12</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
</dependencies>
Структура пакета
com.project.abhishek---application class
com.project.abhishek.controller
com.project.abhishek.entity
com.project.abhishek.repository