我在使用 JPA(Hibernate) 和 LazyFetching 时遇到了一些麻烦
我有一些实体:任务、奖励、合同
关系(都是懒人):
DB 包含这样的数据:Quest1 有 Reward1、Reward2 和 Contract1、Contract2;
在某些情况下,我需要 Quest 及其奖励和合同,所以我在 JPArepository 中这样做:
@Query("select Q from Quest Q left join fetch Q.rewards left join fetch Q.contracts")
List<Quest> getAllQuestsWithRewardsAndContracts();
Run Code Online (Sandbox Code Playgroud)
问题是我收到了
一个有 4 个(但只有 2 个)奖励(Reward1、Reward2、Reward1、Reward2)和两个合同的任务。
我得到重复的奖励!
我不明白为什么!
如果我这样做:
@Query("select distinct Q from Quest Q left join fetch Q.rewards")
List<Quest> getAllQuestsWithRewardsRew();
Run Code Online (Sandbox Code Playgroud)
我收到一个任务有两个奖励(Reward1,Reward2)
为什么 ?为什么我有重复?
尝试使用 Content Service API 并且示例在应该返回 JSON 时返回 HTML,我做错了什么?
https://developers.google.com/apps-script/guides/content
function doGet(request) {
var events = CalendarApp.getEvents(
new Date(Number(request.parameters.start) * 1000),
new Date(Number(request.parameters.end) * 1000));
var result = {
available: events.length == 0
};
return ContentService.createTextOutput(JSON.stringify(result))
.setMimeType(ContentService.MimeType.JSON);
}
Run Code Online (Sandbox Code Playgroud)
来自另一个文件的 GAS 试图发出请求:
function myFunction() {
var url = "published URL";
url+="?start=1325437200&end=1325439000";
var options = {
method:"get"
}
var response = UrlFetchApp.fetch(url,options).getContentText();
response = JSON.parse(response); //error, unexpected token <
}
Run Code Online (Sandbox Code Playgroud) 我想要一些自动化方法来从我们的远程原始服务器进行获取。因此,也许每次我切换分支时,git 都会在切换之前自动从 origin 的所有分支上进行提取...这样,当我从本地“修复分支”移动到 master 时,它会告诉我我的 master 位于 origin master 后面。
这可能吗?如果您需要知道我为什么想要这个,我的要求的更详细原因如下。
多谢你们!
我在一个开发团队中工作。当我向 origin/master 分支添加更改时,我还会将该更改上传到我们的 FTP 服务器(我们尚未在服务器上设置 git)
如果我创建一个“修复分支”并对文件进行更改...那么我想让这些文件生效并进入主文件。如果我只是将本地文件中的更改合并到本地主文件中而不进行提取,这可能会导致问题。如果我在上传文件之前忘记从原点引入更改,则上传的文件可能缺少原点的修订。(我知道很顽皮)
另外,我希望尽快了解 master 中的任何更新,以便我可以将它们合并到我的“修复分支”中
我在客户端有这个代码:
return fetch('http://localhost:8080/api/authenticate', {
method: 'POST',
mode: 'no-cors',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
username: 'admin',
password: 'admin',
}),
});
Run Code Online (Sandbox Code Playgroud)
当我出于某种原因发送此请求时 Content-Type 被替换为text/plain;charset=UTF-8. 这使我的服务器端无法请求,因为它只接受application/json请求。我在这里做错了什么?我正在使用 Chrome 51,这是我的要求:
编辑:当我删除JSON.strigify()Content-Type 和请求有效负载时也被省略。下面是一个例子:
当我尝试在Aurelia中使用fetch发布表单的数据并在同一网页上打印出一条消息(如果成功)时,我收到错误"Unhandled rejection TypeError:无法设置未定义的属性'resultMessage'($ {resultMessage}) .
this.resultMessage ="新书增加"; <=此行导致错误
add.js:
import {HttpClient, json} from 'aurelia-fetch-client'
export class AddBooks{
bookData = {}
constructor() {
this.resultMessage = ""
}
activate() {
let client = new HttpClient();
}
addBook() {
let client = new HttpClient();
client.fetch('{address}', {
'method': "POST",
'body': json(this.bookData)
})
.then(function(response) {
return response.json();
})
.then(function(data) {
if(data.id) {
console.log(JSON.stringify(data));
this.resultMessage = "New book added";
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
add.html:
<template>
<form id="bookaddform" method="post" submit.delegate="addBook()">
<div>
<label for="bookTitle">Book Title</label>
<input id="bookTitle" type="text" …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Fetch API从表单中检索数据并将其邮寄,但是我收到的电子邮件为空。响应似乎成功,但未发送任何数据。我究竟做错了什么?
这是我的JS代码和我的php / html代码段(如果相关)
(function() {
const submitBtn = document.querySelector('#submit');
submitBtn.addEventListener('click', postData);
function postData(e) {
e.preventDefault();
const first_name = document.querySelector('#name').value;
const email = document.querySelector('#email').value;
const message = document.querySelector('#msg').value;
fetch('process.php', {
method: 'POST',
body: JSON.stringify({first_name:first_name, email:email, message:message})
}).then(function (response) {
console.log(response);
return response.json();
}).then(function(data) {
console.log(data);
// Success
});
}
})();
<!-- begin snippet: js hide: false console: true babel: false -->Run Code Online (Sandbox Code Playgroud)
<?php
$to = "example@mail.com";
$first_name = $_POST['first_name'];
$from = $_POST['email'];
$message = $_POST['message'];
$subject = "Test Email";
$message …Run Code Online (Sandbox Code Playgroud)我需要使用 nativescript 的最简单的获取和显示示例。如果有人有一些 github 存储库,我将不胜感激。谢谢 实际上,我想读取一个 JSON 并在本机脚本的列表中显示数据。
我正在使用 React 的 fetch() 方法登录到我的服务。到目前为止,我已经完成了以下工作,您可以查看我的东西:
_callApiForLogin = () => {
ToastAndroid.show('Logging In...', ToastAndroid.SHORT);
let data = new FormData();
data.append('username', "sssss");
data.append('password', "123456");
data.append('device_token', "hjkhjkhjkkksdkjhkjhksdsfs");
data.append('device_type', "2");
fetch('https://612.33.196.54/~yes/master/api/web/login', {
method: 'POST',
body: data,
}).then((response) => response.json())
.then((responseJson) => {
ToastAndroid.show('Logging In...', responseJson);
if (responseJson.status === '1') {
ToastAndroid.show('Logging Successful' + responseJson, ToastAndroid.SHORT);
}
return responseJson.status;
})
.catch((error) => {
console.error(error);
});
}
Run Code Online (Sandbox Code Playgroud)
但是,响应低于错误。
错误:com.facebook.react.bridge.ReadableNativeMap 无法转换为 java.lang.Double
来自服务的响应如下:
{
"status": 1,
"data": {
"id": "551",
"first_name": "sssss",
"last_name": "lastname",
"email": "ja@gmail.com",
"username": …Run Code Online (Sandbox Code Playgroud) 我的代码:
反应.js
let lsStr = ''
lsStr = `https://192.168.0.1/basic/code02/exlup02`
if (window.confirm(message)) {
fetch(lsStr,
{ method: "POST",
body: JSON.stringify({"Data": "MY DATA"}),
headers:{
'Content-Type':'application/x-www-form-urlencoded'
}
})
.then(function(res){ return res.json(); })
.then(data =>console.log(data));
Run Code Online (Sandbox Code Playgroud)2.server.js
var express = require('express')
var router = express.Router();
const cors = require('cors')
var pool = require('../db')
router.post('/code02/exlup02', function(req, res, next) {
console.log('post page')
let lsModnm = req.body;
if(!lsModnm){
return res.status(400).send({ error:true, message: 'Please provide excel' });
}else{
console.log(req.body)
}
});
Run Code Online (Sandbox Code Playgroud)
当前:console.log(req.body) 日志 {}
return message : Please provide excel!! …Run Code Online (Sandbox Code Playgroud) 下面提交的代码是 axios。哪个工作正常。但是 javascript 提取不起作用。让我知道代码中有什么问题。如何修复它。请用简单的方式解释一下。谢谢!
import React, {useEffect, useState} from 'react'
import axios from 'axios'
function Datafetching() {
const [posts, setposts] = useState([])
const getMovieRequest = async () => {
const url = `http://jsonplaceholder.typicode.com/posts`;
const response = await fetch(url);
const responseJson = await response.json()
if (responseJson.data){
setposts(responseJson.data)
console.log(responseJson.data)
}
}
useEffect(() => {
// axios.get('http://jsonplaceholder.typicode.com/posts')
// .then(res => {
// console.log(res)
// setposts(res.data)
// })
// .catch(err => {
// console.log(err)
// })
getMovieRequest()
})
return (
<div>
<ul>{
posts.map(post => …Run Code Online (Sandbox Code Playgroud) fetch ×10
javascript ×5
ajax ×1
api ×1
aurelia ×1
axios ×1
body-parser ×1
express ×1
fetch-api ×1
git ×1
git-checkout ×1
hibernate ×1
http ×1
jpa ×1
json ×1
nativescript ×1
node.js ×1
php ×1
react-native ×1
reactjs ×1