spring boot 使用jpa连接数据库 dao层怎么写

spring boot 使用jpa连接数据库 dao层怎么写,第1张

spring data jpa 默认预先生成了一些基本的CURD的方法,例如:增、删、改等等

1 继承JpaRepository

public interface UserRepository extends JpaRepository<User, Long>{

}

2 使用默认方法

@Test

public void testBaseQuery() throws Exception {

User user=new User()

userRepository.findAll()

userRepository.findOne(1l)

userRepository.save(user)

userRepository.delete(user)

userRepository.count()

userRepository.exists(1l)

// ...

}

需求新加了个bean修改的方法,因为不想使用公司的轮子,就自己写了个多参数动态提交的方法,项目的框架是EJB3+JPA,这里记录一下给需要用的人。

1.前端根据页面单个表单传递的数据和修改后的表单数据做对比,只将更改过的表单数据传递到后台中;

2.后台得到前端传递的数据,转型为map,根据map的key与value动态的交给JPA Query拼接sql并执行;

3.这里需要注意的是,因为是根据map中的key与value,所以前端传递的key需要与库中的bean表中的属性名称相同。

1.dao层

2.servlet里定义了好了json的格式,所以只对需要处理的数据进行处理就行了

3.soa前后台分离,所以前台js不是我写的,但是也学到一点东西,对于定义好的对象,是可以直接obj.prop = prop的,我一直以为是需要先定义属性再添加的。

-end-

你最好 只把SQL中的变量当成参数 ,不要把整个WHERE语句当参数。

比如:你只把id和name当参数,就是他加上了引号也是可行的。

select * from media m where m.id=:id and m.name=:name

public List<Media>getMediaList(@Param("id") int id,@Param("name") String name)

而你把“where id =1 and name=z” 这一整句话当了参数,那估计是不可行的。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11225227.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存