gpt4 book ai didi

java - 为什么当我启动服务器时 spring 会清空我的数据库表?

转载 作者:行者123 更新时间:2023-11-30 02:14:16 26 4
gpt4 key购买 nike

我有一个数据库表roles,其中包含 96 个预定义数据行,但是当我启动服务器(在 Tomcat 8.5.28 上运行)时,它会清空该表。我想知道为什么它会这样做?

角色 Controller

@RestController
public class RoleController {

private final Logger logger = LoggerFactory.getLogger(RoleController.class);

final RoleServiceImpl roleService;

@Autowired
public RoleController(RoleServiceImpl roleService) {
this.roleService = roleService;
}

@RequestMapping(method = RequestMethod.GET)
public Iterable<Role> getAllRolesByName() {
return roleService.list();
}
}

角色(模型/实体)

@Entity
@Table(name = "roles")
public class Role {

@Id
@Column(name = "id")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;

@Column(name = "name")
private String name;

// region: constructors

public Role() {
}

public Role(String name) {
this.name = name;
}

// endregion: constructors

// region: getters & setters

public int getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

// endregion: getters & setters

// region: methods

// endregion: methods
}

RoleServiceImpl

@Service
public class RoleServiceImpl implements RoleService {

private final RoleRepository roleRepository;

@Autowired
public RoleServiceImpl(RoleRepository roleRepository) {
this.roleRepository = roleRepository;
}

public Iterable<Role> list() {
return roleRepository.findAll();
}
}

角色服务

public interface RoleService {
}

角色存储库

public interface RoleRepository extends CrudRepository<Role, Integer> {
}

每次启动服务器时,我都可以加载预定义的 96 个数据行,但我想知道这是否正常。 (也就是说,如果该服务器处于 Activity 状态并且我必须关闭它进行维护或类似的操作,它会清空表中的所有数据吗?我觉得这有点奇怪。)
--- 额外注释 ---
我正在使用 Postgres 和 Hibernate。我的配置是 100% Java。
先感谢您!

最佳答案

您能否检查一下 hibernate 属性文件中“hibernate.hbm2ddl.auto”字段的替换值是什么。

如果 hibernate.hbm2ddl.auto = “create”或“create-drop”,这将导致在服务器重新启动期间删除数据。

关于java - 为什么当我启动服务器时 spring 会清空我的数据库表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49088315/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com