Я создаю приложение Spring Boot для извлечения данных из базы данных Oracle и отображения их в виде строки. Вот мой pom.xml
http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
com.mygit.boot
sampleBoot
0.0.1-SNAPSHOT
jar
sampleBoot
Demo project for Spring Boot
org.springframework.boot
spring-boot-starter-parent
2.0.1.RELEASE
UTF-8
UTF-8
1.8
org.springframework.boot
spring-boot-starter
org.springframework.boot
spring-boot-starter-test
test
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-tomcat
org.springframework
spring-tx
org.apache.httpcomponents
httpcore
javax.validation
validation-api
com.google.code.gson
gson
com.fasterxml.jackson.core
jackson-core
org.springframework.boot
spring-boot-starter-data-jpa
org.springframework.boot
spring-boot-maven-plugin
Может кто-нибудь помочь с этим, пожалуйста? ServerConfig — это мой класс Entity, а мой контроллер просто вызывает метод getAllConfigurationData() и печатает возвращаемый список в виде строки.
package com.mygit.boot.dao.impl;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;
import com.mygit.boot.dao.IFetchDao;
import com.mygit.boot.entity.ServerConfig;
@Repository
@Transactional
public class FetchDaoImpl implements IFetchDao {
@PersistenceContext
private EntityManager entityManger;
@Override
public List getAllConfigurationData() {
try {
return entityManger.createQuery("select c from ServerConfig c", ServerConfig.class).getResultList();
} catch (Exception e) {
System.out.println("Exception while fetching server config !!!");
}
return null;
}
}
Вот моя ошибка:
java.lang.IllegalStateException: Error processing condition on org.springframework.boot.autoconfigure.data.web.SpringDataWebAutoConfiguration.pageableCustomizer
Caused by: java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ObjectMapper
Контроллер:
package com.mygit.boot.controller;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.mygit.boot.dao.IFetchDao;
import com.mygit.boot.entity.ServerConfig;
@RestController
public class TestController {
@Autowired
private IFetchDao fetchDao;
@RequestMapping("/test")
public String print() {
List l=fetchDao.getAllConfigurationData();
return l.toString();
}
}
Класс сущности:
пакет com.mygit.boot.entity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import org.hibernate.annotations.NamedNativeQueries;
import org.hibernate.annotations.NamedNativeQuery;
@Entity
@Table(name = "serverconfig")
@NamedNativeQueries({ @NamedNativeQuery(name = "getMaxLoginAttemptsQuery", query = "SELECT * FROM serverconfig sconfig where sconfig.confKey=? and sconfig.configuration=?", resultClass = ServerConfig.class),
@NamedNativeQuery(name = "getPwdConfigProperties", query = "SELECT * FROM serverconfig sconfig WHERE sconfig.confKey IN ('"+Constants.NO_OF_UPPERCASES+"','"+Constants.NO_OF_LOWERCASES+"','"+Constants.NO_OF_DIGIT+"','"+Constants.NO_OF_SPECIALCHARS+"','"+Constants.PWD_MIN_LENGTH+"','"+Constants.PWD_MAX_LENGTH+"')", resultClass = ServerConfig.class)})
public class ServerConfig implements java.io.Serializable {
private static final long serialVersionUID = 1L;
@Id
@Column(name = "ID")
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SEQ_SERVERCONFIG")
@SequenceGenerator(name = "SEQ_SERVERCONFIG", sequenceName = "SEQ_SERVERCONFIG")
private Long id;
@Column(name = "CONFIGURATION", length = 45)
private String configuration;
@Column(name = "CONFKEY", length = 128)
private String confKey;
@Column(name = "CONFVALUE", length = 4000)
private String confValue;
public ServerConfig() {
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getConfiguration() {
return configuration;
}
public void setConfiguration(String configuration) {
this.configuration = configuration;
}
public String getConfKey() {
return confKey;
}
public void setConfKey(String confKey) {
this.confKey = confKey;
}
public String getConfValue() {
return confValue;
}
public void setConfValue(String confValue) {
this.confValue = confValue;
}
Основной класс приложения:
package com.mygit.boot.main;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
@SpringBootApplication
@ComponentScan({"com.mygit.boot.controller", "com.mygit.boot.dao", "com.mygit.boot.dao.impl", "com.mygit.boot.entity"})
public class SampleBootApplication {
public static void main(String[] args) {
SpringApplication.run(SampleBootApplication.class, args);
}
}