Java QueryWrapperでテーブルを関連付ける方法
JavaでQueryWrapperを使用して他のテーブルを関連付ける方法は、Lambda式を使用するか、直接SQLフラグメントを書くことで実現できます。以下にそれぞれの方法の例を示します:
- 他のテーブルとLambda式を使用して関連付ける。
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(User::getDepartmentId, 1);
List<User> userList = userMapper.selectList(queryWrapper);
- 他のテーブルとSQLフラグメントを関連付ける:
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.apply("user.department_id = department.id");
List<User> userList = userMapper.selectList(queryWrapper);
SQL片段を使用する際には、SQLインジェクション攻撃を避けるために注意する必要があります。入力パラメータが安全であることを確認してください。同時に、Lambda式を使用すると、より型安全性が高く、他のテーブルと関連付ける場合にはLambda式を使用することをお勧めします。