小编Mor*_*nor的帖子

如何设置表Ebean/Play框架之间的关系

我是Ebean世界的新手,我在实体之间设置一些关系遇到了一些困难.

我基本上有两个班,User而且Car.

一个用户可以有辆车(我猜OneToMany),一辆车可以属于一个用户(所以我猜OneToOne).

我如何链接这两个实体?这是我到目前为止所做的

用户

@Entity
public class User extends Model{
    @Id
    @GeneratedValue
    public int id;  
    public String name; 
    @ManyToMany(cascade=CascadeType.ALL)
    public List<Car> car = new ArrayList<Car>();
}
Run Code Online (Sandbox Code Playgroud)

汽车

@Entity
public class Car extends Model{
    @Id
    @GeneratedValue
    public int id;
    @OneToOne(cascade = CascadeType.ALL)
    public User user; 
}
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

PersistenceException:models.User.car上的错误在[models.Car]中找不到mappedBy属性[users]

有人可以清楚地向我解释如何以正确的方式使用注释(非常糟糕的文档),并告诉我为什么会出现此错误?

java playframework ebean playframework-2.2 playframework-2.3

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

在 bash 脚本中,测试调用脚本中的错误代码

我的 bash 脚本 ( init.sh) 调用另一个脚本 ( ),我想在 .bashrc 中执行任何进一步操作之前script.sh测试错误代码。 我想过用 来测试它,但它不起作用script.shinit.sh
$?

我的init.sh像下面这样:

#!/bin/bash
set -e
echo "Before call"
docker run -v $PWD:/t -w /t [command]
if [ $? == 1 ]; then
        echo "Issue"
fi
echo "After call"
Run Code Online (Sandbox Code Playgroud)

我只得到了Before callfromstdout而没有得到After call.

我知道一个事实,如果我docker run -v $PWD:/t -w /t [command]使用错误的参数单独执行,那么echo $?将正确显示 1。

我在想我不是从 捕获退出代码scrip.sh,而是从其他地方捕获退出代码。

有任何想法吗?

bash shell

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

Mocha测试与DB的连接

我想使用Mocha测试与我的数据库的连接,但似乎我做错了,因为无论凭据是什么,我总是让我的测试通过...

这是我使用的代码:

describe('Access to DB', function(){
   describe('#fail', function(){
        it('should return -1 because wrong credentials', function(){
            var connection = mysql.createConnection({
                host: 'right host',
                user: 'wrong user',
                password: 'wrong password',
                database: 'right database'
            });
            connection.connect(function(err){
                assert.equal(7,err.stack.indexOf("ER_ACCESS_DENIED_ERROR"));
            });
        });
    })
});
Run Code Online (Sandbox Code Playgroud)

我在我的程序上测试了代码,当连接实际失败时,它会抛出错误.在这个错误中,我得到的indexOf(ER_ACCESS_DENIED_ERROR)等于7.

知道这一点,为什么我的测试总是通过,我如何纠正它以满足我的需要?

mysql mocha.js node.js express

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

Express 中间件意味着请求超时

我的 Express/Node.js 应用程序中有一个中间件来保护特定路由。

问题是,当我使用这个中间件时,如果凭据检查错误,我会收到请求超时

这是我目前使用的代码:

var express = require('express');
var bodyParser = require('body-parser');

// Set Header because cross-domain call
app.use(function(req, res, next) {
  res.header("Access-Control-Allow-Origin", "http://docker.local");
  res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Authorization, Content-Type, Accept");
  next(); 
});  

function checkAuth(req, res, next){
  if(// Credentials right){
       next(); 
  } else {
       // If code enter in that case, it will generate a Timeout
       // even with next(); ...
  }
}

// Use checkAuth to protect route
app.get('/server', checkAuth, getMessages);
app.get('/', function(req, res){
  res.status(200).send('Slack Server is listening for …
Run Code Online (Sandbox Code Playgroud)

javascript middleware node.js express

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