小编Mar*_*ark的帖子

PBEKeySpec对iterationCount和keyLength参数有何影响?

深入研究java加密和散列世界,我看到了PBEKeySpec类的构造函数的示例,其中包含各种值iterationCountkeyLength参数.似乎没有什么能解释这些参数的影响或意义.

我假设keyLength密钥是多长时间,因此密钥长度的32位加密值为32,但这种假设感觉不对.我的猜测iterationCount是每个字符加密的次数,也不再感受到对这个假设的喜爱.

欢迎链接到信息或解释.

java encryption cryptography pbkdf2 kdf

19
推荐指数
1
解决办法
1万
查看次数

hibernate插入到集合会导致删除,然后再次插入集合中的所有项目

我和CohortGroup和员工有很多关系.每当我将一个Employee插入CohortGroup时,hibernate都会从分辨率表中删除该组,并再次插入所有成员,再加上新成员.为什么不添加新的?

集团中的注释:

@ManyToMany(cascade = { PERSIST, MERGE, REFRESH })
@JoinTable(name="MYSITE_RES_COHORT_GROUP_STAFF",
joinColumns={@JoinColumn(name="COHORT_GROUPID")},
inverseJoinColumns={@JoinColumn(name="USERID")})
public List<Employee> getMembers(){
  return members;
}
Run Code Online (Sandbox Code Playgroud)

员工的另一面

@ManyToMany(mappedBy="members",cascade = { PERSIST, MERGE, REFRESH } )
public List<CohortGroup> getMemberGroups(){
  return memberGroups;
}
Run Code Online (Sandbox Code Playgroud)

代码片段

Employee emp = edao.findByID(cohortId);
CohortGroup group = cgdao.findByID(Long.decode(groupId));
group.getMembers().add(emp);
cgdao.persist(group);
Run Code Online (Sandbox Code Playgroud)

下面是日志中报告的sql

delete from swas.MYSITE_RES_COHORT_GROUP_STAFF where COHORT_GROUPID=?
insert into swas.MYSITE_RES_COHORT_GROUP_STAFF (COHORT_GROUPID, USERID) values (?, ?)
insert into swas.MYSITE_RES_COHORT_GROUP_STAFF (COHORT_GROUPID, USERID) values (?, ?)
insert into swas.MYSITE_RES_COHORT_GROUP_STAFF (COHORT_GROUPID, USERID) values (?, ?)
insert into swas.MYSITE_RES_COHORT_GROUP_STAFF (COHORT_GROUPID, USERID) values …
Run Code Online (Sandbox Code Playgroud)

java orm hibernate jpa

8
推荐指数
3
解决办法
9646
查看次数

标签 统计

java ×2

cryptography ×1

encryption ×1

hibernate ×1

jpa ×1

kdf ×1

orm ×1

pbkdf2 ×1