小编Cam*_*kew的帖子

JPA急于加载FetchType.LAZY子集合

我已经看到几个类似的问题和0个好答案.

这应该很简单.我正在使用Java JPA,我想有时加载一个子实体列表但不是所有时间.不幸的是,当我说懒惰地取出它时,JPA似乎没有听我说.我已经100%确定我的代码中没有任何地方以任何方式访问childEntities属性.但是,所有子实体仍然在我的JPA.em().find(..)调用后立即加载.这就是我如何声明与注释的关系.

@Entity
@Table(name = "parentEntities")
public class ParentEntity implements Serializable {
    ....
    @OneToMany(mappedBy = "entityPropertyName", fetch = FetchType.LAZY)
    public List<ChildEntity> childEntities;
    ...
}
Run Code Online (Sandbox Code Playgroud)

这就是我加载父实体的方式:

ParentEntity parentEntity = JPA.em().find(ParentEntity.class, id);
Run Code Online (Sandbox Code Playgroud)

另外,我希望有时候渴望获取这个集合,并能够动态地告诉JPA何时这样做.那是第2步.第1步就是让这个工作正常.

jpa lazy-loading

8
推荐指数
1
解决办法
1万
查看次数

KnockoutJS通过ko.utils.extend继承功能

我正在尝试将父视图模型中的功能继承到子视图模型,如下所示:

function ParentVM() {
    var self = this;

    self.MyFunc = function () {
        console.log(self.SomeVar);  // this logs "undefined"
    }
}

function ChildVM() {
    var self = this;
    ko.utils.extend(self, new ParentVM());

    self.SomeVar = "hello";
}
Run Code Online (Sandbox Code Playgroud)

但是,当MyFunc被调用时,SomeVar是未定义的.

javascript inheritance knockout.js

7
推荐指数
2
解决办法
3711
查看次数

更改我的查询并导致SQL异常

我喜欢我的.NET项目的MiniProfiler.但是,我遇到了一个问题.分析器实际上导致查询略有不同,这导致错误.例如,当未初始化探查器时,将生成包含的SQL查询nvarchar(4000).但是,在初始化分析器的情况下,查询的该部分已更改为nvarchar(max).这会导致以下SqlException:

全文查询字符串的全文查询参数无效.

我没有找到任何有类似问题的人.

一种解决方案是能够在执行此特定查询之前以某种方式动态地初始化MiniProfiler,以便对于这一个查询,将使用默认的DBProviderFactory而不是MiniProfiler的DBProviderFactory.但是,这似乎不受支持.

.net entity-framework sqlexception mvc-mini-profiler

6
推荐指数
1
解决办法
295
查看次数

在iOS中动画幻灯片放映

任何人都知道如何做到这一点?

http://youtu.be/r_cII4_aq_A

一般来说,这个想法很棒,但我想知道如何做每件事.在视频中,页面被刷得太快以至于您无法看到,但是当您从一个页面转换到下一个页面时,每个像素都会平滑过渡到它的新颜色.此外,当您从屏幕转换时,图标变小到最小尺寸真的很酷.

也许有一些第三方库提供协议,它实现起来相对容易,但我找不到它.如果没有,我认为它只是一个视图控制器,并排有许多视图,当你拖动手指时,它会计算每个视图需要的位置......以及每个像素需要的颜色.

animation objective-c uiviewcontroller ios

5
推荐指数
1
解决办法
994
查看次数

适用于iOS的AWS S3 SDK v2 - 将映像文件下载到UIImage

似乎这应该相对简单.我正在使用适用于iOS的AWS SDK(v2),我正在尝试下载.png文件并将其显示在UIImage中的屏幕上.一切都有效!非常奇怪......

这是我的代码:

    AWSStaticCredentialsProvider *credentialsProvider = [AWSStaticCredentialsProvider credentialsWithAccessKey:@"MY_ACCESS_KEY" secretKey:@"MY_SECRET_KEY"];
    AWSServiceConfiguration *configuration = [AWSServiceConfiguration configurationWithRegion:AWSRegionUSWest1 credentialsProvider:credentialsProvider];
    [AWSServiceManager defaultServiceManager].defaultServiceConfiguration = configuration;

    AWSS3 *transferManager = [[AWSS3 alloc] initWithConfiguration:configuration];
    AWSS3GetObjectRequest *getImageRequest = [AWSS3GetObjectRequest new];
    getImageRequest.bucket = @"MY_BUCKET";
    getImageRequest.key = @"MY_KEY";

    [[transferManager getObject:getImageRequest] continueWithBlock:^id(BFTask *task) {
        if(task.error)
        {
            NSLog(@"Error: %@",task.error);
        }
        else
        {
            NSLog(@"Got image");
            NSData *data = [task.result body];
            UIImage *image = [UIImage imageWithData:data];
            myImageView.image = image;
        }
        return nil;
    }];
Run Code Online (Sandbox Code Playgroud)

当执行此代码时,执行continueWithBlock,没有任务错误,因此记录了Got图像.这种情况发生得相当快.但是,直到大约10秒钟后,UIImageView才会在屏幕上更新.我甚至通过调试器来查看该行后面的任何NSLog(@"Got image");行是否需要很长时间,而不是.它们都执行得非常快,但UIImageView不会在UI上更新.

amazon-s3 amazon-web-services ios

3
推荐指数
1
解决办法
2362
查看次数