我正在尝试构建一个将数据保存到数据库中的 React 应用程序。
我有以下课程:
服务器.js
let express = require('express');
let bodyParser = require('body-parser');
let morgan = require('morgan');
let pg = require('pg');
let cors = require('cors');
const PORT = 3000;
let pool = new pg.Pool({
user: 'admin',
database: 'dev',
password: 'password',
host: 'localhost',
port: 5432,
max: 10
});
let app = express();
app.use(cors());
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(morgan ('dev'));
app.use(function(request, response, next) {
response.header("Access-Control-Allow-Origin", "*");
response.header("Access-Control-Allow-Headers", "Origin, X-Requested-
With, Content-Type, Accept, Authorization")
next();
});
app.get('/api/creditcards', function(request, response) {
pool.connect(function(err, db, …Run Code Online (Sandbox Code Playgroud) 我知道有几十个问题具有相同的主题,但我无法弄清楚为什么它们在我的案例中不起作用。
我有两张表,一张的名称为 Account,一张的名称为 CustomerRelations,它们之间存在一对多的关系(一个帐户可以属于多个 customerRelations...一个帐户可以在没有其他客户关系的情况下存在,但有一个客户关系只能附加到现有帐户)
这就是它们在我的实体类中的注释方式:
账户表:
@OneToMany(mappedBy = "account", cascade = CascadeType.ALL, orphanRemoval = true)
@OnDelete(action = OnDeleteAction.CASCADE)
private List<CustomRel> customRels = new ArrayList<>();
Run Code Online (Sandbox Code Playgroud)
客户关系表:
@ManyToOne(fetch = FetchType.EAGER)
private Account account;
Run Code Online (Sandbox Code Playgroud)
我有业务逻辑,我想根据“帐户”选项卡中保存的特定日期调用查询:
@NamedQuery(name = Account.FIND_BY_ACC_NBR, query = "select acc from Account acc where acc.accountNumber =:accountNumber")
Run Code Online (Sandbox Code Playgroud)
此查询提供了帐户表中的正确数据,但对于字段 customerRels 我得到以下异常:
**Unable to evaluate the expression Method threw 'org.hibernate.LazyInitializationException' exception.**
Run Code Online (Sandbox Code Playgroud)
当在我的 Account 对象上调用 getter 方法时,也会出现同样的情况:
在我的示例中,有一个帐户对象,其中的 customerRels 列表为空。因此数据库中没有与 accountId 连接的 customerRels 记录。
据我所知,我的Account实体类中的fetchType是lazy-默认的,对吧?
在我创建表的 SQL 脚本中,CustomerRelations 表中仅添加了 account_id,Account 表中没有对子对象的引用。
我知道这是一个非常平庸的问题,但我需要一些帮助。我应该修改我的 JPQL 查询吗?
我有一个标签,它显示来自字符串变量的给定文本。这个变量可以有两个不同的值,对于每个值,我都有一个从英语到我的母语的翻译版本存储在一个属性文件中。
我有以下代码:
add(new Label("fruit", new PropertyModel(getModelObject(), "fruit.name")));
Run Code Online (Sandbox Code Playgroud)
和 HTML:
<wicket:panel xmlns:wicket="http://wicket.apache.org/">
<div>
<div class="row">
<div class="col-sm-6">
<div class="row">
<div class="col-sm-5">
<wicket:message key="myBasket.fruit">
</wicket:message>
</div>
<div class="col-sm-7">
<span wicket:id="fruit"></span>
</div>
</div>
</div>
</div>
</div>
</wicket:panel>
Run Code Online (Sandbox Code Playgroud)
这种水果可以是苹果或梨。在我的属性文件中,我有两个值的翻译:
apple=Apfel
pear=Birne
Run Code Online (Sandbox Code Playgroud)
当我运行我的代码时,我的标签内容以英文显示。
如何根据变量的值设置来自属性文件的值?
谢谢!
我希望将字节数组转换为字符串,但当我这样做时,我的字符串在从数组中获取的每个数字之前都有 00。
我应该得到以下结果: 49443a3c3532333437342e313533373936313835323237382e303e
但我有以下几点:
请帮助我,我怎样才能去掉空值?
我尝试过以下几种方式进行转换:
xxxxId 是 byteArray
String xxxIdString = new String(Hex.encodeHex(xxxxId));
谢谢你!