1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Building a sell course website with reactjs and springboot

159 7 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Building a Sell Course Website with ReactJS and Springboot
Tác giả Nguyen Quyet Sinh, Chu Thanh Thong
Người hướng dẫn Vinh Thinh Le, Ph.D.
Trường học Ho Chi Minh City University of Technology and Education
Chuyên ngành Information Technology
Thể loại Graduation thesis
Năm xuất bản 2022
Thành phố Ho Chi Minh City
Định dạng
Số trang 159
Dung lượng 10,13 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

MINISTRY OF EDUCATION AND TRAININGHO CHI MINH CITY UNIVERSITY OF TECHNOLOGY AND EDUCATION GRADUATION THESIS INFORMATION TECHNOLOGY BUILDING A SELL COURSE WEBSITE WITH REACTJS... HCMC UNI

Trang 1

MINISTRY OF EDUCATION AND TRAINING

HO CHI MINH CITY UNIVERSITY OF TECHNOLOGY AND EDUCATION

GRADUATION THESIS INFORMATION TECHNOLOGY

BUILDING A SELL COURSE WEBSITE WITH REACTJS

Trang 2

HCMC UNIVERSITY OF TECHNOLOGY AND EDUCATION

FACULTY OF INFORMATION TECHNOLOGY



GRADUATION THESIS BUILDING A SELL COURSE WEBSITE WITH REACTJS AND SPRINGBOOT

Instructor: Vinh Thinh Le, Ph.D Student Name: Quyet Sinh Nguyen ID: 18110354

Student Name: Chu Thanh Thong ID: 18110365

Ho Chi Minh City, June 2022

Trang 3

HCMC UNIVERSITY OF TECHNOLOGY AND EDUCATION

FACULTY OF INFORMATION TECHNOLOGY



GRADUATION THESIS BUILDING A SELL COURSE WEBSITE USING REACTJS AND SPRINGBOOT

Instructor: Vinh Thinh Le, Ph.D Student Name: Quyet Sinh Nguyen ID: 18110354

Student Name: Chu Thanh Thong ID: 18110365

Ho Chi Minh City, June 2022

Trang 4

HCM University of Technology and Education SOCIALIST REPUBLIC OF VIETNAM

FACULTY OF INFORMATION TECHNOLOGY Independence – Freedom - Happiness

_

GRADUATION THESIS TASK

Major: Information Technology

Project title: Build a selling course website using ReactJS and Springboot

Content:

Theory:

-Learn the Java programming language

-Learn the Java Script programming language

-Learn about ReactJS technology

-Learn about Springboot technology

Ho Chi Minh, June 2022

Trang 5

HCM University of Technology and Education SOCIALIST REPUBLIC OF VIETNAM

FACULTY OF INFORMATION TECHNOLOGY Independence – Freedom - Happiness

_

ASSESSMENT FORM OF INSTRUCTOR

Major: Information Technology.

Project title: Build a selling course website using ReactJS and Springboot

Name of instructor: Vinh Thinh Le Ph.D

Commentary:

1 On content of topic & workload done:

2 Advantage

Trang 6

3 Disadvantage:

4 Recommend for defense or not?

5 Rating type

Ho Chi Minh, June 2022

Instructor

Trang 7

HCM University of Technology and Education SOCIALIST REPUBLIC OF VIETNAM

FACULTY OF INFORMATION TECHNOLOGY Independence – Freedom - Happiness

_

ASSESSMENT FORM OF REVIEWER

Major: Information Technology.

Project title: Build a selling course website using ReactJS and Springboot

Name of reviewer: Xuan Phung Huynh Ph.D

Commentary:

1 On content of topic & workload done:

2 Advantage

Trang 8

3 Disadvantage:

4 Recommend for defense or not?

5 Rating type

Ho Chi Minh, June 2022

Reviewer

Trang 9

HCMC University of Technology and Education

Faculty of Information Technology

OUTLINE OF THE GRADUATION THESIS

Full name of the first student: Quyet Sinh Nguyen ID: 18110354

Full name of the second student: Chu Thanh Thong ID: 18110365

