我知道使用 Spring 有 3 种方法进行依赖注入:字段注入、setter 注入和构造函数注入。
但是假设我们在同一个组件中有更多的所有 3 个组件,如下所示:
import base.service.FortuneService;
@Component
public class FootballCoach implements Coach {
//Field Injection
@Autowired
private FortuneService fortuneService;
//setter Injection
@Autowired
public void setFortuneService(FortuneService fortuneService) {
this.fortuneService = fortuneService;
}
//constructor Injection
@Autowired
public FootballCoach(FortuneService fortuneService) {
this.fortuneService = fortuneService;
}
}
Run Code Online (Sandbox Code Playgroud)
可以这么说,哪一个优先?Spring 会执行所有这 3 步并覆盖该fortuneService字段两次吗?如果是的话,最后一个站着的是哪一个?或者只选择一种依赖注入?
我运行上面的代码没有出现问题,并且得到了以下日志,但我真的不知道如何阅读它们。
注意:FortuneService是一个接口,我有一个HappyFortuneService实现它的类。
Sep 10, 2020 11:40:44 AM org.springframework.beans.factory.support.DefaultSingletonBeanRegistry getSingleton
FINE: Creating shared instance of singleton bean 'footballCoach'
Sep 10, 2020 11:40:44 AM …Run Code Online (Sandbox Code Playgroud) 我想在两个表之间创建一对一关系:teachers和office(老师是该关系的所有者)。在网上查了一下,我发现了两种不同的方法:
foreign key第一个,在 Office 表中定义并添加约束NOT NULL和UNIQUE。基本上,具有 UNIQUE 约束的强制性一对多关系:如下所示:
CREATE TABLE office(
id SERIAL PRIMARY KEY,
floor SMALLINT CHECK (floor > 0 AND floor <= 10),
size SMALLINT CHECK (size > 0),
teacher_id INTEGER NOT NULL UNIQUE REFERENCES teachers(teacher_id)
);
Run Code Online (Sandbox Code Playgroud)
第二个是我们将办公桌上的 和 合并为一排。就像这样:primary key foreign key
CREATE TABLE office(
id SERIAL PRIMARY KEY REFERENCES teachers(teacher_id),
floor SMALLINT CHECK (floor > 0 AND floor <= 10),
size SMALLINT …Run Code Online (Sandbox Code Playgroud) 如何在 Jhipster 生成的应用程序的前端获取当前登录的用户(更准确地说,我需要他的 ID)?前端是 Angular。
我已经看到一些使用 Principal 类的旧答案,但似乎不再存在。
任何人都可以帮忙吗?
我创建了以下两个表来绘制学生和教师的地图:
CREATE TABLE students(
student_id SERIAL PRIMARY KEY,
first_name NOT NULL VARCHAR(50),
last_name NOT NULL VARCHAR(50),
phone VARCHAR(15) UNIQUE NOT NULL CHECK (phone NOT LIKE '%[^0-9]%'),
email VARCHAR(30) UNIQUE NOT NULL CHECK (email NOT LIKE '%@%'),
graduationYear SMALLINT CHECK (graduationYear > 1900)
);
CREATE TABLE teachers(
teacher_id SERIAL PRIMARY KEY,
first_name VARCHAR(50) NOT NULL,
last_name VARCHAR(50) NOT NULL,
departament VARCHAR(40) NOT NULL,
email VARCHAR(30) UNIQUE NOT NULL CHECK (email NOT LIKE '%@%'),
phone VARCHAR(15) UNIQUE NOT NULL CHECK (phone NOT …Run Code Online (Sandbox Code Playgroud) sql postgresql database-design constraints unique-constraint
我的 PostgreSQL 表中有一个列用于类型为 的电话号码VARCHAR。我选择此数据类型是因为在我的国家/地区电话号码以 0 开头。
我需要引入一个约束来检查电话号码是否仅包含数字。
\n这是我到目前为止所拥有的:
\nALTER TABLE contactInfo ADD CONSTRAINT checkPhone\nCHECK(phone NOT SIMILAR TO '%[a-z]%' AND phone SIMILAR TO '%[0-9]%');\nRun Code Online (Sandbox Code Playgroud)\n它似乎有效,但恐怕它不会过滤掉特定于不同语言的字符(例如 \xc3\xb9 \xc3\xbb \xc3\xbc \xc3\xa2 \xc3\xa0 等)。
\n我该怎么做 ?
\npostgresql ×3
sql ×3
angular ×1
constraints ×1
java ×1
jhipster ×1
one-to-one ×1
regex ×1
spring ×1
string ×1