一个对象具有多个属性,每个对象都属于某个模块。一个模块可以有多个对象。
使用REST API添加属性时,如果缺少该属性的对象,则会将一个对象添加到存储库。 创建对象后,也会为该对象创建相应的模块并将其添加到存储库中。
许多创建属性或对象的查询都到达服务器,服务器上查询的顺序可能与发送的顺序不同。
如何同步这种情况?
我尝试使用const inventors = [
{ first: 'Albert', last: 'Einstein', year: 1879, passed: 1955 },
{ first: 'Isaac', last: 'Newton', year: 1643, passed: 1711},
{ first: 'Galileo', last: 'Galilei', year: 1564, passed: 1642 },
{ first: 'Marie', last: 'Curie', year: 1867, passed: 1934 },
{ first: 'Johannes', last: 'Kepler', year: 1571, passed: 1630 },
{ first: 'Nicolaus', last: 'Copernicus', year: 1473, passed: 1543 },
{ first: 'Max', last: 'Planck', year: 1858, passed: 1947 },
{ first: 'Katherine', last: 'Blodgett', year: 1898, passed: 1979 },
{ first: 'Ada', last: 'Lovelace', year: 1815, passed: 1852 },
{ first: 'Sarah E.', last: 'Goode', year: 1855, passed: 1905 },
{ first: 'Lise', last: 'Meitner', year: 1878, passed: 1968 },
{ first: 'Hanna', last: 'Hammarström', year: 1829, passed: 1909 }
];
const firstSort = inventors.sort((a,b) => a.year - b.year); // exactly the same as a.year > b.year ? 1 : -1;
console.log(firstSort);
const secondSort = inventors.sort((a,b) => (a.passed - a.year) - (b.passed - b.year));
console.log(secondSort);
和@Transactional
进行多种组合,但无济于事-检测到死锁或服务器试图向数据库中添加模块/对象两次(违反了约束)因为可能只有一个模块/对象)。