Specialized: Software Technology

Project name: Build a selling course website using ReactJS and Springboot

Instructor: Vinh Thinh Le Ph.D

Thesis task:

1 Learn about ReactJS and Springboot

2 Build a website to sell courses

Outline of the graduation thesis:

TABLE OF CONTENTPREFACE

1 REASON FOR CHOOSING THE TOPIC

2.1 Purpose

CHAPTER 1: THEORETICAL BASIS

1.1.1 What is Java language?

1.1.2 Features of the Java language

Trang 11

2.5 CODELEARN

2.6 FUNIX

CHAPTER 3: SYSTEM ANALYSIS AND DESIGN

3.1 SYSTEM ANALYSIS

3.1.1 Client side feature

3.1.2 Admin side feature

3.2 USE CASE DIAGRAM AND USE CASE DESCRIPTION3.2.1 Use case diagram

3.2.2 Use case description

Trang 13

With our deepest gratitude, we would like to thank Mr.Vinh Thinh Le, the lecturer at theFaculty of Information Technology, Ho Chi Minh City University of Technology andEducation, who enthusiastically guided and gave suggestions during the process ofmaking this thesis Although he was quite busy, he did not hesitate to guide and give ussuggestions His comments helped us a lot in orienting and completing our thesis

However, because of the limited professional knowledge and the lack of practicalexperience, the content of the report cannot avoid errors, we would like to receivesuggestions, guidance, and criticism from the instructors and reviewers to make thesoftware better

Sincerely thanks

Thesis implementation groupQuyet Sinh NguyenChu Thanh Thong

Trang 14

For that reason, we decided to build an online teaching website to provide everyone with

an effective, reliable learning environment, providing the best learning experience

The website has several functions:

Customer site:

 Register

 Account Management

 Buy and learn the course

 Read and write knowledge-sharing blogs

 Comments on the course/blog

 course assessment

 Create notes

 Book a class schedule

Trang 15

The tools are used:

 Frontend: ReactJS

 Backend: Springboot

Trang 16

TABLE OF CONTENT

PREFACE 1

1 REASON FOR CHOOSING THE TOPIC 1

2 PURPOSE AND TASKS PERFORMED 2

2.1 Purpose 2

2.2 Tasks 2

3 RESEARCH METHODS 2

4 EXPECTED RESULTS ACHIEVED 2

CHAPTER 1: THEORETICAL BASIS 3

JAVA LANGUAGE 3

What is Java language? 3

Features of the Java language 3

Advantages of Java 5

Disadvantages of Java 5

JAVASCRIPT LANGUAGE 6

What is JavaScript? 6

Advantages of JavaScript 6

Disadvantages of JavaScript 6

How JavaScript works 6

SPRINGBOOT 7

1.3.1 What is Spring? 7

1.3.2 Advantages of Spring? 7

Trang 17

1.3.4 Features of Springboot 9

1.3.5 Advantages of Springboot 10

1.3.6 Disadvantage of Springboot 10

1.3.7 Distinguish Springboot, SpringMVC and Spring 11

REACTJS 15

1.4.1 What is ReactJS? 15

1.4.2 Features of ReactJS 15

1.4.3 Advantages of ReactJS 16

1.4.4 Disadvantages of ReactJS 16

1.4.5 Difference between Angular and React 17

MYSQ 18

1.5.1 What is MySQL? 18

1.5.2 Advantages of MySQL 18

1.5.3 Disadvantages of MySQL 19

CHAPTER 2: CURRENT STATUS SURVEY 20

2.1 OVERVIEW 20

2.2 UDEMY 20

2.3 F8 21

2.4 W3 SCHOOLS 22

2.5 CODELEARN 23

2.6 FUNIX 24

CHAPTER 3: SYSTEM ANALYSIS AND DESIGN 26

Trang 18

Admin side feature 31

USE CASE DIAGRAM AND USE CASE DESCRIPTION 34

Use case diagram 34

Use case description 34

SYSTEM DESIGN 66

Class diagram 66

Sequence Diagram 67

