Spring boot Ebean:不是在这个服务器上注册了实体Bean吗?
我使用的是spring boot和Ebian,我遵循github的演示,pom是 域:Spring boot Ebean:不是在这个服务器上注册了实体Bean吗?,spring-boot,ebean,Spring Boot,Ebean,我使用的是spring boot和Ebian,我遵循github的演示,pom是 域: import com.avaje.ebean.Model; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; @Entity @Table(name="udp_dmp_crowd") public class Crowd extends Model{ @I
import com.avaje.ebean.Model;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name="udp_dmp_crowd")
public class Crowd extends Model{
@Id
Long crowd_id;
String crowd_name;
public String getCrowd_name() {
return crowd_name;
}
public void setCrowd_name(String crowd_name) {
this.crowd_name = crowd_name;
}
public Long getCrowd_id() {
return crowd_id;
}
public void setCrowd_id(Long crowd_id) {
this.crowd_id = crowd_id;
}
}
服务:
package com.ump.dmp.service;
import com.avaje.ebean.EbeanServer;
import com.ump.dmp.domain.Crowd;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class CrowdService {
@Autowired
EbeanServer server;
public List<Crowd> getCrowd() {
return server.find(Crowd.class).findList();
}
}
目前正在将Ebean与spring一起使用 我遇到了一个类似的问题,并成功地解决了它,我唯一要做的就是重建项目 顺便说一句,您需要遵守以下几个步骤才能使用Ebean:
- 确保在IDE和构建管理器中都启用了适当的Ebean增强插件
- 确保所有模型都已注释,并扩展基础模型
- 确保用于创建Ebean服务器的配置知道实体模型的位置,我通过将模型包添加到用于创建Ebean服务器的ServerConfig对象中来实现这一点
public class EbeanServerUtils {
public final static String MODELS_PACKAGE="com.my.package.models";
/**
* Create and return an Ebean Server using the configurations contained in the File
*
* @param name The name of the db. This is the name followed by the key datasource in the
* properties file. Ex: datasource.NAME.username=test
* usually the name is db
* @param setDefault True if this server must be setted as the default server
* @return
*/
public static EbeanServer getServer(final String name, File propertiesFile, boolean setDefault) throws IOException {
Properties properties = new Properties();
properties.load(new FileInputStream(propertiesFile));
ServerConfig config = getServerConfig(name,properties,setDefault);
EbeanServer server = EbeanServerFactory.create(config);
return server;
}
public static EbeanServer getServer(final String name, Properties properties, boolean setDefault) {
ServerConfig config = getServerConfig(name,properties,setDefault);
EbeanServer server = EbeanServerFactory.create(config);
return server;
}
private static ServerConfig getServerConfig(final String name, Properties properties, boolean setDefault) {
ServerConfig config = new ServerConfig();
config.setName(name);
config.loadFromProperties(properties);
if (setDefault) {
config.setDefaultServer(true);
config.setRegister(true);
}
config.addPackage(MODELS_PACKAGE);
return config;
}
}
下面是测试环境的典型配置文件
datasource.default=db
ebean.db.migration.run=false
ebean.migration.run=false
ebean.db.ddl.generate=false
ebean.db.ddl.run=false
datasource.db.username=username
datasource.db.password=myusernamepwd
datasource.db.databaseUrl=jdbc:h2:tcp://testmachine:9092//path/to/test/db;MODE=DB2;INIT=CREATE SCHEMA IF NOT EXISTS TESTSCHEMANAME;
datasource.db.databaseDriver=org.h2.Driver
希望它能帮助你,
问候语目前正在将Ebean与spring一起使用 我遇到了一个类似的问题,并成功地解决了它,我唯一要做的就是重建项目 顺便说一句,您需要遵守以下几个步骤才能使用Ebean:
- 确保在IDE和构建管理器中都启用了适当的Ebean增强插件
- 确保所有模型都已注释,并扩展基础模型
- 确保用于创建Ebean服务器的配置知道实体模型的位置,我通过将模型包添加到用于创建Ebean服务器的ServerConfig对象中来实现这一点
public class EbeanServerUtils {
public final static String MODELS_PACKAGE="com.my.package.models";
/**
* Create and return an Ebean Server using the configurations contained in the File
*
* @param name The name of the db. This is the name followed by the key datasource in the
* properties file. Ex: datasource.NAME.username=test
* usually the name is db
* @param setDefault True if this server must be setted as the default server
* @return
*/
public static EbeanServer getServer(final String name, File propertiesFile, boolean setDefault) throws IOException {
Properties properties = new Properties();
properties.load(new FileInputStream(propertiesFile));
ServerConfig config = getServerConfig(name,properties,setDefault);
EbeanServer server = EbeanServerFactory.create(config);
return server;
}
public static EbeanServer getServer(final String name, Properties properties, boolean setDefault) {
ServerConfig config = getServerConfig(name,properties,setDefault);
EbeanServer server = EbeanServerFactory.create(config);
return server;
}
private static ServerConfig getServerConfig(final String name, Properties properties, boolean setDefault) {
ServerConfig config = new ServerConfig();
config.setName(name);
config.loadFromProperties(properties);
if (setDefault) {
config.setDefaultServer(true);
config.setRegister(true);
}
config.addPackage(MODELS_PACKAGE);
return config;
}
}
下面是测试环境的典型配置文件
datasource.default=db
ebean.db.migration.run=false
ebean.migration.run=false
ebean.db.ddl.generate=false
ebean.db.ddl.run=false
datasource.db.username=username
datasource.db.password=myusernamepwd
datasource.db.databaseUrl=jdbc:h2:tcp://testmachine:9092//path/to/test/db;MODE=DB2;INIT=CREATE SCHEMA IF NOT EXISTS TESTSCHEMANAME;
datasource.db.databaseDriver=org.h2.Driver
希望它能帮助你,
问候我今天遇到了这个问题,我找到了这个问题的解决方案,您需要通过在
ebean.properties
ebean.search.packages=your.entity.package
详细信息:我今天遇到了这个问题,我找到了这个问题的解决方案,您需要通过在
ebean.properties中添加以下行来指定实体包
ebean.search.packages=your.entity.package
详细信息:在ebeans.properties中添加实体包解决了该问题
ebean.search.packages=com.example.entities
在ebeans.properties中添加实体包解决了此问题
ebean.search.packages=com.example.entities
在这里面对同样的问题。。。如果我能解决这个问题,我会让你知道在这里面对同样的问题。。。如果我能解决它,我会让你知道的