猿问

结合使用Querydsl-jpa和querydsl-sql以及代码生成

这是东西:


我一直querydsl-jpa在我的项目中使用代码生成从来就不是问题。我在使用此插件maven:


   <plugin>

        <groupId>com.mysema.maven</groupId>

        <artifactId>maven-apt-plugin</artifactId>

        <version>1.0</version>

        <executions>

            <execution>

                <phase>generate-sources</phase>

                <goals>

                    <goal>process</goal>

                </goals>

                <configuration>

                    <outputDirectory>${project.build.directory}/generated-sources</outputDirectory>

                    <processor>com.querydsl.apt.jpa.JPAAnnotationProcessor</processor>

                </configuration>

            </execution>

        </executions>

    </plugin>

现在,我还需要使用querydsl-sql,显然,我不能使用由Q创建的-generated类com.querydsl.apt.jpa.JPAAnnotationProcessor。这是中的插件maven:


    <plugin>

        <groupId>com.querydsl</groupId>

        <artifactId>querydsl-maven-plugin</artifactId>

        <version>4.2.1</version>

        <executions>

            <execution>

                <goals>

                    <goal>export</goal>

                </goals>

            </execution>

        </executions>

        <configuration>

                                <jdbcDriver>com.mysql.cj.jdbc.Driver</jdbcDriver>

            <jdbcUrl>jdbc:mysql://localhost:3306/mydatabase</jdbcUrl>

            <jdbcUser>root</jdbcUser>

            <jdbcPassword></jdbcPassword>                    

            <packageName>com.myproject.domain</packageName>

            <targetFolder>${project.basedir}/target/generated-sources/java</targetFolder>

        </configuration>

        <dependencies>

            <dependency>

                <groupId>mysql</groupId>

                <artifactId>mysql-connector-java</artifactId>

                <version>8.0.13</version>

            </dependency>

        </dependencies>

    </plugin>

挑战


上面的第二个插件Q为我的DBMS(MySql)中的所有模式生成-classes,而我指定了从中生成Q-classs的模式。


如何从文件中指定用户名,密码和jdbcUrl,因为我不想在存储git库中存储敏感信息。


慕田峪9158850
浏览 911回答 2
2回答

紫衣仙女

schemaPattern在configuration元素中使用:“ LIKE模式形式的模式名称模式;必须与存储在数据库中的模式名称匹配,多个可以用逗号分隔(默认值:null)”从querydsl docs中。尽管不能完全满足您的要求,但我认为这是解决此问题的标准方法。在Maven pom中使用加密的数据。
随时随地看视频慕课网APP

相关分类

Java
我要回答