DATABASE DESIGN 85

ERD diagram 85

Database Model 86

UI DESIGN 87

Login, Register UI 87

UI Admin 89

Customer UI 100

CHAPTER 4: INSTALL AND TEST 122

INSTALL 122

TEST 122

CONCLUSION 128

1 THESE ACHIEVEMENTS 128

2 ADVANTAGES 128

3 DISADVANTAGES 128

4 COMPARE WITH REFERENCED WEBSITES 129

Trang 19

LIST OF TABLE

Table 1 : Difference between Springboot and Spring 11

Table 2 : Difference between Springboot and SpringMVC 13

Table 3 : Difference between Angular and React 17

Table 4 : Client side feature 26

Table 5 : Admin side feature 31

Table 6 : Login UI description 87

Table 7 : UI Sign up description 88

Table 8 : Dashboard UI description 89

Table 9 : Order management UI description 91

Table 10 : Course management UI description 92

Table 11 : Add new course UI description 94

Table 12 : Edit course UI description 95

Table 13 : Video management UI description 97

Table 14 : Blog management UI description 97

Table 15 : Customer management UI description 99

Table 16 : Customer homepage UI description 102

Table 17 : Course list UI description 104

Table 18 : Course details UI description 107

Table 19 : Course purchase description 108

Table 20 : List of purchased courses UI description 108

Trang 20

Table 23 : Change avatar UI description 111

Table 24 : Blog UI description 111

Table 25 : Detail blog UI description 113

Table 26 : Write blog UI description 114

Table 27 : My Blog UI description 115

Table 28 : Access error UI description 115

Table 29 : Unlock/ Lock Blog UI description 116

Table 30 : Learning course UI description 117

Table 31 : Note UI description 119

Table 32 : Learning Tools UI description 120

Table 33 : Certificate UI description 121

Table 34 : Test Case System 122

Trang 21

LIST OF IMAGE

Image 1 : Udemy website 20

Image 2 : F8 website 21

Image 3 : W3 Schools website 22

Image 4 : Codelearn website 23

Image 5 : Funix website 24

Image 6 : Use case diagram 34

Image 7 : Class diagram 66

Image 8 : ERD Diagram 85

Image 9 : Database Model 86

Image 10 : Login UI 87

Image 11 : Sign up UI 88

Image 12 : Dashboard UI 89

Image 13 : Order management UI 91

Image 14 : Course management UI 92

Image 15 : Add new course UI 93

Image 16 : Edit course UI 95

Image 17 : Video management UI 96

Image 18 : Blog management UI 97

Image 19 : Customer management UI 98

Image 20 : Customer homepage UI 102

Trang 22

Image 23 : Course purchase UI 107Image 24 : List of purchased courses UI 108Image 25 : Edit personal account information UI 109Image 26 : Password change UI 110Image 27 : Change avatar UI 110Image 28 : Blog UI 111Image 29 : Detail blog UI 112Image 30 : Write blog UI 113Image 31 : My Blog UI 114Image 32 : Access error UI 115Image 33 : Unlock/ Lock Blog UI 116Image 34 : Learning course UI 117Image 35 : Overview course UI 118Image 36 : Note UI 119Image 37 : Learning Tools UI 120Image 38 : Certificate UI 121

Trang 23

1 REASON FOR CHOOSING THE TOPIC

With the development of the Internet and modern technology, the educationalprocess is increasingly developing, especially online education models In manydeveloped countries in the world such as the US, Korea, and Japan the form ofE-Learning education is increasingly developing In Vietnam, in the context of thewhole country towards the 4.0 revolution, the application of modern technology ineducation is increasingly focused Smart learning models through the onlineenvironment are strongly developed Students only need to register as a membervia devices connected to the Internet to be able to study anywhere No need to go

to class every day, wait for the teacher, or have to arrange a time to travel to class.Online learning is no longer confined to college and university students, but alsoextends to all levels from elementary to junior high, and high school, atprofessional training centers, and leaders teaching, Learning becomes simpleand effective when you know how to use technology devices and a virtual Internetenvironment to absorb real knowledge

