diff --git a/src/java-jpa-entity.js b/src/java-jpa-entity.js index 87c7a91..4fff6cc 100644 --- a/src/java-jpa-entity.js +++ b/src/java-jpa-entity.js @@ -85,6 +85,8 @@ module.exports = { repo.pkeyPascalCase = utils.pascalcase(repo.pkey) repo.pkey_type = model.fields.find(field => field.isPkey).type + repo.findById = repo.pkey != 'id' + repo.name = `${utils.pascalcase(model.name)}Repository` repo.package = `${namespace}.${suffix}`; repo.dir = model.package.replace(/\./g, '/') diff --git a/templates/jpa-repository.java.mustache b/templates/jpa-repository.java.mustache index 83be805..5d77e77 100644 --- a/templates/jpa-repository.java.mustache +++ b/templates/jpa-repository.java.mustache @@ -27,8 +27,9 @@ import java.util.Optional; public interface {{record_type}}Repository extends JpaRepository<{{record_type}}, {{pkey_type.name}}> { List<{{record_type}}> findAllBy{{pkeyPascalCase}}In(List<{{pkey_type.name}}> ids); - + {{#findById}} {{record_type}} findBy{{pkeyPascalCase}}(@NonNull {{pkey_type.name}} {{pkey}}); + {{/findById}} {{#indexes}} List<{{record_type}}> findAllBy{{namePascalCase}}(@NonNull {{type.name}} {{name}});