微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在哪里以及如何设置应该使用哪个 java 实现,最佳实践

如何解决在哪里以及如何设置应该使用哪个 java 实现,最佳实践

我有一个问题,我还不够好,不知道哪个是最好的解决方案。我真的需要最佳实践来编写健壮的代码

我有一个 gradle java8 项目。我的开发环境没有与集成环境相同的 DBMS,这很愚蠢,我知道,但我必须处理它。 问题是在集成环境中,我们有带有 RAW(8) 字段的 Oracle 表,而我的开发环境(derby)中没有这种数据类型。 另外,我使用 Hibernate 连接到我的数据库。我现在做了什么: 我定义了 2 个 bean,它们为这种表实现了 bean 接口,对于我的原始字段的 set 和 get 方法,我只是解析了 get 方法输出和 set 方法的输入,以与有关字段匹配像这样的数据库

//In src/main/java/myapp/beans
public interface MyBeanInterface {
     public byte[] getMyRawField();
     public void   setMyRawField(byte[]);
}

//In src/main/java/myapp/beans
public class MyBeanBaseaimpl implements MyBeanInterface {
    private byte[] myRawField;
    public byte[] getMyRawField() {
        return myRawField;
    }
    public void setMyRawField(byte[] myRawField) {
        this.myRawField = myRawField;
    }
}

//In src/test/java/myapp/beans
public class MybeanBaseBImpl implements MyBeanInterface {
     private String myRawField;
     public byte[] getMyRawField() {
          //transcode from string to byte[]
          return AParseFunction(myRawField);
     }
     public void setMyRawField(byte[] myRawField) {
          //Transcode from byte[] to string
          this.myRawField = AnotherParseMethod(myRawField);
     }
}

现在我需要一个工厂来实现关于上下文的好类,我在这里,我不知道这样做的最佳方法是什么。我什至不知道我所做的是否是一个很好的介绍。

在我的反思中,我会在 src/main/resources 和 src/test/resources 中编写一个属性,其中包含用于上下文的类名,但我不知道我是否应该这样做,在哪里编写属性,如何读取它以及如何在我处于测试范围时强制使用 src/test/resources 而不是 src/main/resources,这样我就不必每次在集成环境中部署时更改配置。 (我对 gradle 也不够好,所以也许有一个很好的策略使用它)。

谢谢您的关心!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。