For that reason, my group decided to choose the topic of building a website to sellcourses The website will provide online courses in many fields, and at the sametime support students to learn in a convenient, fast, and effective way

Trang 24

2 PURPOSE AND TASKS PERFORMED 2.1 Purpose

- Apply knowledge to build a website that sells courses

2.2 Tasks

- Learn about how to build a website that sells online courses through materials on the internet

- Develop a website to sell online courses

We first learned from the theory with materials about Springboot and ReactJS

in online classes as well as video tutorials on Youtube

 Implement the code, small and basic exercises to get used to the new way ofprogramming

 Refer to websites that sell courses on the internet to apply in their work

 Planning to build a website to sell courses

During the implementation of the website, If there are any questions, the groupwill refer to resources from the internet and the instructors will try to perfectthe website despite its limitations

4 EXPECTED RESULTS ACHIEVED

In theory: Understand the components, structure, and operation of Springbootand ReactJS

About practice: Build a website selling courses using Springboot technologycombined with ReactJS

Trang 25

CHAPTER 1: THEORETICAL BASIS

JAVA LANGUAGE

What is Java language?

 Java is one of the object-oriented programming languages It is used in thedevelopment of software, websites, games, or applications on mobile devices

 Java was started by James Gosling and colleagues at Sun Microsystem in

1991 Java was originally created for the purpose of writing software for householdproducts and was named Oak

 Java was released in 1994, and in 2010 was acquired by Oracle from Sun Microsystem

 Java was created with the criterion of “Write Once, Execute Anywhere”

(Write Once, Run Anywhere – WORA) Software programs written in Javacan run on any different platform through an execution environmentprovided the appropriate execution environment supports that platform

Features of the Java language

Completely object-oriented.

In the process of creating a new language that would be cross-platform, SunMicro-system engineers wanted to create a language that was easy to learn andfamiliar to many programmers So they reused the syntax of C and C++

However, in Java, pointer manipulation is omitted for safety purposes and iseasier to use Overloading of action, goto, or structs like struct and union arealso removed from Java

Language of interpretation:

Trang 26

Language setting Java belongs to the translation language category Moreprecisely, Java is a kind of a compiled language As follows

When writing the code, the system generates a java file When compilingthe source code of the program will be compiled into bytecode code TheJava Virtual Machine translates this encoded bytecode into machine code(or native code) when it receives a request to run the program

Java supports the multipath Process (multi thread) to execute workconcurrently At the same time, it provides a synchronous solution betweenprocesses (priority to use solution )

Automatic garbage collection mechanism:

When creating objects in Java, the JRE automatically allocates space for objects on the heap

Java Language setting supports the memory that you do you have a levelplay, which means you don't have to call abort the memory yourself Javagarbage collection keeps track of allocated resources When there is noreference to the memory area, the garbage collector will proceed to reclaimthe allocated memory

Java Language setting has strict requirements on data types Data must be explicitly declared

Do not use pointers and operations with pointers

Java strict check starting on arrays, and strings Technical overflow is not allowed Do that the access will not exceed the size of the array or string.The process of releasing and releasing memory is done automatically

Trang 27

The mechanism that makes error handling and error recovery easier.

Advantages of Java

 Easy to learn, easy to read

 Most cross-platform since it was designed for it and Sun makes JRE and JDK for most platforms

 Everything is passed by reference except value types, by default

 Easy to create multiple threads and you can declare functions to be

synchronized so that only one thread can be in a thread (IIRC)

 Various free IDEs available on all platforms, such as Eclipse

 Requires JRE to be installed to run the program, downloads a few hours on dial-up…

Trang 28

JAVASCRIPT LANGUAGE

What is JavaScript?

 JavaScript is a website programming language, integrated and embedded inHTML to make the website more vivid JavaScript allows better control over web pagebehavior than using HTML alone

 JavaScript is a programming language that is supported on almost all

browsers such as Firefox, Chrome, … even browsers on mobile devices

Advantages of JavaScript

 You don't need a compiler because the web browser can compile it with HTML

 It is easier to learn than other programming languages

 Errors are easier to spot and therefore easier to fix

 It can be mounted on some web page element or web page event such as through mouse click or hover

 JS works cross-browser, platform, etc

 You can use JavaScript to check the input and minimize manual checking when accessing through the database

 It helps the website interact better with visitors

 It's faster and lighter than other programming languages

Disadvantages of JavaScript

 Easily exploited

 Can be used to execute malicious code on the user's computer

 Sometimes not supported on all browsers

 JS code snippets are large

 May be deployed differently from device to device resulting in inconsistency

Trang 29

 JavaScript is usually embedded directly into a website or referenced via aseparate js file It is a client-side language, that is, the script is downloaded to thevisitor's machine and processed there instead of the server-side processing on the serverand then giving the result to the visitor.

 Note that popular web browsers also support whether or not the user wants

to disable JavaScript That's why you should know how your website would workwithout JavaScript

SPRINGBOOT

1.3.1 What is Spring?

for Java Enterprise With Spring Framework developers can create highly performance,testable and reusable code

 The core features of Spring Framework can be used in developing any Javaapplication Besides, the extension is used to build web applications on the Java EEplatform The goal of Spring Framework is to make J2EE application development easierand promote better programming using the POJO-based model

Trang 30

 Spring uses several existing technologies such as some ORM Frameworks,logging frameworks, JEE, Quartz, JDK timers and other View technologies.

 Easy to test a program written in Spring

 Spring's Web framework is a well-designed Web MVC framework that is a great alternative to Struts and other less popular technologies

 Spring provides a convenient API to translate technology-specificexceptions (thrown by JDBC, Hibernate, or JDO, for example) into consistent, uncheckedexceptions

 IoC Container is light in weight This is beneficial for developing anddeploying applications on computers with limited memory and CPU resources

 Spring provides a consistent transaction management interface that canextend to a local transaction (using a database, for example) and to global transactions(using JTA)

1.3.3 What is Springboot?

 Spring Boot is a module of Spring Framework, providing RAD (Rapid Application Development) feature – Rapid application development

 Spring Boot is used to create standalone applications based on Spring

 Spring Boot requires no XML configuration

 It is a standard for software design configuration, increasing developer productivity

Trang 31

1.3.4 Features of Springboot

Auto Config: Auto configuration is a core Spring Boot approach to reduce

the number of actions developers have to perform It automatically configures a Springapplication based on the dependencies you added earlier Spring Boot autoconfigurationprovides powerful default features and great flexibility

SpringApplication: SpringApplication is a class that makes it convenient

to launch applications from the main function To start the application, you simply callthe run methods

Embedded Servers: Embedded servers are part of the application That

means you don't have to pre-install it in the deployment environment Spring Bootprovides an embedded Tomcat server by default, but you can change it to Jetty orUndertow Embedded servers make deployment more efficient and reduce applicationrestart times

Externalized Configuration: Externalized Configuration allows you to have

external configurability So a built application can be run and work on many differentenvironments To perform Externalized Configuration you can use properties files, YAML,command line parameters or environment variables

Profiles: Spring Boot Profiles will provide a way to split the profiles for each

environment Annotations that are @Component or @Configuration may be marked with

profiles to limit when or environments will be uploaded

 Not only those features, with Spring Boot, you can also develop webApplications, Caching, send Email, Validation, work with SQL technology, etc.…

Trang 32

1.3.5 Advantages of Springboot

 Has Spring Framework features

 Create a stand-alone application that can be run with java -jar (for java web)

 Directly embed server applications (Tomcat, Jetty ) so there is no need to deploy WAR files

 Less configuration, auto-configure whenever possible (Reduce coding time, increase productivity)

 No XML config required…

 Easy to integrate related modules such as Spring-MVC, Spring Data, SpringSecurity, Spring Cloud, etc

 Provides many plugins

 Standard for Micro-services (Cloud support; reduce setup, config; support libraries )

Trang 33

micro-1.3.7 Distinguish Springboot, SpringMVC and Spring

Table 1: Difference between Springboot and Spring

For building or developing applications, the For developing REST APIs Spring BootSpring framework is considered to be the framework is widely used

most widely used Java EE framework

Developers have become more productive as It is the easiest framework for developingthis framework has made Java EE web applications as the code length isdevelopment is simple reduced when using this framework

Dependency Injection Auto configuration: Based on the

requirement, the classes are automaticallyconfigured by Spring Boot

This framework helps make things simpler Stand-alone applications can be built using

by allowing us to build loosely coupled this Spring Boot framework with minimal

For doing a minimal task, the developer The boilerplate code is reduced to an extentneeds to write a huge amount of code or, If we use Spring Boot

more specifically, boilerplate code

The server needs to be set up explicitly for Embedded servers like Jetty, Tomcat, etc.,the testing purpose of the Spring Project are offered by the Spring Boot framework

This framework does not provide in-memory It offers several plugins for working with an

H2

Trang 34

In pom.xml, the dependencies of our Spring There is a concept of starter in the pom.xmlproject are manually defined by the file of our Spring Boot which is used for

Dependency JARs based on the Spring BootRequirement

Deployment descriptor is required for Deployment descriptor is not required forrunning Spring applications Spring Boot

In the Spring framework, the configurations For Spring Boot, there are default

bootstrapping is allowed

Due to a large amount of source code, testing Due to the reduced amount of code, testing

in Spring is more difficult than testing in is easier in Spring Boot

Spring Boot

In Spring, XML configuration is required In Spring Boot, XML configuration is not

required

No plugin is provided by the Spring For Maven and Gradle build tool, plugins

plugins provide various features,including the packaging of the executablejars

For developing and testing applications, no Spring Boot provides the CLI tool forCLI tool is provided by Spring Framework developing and testing applications

HTTP authentication enables security Only the dependency of authentication Several configurations and security is needed to be defined because alldependencies are needed to enable security the relevant dependencies will be

spring-boot-starter-The standard dependencies spring-security- automatically added to the classpath

Trang 35

config and spring-security-web are required

to set up security in the application

For the next step, a class that extends

WebSecurityConfigurerAdapter needs to be

added

Table 2: Difference between Springboot and SpringMVC

Spring Boot is considered a module of the Spring MVC is considered to be the modelSpring framework for packaging the Spring- view controller-based web framework underbased application with sensible defaults the Spring framework

For building a Spring-powered framework, For building web applications, ready-to-usedefault configurations are provided by it features are provided by it

Developers do not need to build the In Spring MVC, the configurations areconfigurations manually required to be built manually

The boilerplate code is avoided, and the Each dependency is specified separately bydependencies are wrapped together in a it

Trang 36

Powerful batch processing is provided by it Powerful batch processing is not provided by

it

There are four types of presentation There are four components in MVC such aslayers: Presentation layer, Business layer, Model, View, Controller, Front Controller,Persistence layer, and the Database layer or DispatcherServlet Class

Along with dynamic web pages and Dynamic web pages and RESTFUL webRESTFUL web services, Spring Boot can services are developed using Spring MVC.also develop other applications

Trang 37

REACTJS

1.4.1 What is ReactJS?

 ReactJS is an open source JavaScript library designed by Facebook to createattractive, fast and efficient web applications with minimal coding The core purpose ofReactJS is not only to make the website smooth, but also to be fast, highly extensible andsimple

 Its strength comes from focusing on the individual ingredients Therefore,instead of working on the entire web application, ReactJS allows a developer to breakcomplex user interfaces into simpler components

1.4.2 Features of ReactJS

JSX: is an extended syntax for JavaScript, which is a combination of

JavaScript and XML It converts the almost XML syntax into JavaScript, making itpossible to code ReactJS using XML syntax instead of using JavaScript

Component: is a place to render pure html code, another important thing is

that it allows us to break up the UI code into independent parts, for the purpose of easymanagement and reuse

Props: stands for Properties, we can understand it as properties of a

Component If Component is considered as an object in OOP programming, then Propsare like descriptions of the properties and characteristics of an object

State: is used to represent the state of the Component That is, the value of

State is mutable, in stark contrast to Props which is an immutable value.

Trang 38

1.4.3 Advantages of ReactJS

 Uses the virtual DOM which is a JavaScript object This will improveapplication performance, as the JavaScript virtual DOM is faster than the regular DOM

 Can be used on clients and servers as well as with other frameworks

 Component and data templates improve readability, helping to maintain larger applications

1.4.4 Disadvantages of ReactJS

MVC framework like other frameworks This is just a Facebook library to help render theview So React will not have a Model and Controller part, but must combine with otherlibraries React also won't have 2-way binding or Ajax

to Angular (About 35kb compared to 39kb of Angular) Whereas Angular is a completeframework

Trang 39

1.4.5 Difference between Angular and React

Table 3: Difference between Angular and React

Full-featured Framework – provides a The library is only concerned with UIstrong opinion on how your application components MVC design requires Flux toshould be designed, as well as a number of implement, but it provides you moretiny libraries that aid in the development of flexibility in how you wish to organize your

Supports both one way and two way data One-way data binding means that a UIbinding ,two-way data binding means that If element can’t affect a component’s state

we modify the UI input, the model state will

change, and vice versa

TypeScript is a statically typed language TypeScript can write JavaScript XMLthat is a superset of JavaScript (JSX), although it isn’t included by default

Material Design Components – Angular Material-UI Library & Dependencies –includes a number of material design Community-developed UI tools provide acomponents that make UI configuration a wide range of UI components

breeze

Dependency injection is supported, React does not fully enable dependencyallowing for separate life cycles for injection because each component has its

Incremental DOM – when a new DOM is Virtual DOM – anytime the DOM changes,created, it compares it to the previous one a new virtual DOM is created, compared toand applies the differences to the “actual” the previous one, and only the differencesDOM, only allocating memory If are modified in the “real” DOM

necessary

Trang 40

MYSQ

1.5.1 What is MySQL?

 MySQLis an open source relational database management system(RDBMS)supported by Oracle based on Structured Query Language (SQL), which is astable, high-speed database management system and easy to use, portable,works on many operating systems providing a large set of very powerfulutility functions With high speed and security, MySQL is well suited forapplications that access databases on the internet

 MySQL runs on virtually all platforms, including Linux, Windows, andUnix Today, MySQL is the RDBMS behind many of the top websites in the world andcountless business and consumer web-based applications, including Facebook, Twitter,and YouTube

1.5.2 Advantages of MySQL

Easy to use: MySQL is a high-speed, stable, easy-to-use and cross-operating

database that provides a large system of very powerful utility functions

High Security: MySQL is very suitable for applications that access

databases on the Internet when possessing many security features even at high level

Multiple features: MySQL supports a lot of SQL functions expected from

a relational database management system both directly and indirectly

Scalable and powerful: MySQL can handle a lot of data and moreover it

can be extended If necessary

Fast: The introduction of several standards allows MySQL to work very

efficiently and cost-effectively, thus increasing the execution speed

Ngày đăng: 11/05/2023, 09:51

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Spring.io (2022) Springboot [Online]. Available: https://spring.io/projects/spring-boot[2]Reactjs.org (2022) Getting started [Online]. Available: https://reactjs.org/docs/getting-started.html Sách, tạp chí
Tiêu đề: Springboot
Tác giả: Spring.io
Năm: 2022
[3] Redux.js.org (2022) Getting started [Online]. Available: https://redux.js.org/ Sách, tạp chí
Tiêu đề: Getting started
Tác giả: Redux.js.org
Năm: 2022
[4] Interviewbit (2022) Angular Vs React: Difference Between Angular and React [Online]. Available:https://www.interviewbit.com/blog/angular-vs-react/ Link
[7] Website CodeLearn [Online]. Available: https://codelearn.io/ Link
[8] Website F8 [Online]. Available: https://fullstack.edu.vn/ Link
[9] Website W3School [Online]. Available: https://www.w3schools.com/ Link
[10] Website Funix [Online]. Available: https://funix.edu.vn/ Link

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w