Springboot Jpa


mysql
mysql-connector-java


org.springframework.boot
spring-boot-starter-data-jpa

/* application.properties 配置文件 */

配置方言 否则提示:Access to DialectResolutionInfo cannot be null when ‘hibernate.dialect’ not set

spring.jpa.database-platform=org.hibernate.dialect.MySQL5Dialect

自动更新数据库表结构,也可以是 validate | update | create | create-drop

spring.jpa.properties.hibernate.hbm2ddl.auto=update

显示sql语句

spring.jpa.show-sql=true

/* 初始类 不用动*/
@SpringBootApplication
public class SpringbootanddataApplication {
public static void main(String[] args) {
SpringApplication.run(SpringbootanddataApplication.class, args);
}
}

/* model 实体类 /
@Entity /
是一个必选的注解,声明这个类对应了一个数据库表 */
@Table(name=“user”)
/是一个可选的注解。声明了数据库实体对应的表信息包括表名称、索引信息等。这里声明这个实体类对应的表名是 user。如果没有指定,则表名和实体的名称保持一致/
public class User {
@Id @GeneratedValue(strategy = GenerationType.AUTO)
private Integer id;
private String name;
private Integer age;

public Integer getId() {
    return id;
}

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

public String getName() {
    return name;
}

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

public Integer getAge() {
    return age;
}

public void setAge(Integer age) {
    this.age = age;
}

@Override
public String toString() {
    return "User{" +
            "id=" + id +
            ", name='" + name + '\'' +
            ", age=" + age +
            '}';
}

}
/* 持久层 /
@Repository /
继承 JpaRepository /
public interface UserMapper extends JpaRepository {
User findById(Integer id);/
注意 方法名是固定的 自己的按规定来写*/
}

/* service 接口 跟持久层的 方法名一致*/
public interface UserService {
User findByid(Integer id);
}

/* service 实现类*/
@Service
@Transactional/增删改 操作必须要事物管理 不然 jpa 报错/
public class UserServiceImpl implements UserService {
@Autowired /* 注入mapper接口 */
private UserMapper userMapper;

@Override
public User findByid(Integer id) {
    /* 调用mapper接口中的方法 */
    return userMapper.findById(id);
}

}
/* 测试类 */
@RunWith(SpringRunner.class)
@SpringBootTest
public class SpringbootanddataApplicationTests {

@Autowired
private UserService userService;
@Test
public void contextLoads() {
    User user = userService.findByid(1);
    SysStem.out.println(user);
}

}

你可能感兴趣的:(Springboot Jpa)