小编Adr*_*ano的帖子

为什么在本机查询中 Hibernate 延迟加载子实体?

我不明白,当我使用 JPQL 和 JOIN fetch 时,hibernate 应该执行一个查询来连接子实体,但是当我想使用本机查询并使用一个查询连接所有子实体时,hibernate 仍然会延迟加载其他查询中的子实体。我正在使用 Spring Data 2。

我应该如何避免使用本机查询进行延迟加载n+1查询?

例子:

@Query(value = "SELECT recipe.*, r_ing.*, ing.* FROM recipe recipe join " +
        " on recipe.id = r.recipe_id " +
        " LEFT JOIN recipe_ingredients r_ing on r.recipe_id = r_ing.recipe_id " +
        " LEFT JOIN ingredient ing on r_ing.ingredient_id = ing.id where ing.names in (:ingredientsNames)",
        countQuery = "SELECT count(*) FROM recipe recipe join " +
                " on recipe.id = r.recipe_id " +
                " LEFT …
Run Code Online (Sandbox Code Playgroud)

hibernate spring-data-jpa

10
推荐指数
1
解决办法
6618
查看次数

如何从 r.fn.init(JQuery 选择器上下文)获取值

嗨,我尝试从表中的跨度接收值,如下所示:

function getValueFromSibling(this) {
    var id = $(this).parent().siblings('span.childSibbling');
}
Run Code Online (Sandbox Code Playgroud)

表看起来像这样:

<tr>
    <td>
      <button type="button" onClick="getValueFromSibling()"></button>
    </td>
    <td>
      <span class="childSibbling">100</span>
    </td>
</tr>
Run Code Online (Sandbox Code Playgroud)

但我收到这样的东西:

id = r.fn.init [prevObject: r.fn.init(1)]

我发现这是简单的形式:

var jQuery = function( selector, context ){
   return new jQuery.fn.init( selector, context );
};
Run Code Online (Sandbox Code Playgroud)

那么问题来了。如何接收InnerHTML<span>,或如何转换r.fn.init [prevObject: r.fn.init(1)]价值?

var result = id.val();和 var 结果 = 不id.get();工作

javascript jquery

6
推荐指数
2
解决办法
2万
查看次数

创建包含其他对象的array []的对象

我想收到这样的json对象:

  "datasets": [{
                "label": "# of Votes",
                "data": [20, 10, 3],
                "backgroundColor": [
                         "#ccf9d6",
                         "#ccf9d6",
                         "#ccf9d6"
                               ],
                 "borderWidth": 1
           }]
Run Code Online (Sandbox Code Playgroud)

但在序列化之前,我必须创建对象,我不知道它应该在后面的代码中查看对象.我有类似的东西,但这是错的.

datasets = new ChartDatasets[4]
                 {
                     label = "# of Votes",
                     data = new int[3] { 20, 10, 3 },
                     backgroundColor = new string[3] { "#ccf9d6", "#ccf9d6", "#ccf9d6" },
                     borderWidth = 1
                 }
Run Code Online (Sandbox Code Playgroud)

有人能帮我吗?

c# json

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

JSON.parse 无法识别要解析的字符串中的 \" (反斜杠和引号)

我已经使用字符串中带有引号的对象序列化了 JSON,如下所示:

var bla = [
    { 
        "label": "person", 
        "id": "1", 
        "data": "bla means: \"lala\"" 
    }
];
Run Code Online (Sandbox Code Playgroud)

我知道它在服务器端的样子。但是当我在浏览器中调试它时,我发现收到了错误,因为它如下所示:

var bla = [
    { 
        "label": "person", 
        "id": "1", 
        "data": "bla means: "lala"" 
    }
];
Run Code Online (Sandbox Code Playgroud)

和我的错误:

未捕获的语法错误:JSON 中 JSON.parse () 位置 25 处出现意外标记 l

我读到 JSON 应该识别\" https://www.json.org/

有什么想法我应该在哪里纠正吗?当我序列化对象时在服务器端还是使用 JavaScript 在客户端?

编辑:

在服务器端,我使用 C# 库"System.Web.Script.Serialization" 来序列化对象:

List<SomeObject> someObject= new List<SomeObject>();
        SomeObject bla1 = new SomeObject();
        bla1.id = "1";
        bla1.label = "person";
        bla1.label = "bla means: \"lala\"";
        someObject.Add(bla1);
Run Code Online (Sandbox Code Playgroud)

var bla = …

javascript c# json

2
推荐指数
1
解决办法
7343
查看次数

如何使用java流将平面对象转换为有意对象

我有平面对象POJO:

class FamilyInformation {
  String house;
  String familyMember;
}
Run Code Online (Sandbox Code Playgroud)

使用这样的数据:

[{
 house: "houseName1",
familyMember: "Son"
},
{
 house: "houseName1",
familyMember: "Mom"
},
{
 house: "houseName1",
familyMember: "Dad"
}]
Run Code Online (Sandbox Code Playgroud)

我想将其转换为分层对象POJO:

class House {
  String houseName;
  List<FamilyMember> familyMembers;
}
class FamilyMember {
  String familyMember;
}
Run Code Online (Sandbox Code Playgroud)

我发现的每一条信息都是将其转换为地图.但是我想要List<House>包含List<FamilyMember>任何想法我该怎么办?

java java-8 java-stream

2
推荐指数
1
解决办法
87
查看次数

如何在Angular 2/5中订阅服务对象?

我有问题,我想从服务器来到我的属性组件后接收数据.

我在服务中做了这样的事情:

private events: Event[] = [];
eventChanged = new Subject<any>(); // Edit: added an observable

constructor(private http: HttpClient) { 
    this.http.get<Event[]>(this.baseUrl)
    .subscribe(events => this.events = events);
  this.eventChanged.next(this.events.slice()); //Edit: added an information to subscribers that events list changed
}
getEvents(): Observable<Event[]> {
    return this.eventChanged.asObservable();
}  // Edit: now I use this method to enables subscribers to observable

        /* I don't use that method after Edit
        showAllEvents(): Event[] {
            return [...this.events];
        }
        */
Run Code Online (Sandbox Code Playgroud)

然后我使用方法showAllEvents()进入我的组件,如下所示:

private events: Event[] = [];
private …
Run Code Online (Sandbox Code Playgroud)

javascript typescript angular2-services angular

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

如何避免首次未定义订阅 JavaScript RxJS

我想订阅我从服务器获得的一些对象。但是第一次的代码没有给我任何回报。订阅的代码:

ngOnInit() {
    this.dataService.getEvents()
    .subscribe(
    (events) => {
      this.events = events;  
      console.log(events);   // when I try to get this is no problem it prints log to console (probably because event is var so it is not defined)  
      console.log(events[0].name); // it didn't see that property so I'm getting ERROR TypeError: Cannot read property 'name' of undefined          
    });        
  }
Run Code Online (Sandbox Code Playgroud)

服务看起来像这样,我BehaviorSubject用于 Observable:

 private eventChanged = new BehaviorSubject<any>([]);

  constructor(private http: HttpClient) { 
    this.refetch();
  }
  private refetch(): void {
    this.http.get<EventE[]>(this.baseUrl)
      .subscribe(events => { …
Run Code Online (Sandbox Code Playgroud)

javascript rxjs angular

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

如何编辑从其他模块 Angular 2+ 导入的子组件的 css

我使用amg-snazzy-window 中的 amg-snazzy-window

有解释说我可以覆盖 css 类,但是当我这样做时它不起作用。这是我的例子:

地图组件.html

   <agm-snazzy-info-window [closeWhenOthersOpen]="true">
         <ng-template>
            My snazzy window
         </ng-template>
   </agm-snazzy-info-window>
Run Code Online (Sandbox Code Playgroud)

我想要更广泛的内容,所以我做了这个:map-component.scss:

.si-content {
  width: 500px !important;
}
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

css sass angular

0
推荐指数
1
解决办法
1614
查看次数