个人博客系统总结
1、logger.error报错
报错信息:Cannot resolve method ‘error’ in ‘Logger’
报错原因:导包错误(import java.util.logging.Logger;)
修改方法:导入包(import org.slf4j.Logger;)
2、Junit @Before @After @BeforeClass @AfterClass 控制台不输出
进行如下替换即可
@Before——@BeforeEach
@After——@AfterEach
@BeforeClass——@BeforeAll
@AfterClass——@AfterAll
BeforeAll和AfterAll的方法必须是静态方法,因为他希望每个类的只初始化一次
3、@Entity注解
-
导包
<!-- https://mvnrepository.com/artifact/javax.persistence/persistence-api --> <dependency> <groupId>javax.persistence</groupId> <artifactId>persistence-api</artifactId> <version>1.0</version> </dependency>
-
@Entity是指这个类映射到数据库表, 当你不使用这个类(被注解的类)时,后台不会对其进行处理,只有当你从数据库读取数据时,由于你要读取的表映射有实体类(被@Entity注释的), 那么后台应该会自动帮你实例化一个对象, 然后将数据库中的数据填充到对象中
-
avax.persistence这个包的作用是持久化,集体的说就是在实体类中进行元数据标签的作用,就是使得实体类与数据库中的表建立映射关系
还有一个点就是JPA与hibernate的区别, JPA不等同于hibernate,Hibernate 是作为JPA的一种实现, JPA的注解已经是hibernate的核心了,hibernate只是提供了一些补充,JPA和hibernate也不是俩套注解,hibernate对jpa的支持够足量的,在使用hibernate注解建议使用jpa
4、JPA构建实体类无法生成数据表
一般解决方法:
- 菜单栏view ——> Tool Windows ——>Persistence
- 右击项目,选择Assign Data Source
- 选择数据库
PS:若以上执行完成后依然无法创建数据表,可能是因为没有选择正确的数据库。
5、@Notblank用法
- 引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
- 实体类上加注解
@NotBlank(message = "验证标准不能为空")
private String trialStandardCode;
- 接收该类的controller方法里加注解 @Valid
public R insert(@RequestBody @Valid TrialItem trialItem) {
return null;
}