📅  最后修改于: 2020-10-19 03:44:25             🧑  作者: Mango
TypeORM支持的默认语言是TypeScript 。由于TypeScript支持静态类型,类和装饰器,因此很容易定义实体及其属性。同时,在某些首选语言为JavaScript的项目中, JavaScript也是必需的。 TypeORM也提供对JavaScript语言的全面支持。 TypeORM支持es5和es6两种JavaScript。
在本章中,让我们学习如何在JavaScript ES5(ECMAScript 5)中编写TypeORM应用程序。
打开命令提示符,然后转到您的工作区。
cd /path/to/workspace/
运行以下命令以创建TypeORM项目。
typeorm init --name typeorm-javascript-student-app --database mysql
打开package.json文件以删除typecipt引用。
{
"name": "typeorm-javascript-student-app", "version": "0.0.1",
"description": "Awesome project developed with TypeORM.", "devDependencies": {
"ts-node": "3.3.0", "@types/node": "^8.0.29", "typescript": "3.3.3333"
},
"dependencies": {
"typeorm": "0.2.24", "reflect-metadata": "^0.1.10", "mysql": "^2.14.1"
},
"scripts": {
"start": "ts-node src/index.ts" }
}
{
"name": "typeorm-javascript-student-app", "version": "0.0.1",
"description": "Awesome project developed with TypeORM.", "dependencies": {
"typeorm": "0.2.24",
"mysql": "^2.14.1"
},
"scripts": {
"start": "node src/index.js"
}
}
这里,
运行以下命令以安装必要的软件包。
npm install
删除tsconfig.json和index.ts文件。
删除实体文件夹中的User.ts文件,然后创建json格式的学生实体,如下面指定的student.json-
{
"name": "Student",
"columns": {
"id": {
"primary": true,
"type": "int",
"generated": true
},
"name": {
"type": "varchar"
},
"age": {
"type": "integer"
}
}
}
创建一个新文件src / index.js,然后输入以下代码-
var typeorm = require("typeorm"); var EntitySchema = typeorm.EntitySchema;
typeorm.createConnection({
"type": "mysql",
"host": "localhost",
"port": 3306,
"username": "root",
"password": "123456",
"database": "typeorm_test_db",
"synchronize": true,
"logging": false,
entities: [ new EntitySchema(require("./entity/student.json"))
]
})
.then(function(connection) {
return connection.getRepository("Student"); }) .then(function(studentRepository) {
var student = {
name: "Student1",
age: 18
};
return studentRepository.save(student) .then(function(savedStudent) { console.log("Student has been successfully saved: ", savedStudent);
return studentRepository.find(); })
.then(function(students) { console.log("All students: ", students);
return;
})
.catch(function(error) { console.log("Error: ", error); return;
})
})
.catch(function(error) { console.log("Error: ", error)
return; });
这里,
除了以下提到的更改外,我们使用了相同的typeORM方法,
现在,使用以下命令运行应用程序-
npm start
该应用程序将学生信息插入数据库中,然后获取数据库中的所有学生,并在控制台中显示它,如下所示-
> typeorm-javascript-student-app@0.0.1 start /path/to/workspace/typeorm-javascript-student-app
> node src/index.js
Student has been successfully saved: { name: 'Student1', age: 18, id: 1 } All students: [ { id: 1, name: 'Student1', age: 18 } ]