首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Querydsl-jpa和querydsl-sql与代码生成相结合

将Querydsl-jpa和querydsl-sql与代码生成相结合
EN

Stack Overflow用户
提问于 2019-01-05 06:32:42
回答 2查看 2.2K关注 0票数 1

事情是这样的:

  1. 我一直在我的项目中使用querydsl-jpa,代码生成从来都不是一个问题。我在maven com.mysema.maven maven-apt-plugin1.0生成源进程${project.build.directory}/generated com.querydsl.apt.jpa.JPAAnnotationProcessor中使用了这个插件。
  2. 现在,我还需要使用querydsl-sql,显然,我不能使用com.querydsl.apt.jpa.JPAAnnotationProcessor创建的Q-generated类。下面是maven中的插件: com.querydsl querydsl-maven-plugin4.2.1导出com.mysql.cj.jdbc.Driver jdbc:mysql://localhost:3306/mydatabase根${project.basedir}/target/generated-sources/java com.myproject.domain mysql -连接器-java8.0.13

挑战

  1. 上面的第二个插件为DBMS中的所有模式(Q,MySql)生成-classes,而我指定了要从其中生成Q-classes的模式。
  2. 如何从文件中指定用户名、密码和jdbcUrl,因为我不想在git存储库中存储敏感信息。
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-01-07 04:55:50

以下是我的解决方案:

  1. 对于挑战之一,我还没有找到解决方案本身,而是某种解决办法。我在DBMS (MySql)中创建了一个用户,它对我感兴趣的单个模式具有特权。这样,用户就无法为其他模式生成Q-classes。所以问题一“解决了”。

不过,我仍然认为,在插件中,应该能够指定要生成的模式。有趣的是,@Rober建议的<schemaPattern></schemaPattern> (也在 querydsl-sql 文档中)不起作用。

  1. 对于第二个挑战,首先需要创建一个属性文件,比如具有所需内容的dev.properties jdbc-url=jdbc:mysql://localhost:3306/myschema?nullNamePatternMatchesAll=true jdbc-user=my_user jdbc-password=my_password 然后,包括以下properties-maven-plugin org.codehaus.mojo属性.maven-plugin1.0-alpha-2初始化读-项目-属性dev.properties //引用属性文件...在你的查询中-dsl插件. com.querydsl querydsl-maven-plugin 4.2.1导出com.mysql.jdbc.Driver ${jdbc-url} ${jdbc-user} ${ jdbc-user}${jdbc-url}${jdbc-用户}${jdbc-url}${jdbc-用户}${jdbc-url}${jdbc-用户}${jdbc-密码} ${project.basedir}/target/generated-sources/java mysql mysql-连接器-java6.0.6

查看此链接以获取更多信息从属性文件中读取pom.xml配置

票数 2
EN

Stack Overflow用户

发布于 2019-01-05 19:20:43

  1. schemaPattern元素中使用configuration:“模式名称模式以类似的模式形式;必须与存储在数据库中的模式名称相匹配,多个模式可以用逗号(默认值:null)与querydsl博士分隔”。
  2. 虽然没有完全按照你的要求去做,但我相信这是解决这个问题的标准方法。在Maven pom中使用加密数据
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54049598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档