SpringBoot 07 之JPA使用
SpringBoot 07 之JPA使用
小鸟也疯狂 发表于1年前
SpringBoot 07 之JPA使用
  • 发表于 1年前
  • 阅读 31
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 新注册用户 域名抢购1元起>>>   

1、创建一个实体类

@Entity

public class Demo {

@Id @GeneratedValue

private long id;

private String name;

public long getId() {

return id;

}

public void setId(long id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

}

 

2、创建Controller

 

@RestController

@RequestMapping("/demo2")

public class Demo2Controller {

@Resource

private DemoService demoService;

@RequestMapping("/save")

public String save(){

Demo demo=new Demo();

demo.setId(1);

demo.setName("abc");

demoService.save(demo);

return "ok";

}

 

@RequestMapping("/getDemo")

public Demo getDemoById(){

return demoService.getDemoById(1);

}

}

 

3、创建Service

 

@Service

public class DemoService {

@Resource

private DemoRepository demoRepository;

@Resource

private DemoDao demoDao;

@Transactional

public void save(Demo demo){

demoRepository.save(demo);

}

@Transactional

public Demo getDemoById(long id){

//demoRepository.findOne(id);

//在demoRepository可以直接使用findOne进行获取.

return demoDao.getDemoById(id);

}

}

 

4、第一种是使用JPA的已经实现的增删改查的方法,第二种是采用JdbcTemplate的方式来定义sql,实现增删改查,此处只是实现了查询,数据库中必须存在数据,没有数据会报错。

(1)创建Dao,这是一个接口,没有具体的实现,这就是JPA

public interface DemoRepository extends CrudRepository<Demo, Long> {

}

 

(2)创建Dao,

 

@Repository

public class DemoDao {

@Resource

private JdbcTemplate jdbcTemplate;

public Demo getDemoById(long id){

String sql = "select *from Demo where id=?";

RowMapper<Demo> rowMapper = new BeanPropertyRowMapper<Demo>(Demo.class);

return jdbcTemplate.queryForObject(sql, rowMapper,id);

}

}

 

 

 

标签: Spring Boot
共有 人打赏支持
小鸟也疯狂
粉丝 10
博文 32
码字总数 9097
×
小鸟也疯狂
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: