虚拟现实环境下的远程教育和智能评估系统(二)

2024-05-31 20:44

本文主要是介绍虚拟现实环境下的远程教育和智能评估系统(二),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本周进行开发工具,技术框架选择与学习;基本了解了以下技术框架的部署应用;

一、Springboot:最常用的后端框架之一,通过提供默认配置和自动配置,消除许多手动配置和样板代码,从而加速基于Spring的开发;

1.学习框架结构,Service,Controller等层作用与编写约定;

2.配置Maven环境;

3.学习注解,常用JPA注解如下:

@Entity:@Table(name=“”):表明这是一个实体类。这两个注解一般一块使用,但是如果表名和实体类名相同的话,@Table可以省略。
@MappedSuperClass:用在确定是父类的entity上,父类的属性子类可以继承。
@NoRepositoryBean:一般用作父类的repository,有这个注解,spring不会去实例化该repository。
@Column:如果字段名与列名相同,则可以省略。
@Id:表示该属性为主键。
@GeneratedValue(strategy = GenerationType.SEQUENCE,generator = “repair_seq”):表示主键生成策略是sequence(可以为Auto、IDENTITY、native等,Auto表示可在多个数据库间切换),指定sequence的名字是repair_seq。
@SequenceGeneretor(name = “repair_seq”, sequenceName = “seq_repair”, allocationSize = 1):name为sequence的名称,sequenceName为数据库的sequence名称,两个名称可以一致。
@Transient:表示该属性并非一个到数据库表的字段的映射,ORM框架将忽略该属性。
@JsonIgnore:作用是json序列化时将Java bean中的一些属性忽略掉,序列化和反序列化都受影响。
@JoinColumn(name=“loginId”):一对一:本表中指向另一个表的外键。一对多:另一个表指向本表的外键。
@OneToOne、@OneToMany、@ManyToOne:对应hibernate配置文件中的一对一,一对多,多对一。

测试类如下:

import com.jack.springbootquick.bean.Book;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest
public class SpringbootquickApplicationTests {@AutowiredBook book;@Testpublic void contextLoads() {System.out.println(book);}
}

二、vue:选用vue作为前端框架,Vue.js 的核心库专注于视图层,可以很容易地与其他库或现有项目整合。

Vue.js 的主要特点:

  1. 响应式数据绑定:Vue.js 使用数据劫持结合发布者-订阅者模式,通过 Object.defineProperty() 来劫持各个属性的 setter 和 getter,在数据变动时发布消息给订阅者,触发相应的监听回调来更新视图。

  2. 组件化开发:Vue.js 提供了强大的组件化开发支持,允许用户创建可复用的自定义元素,这些元素可以封装你的 HTML、CSS 和 JavaScript 代码。

  3. 模板语法:Vue.js 使用了一种基于 HTML 的模板语法,允许你以声明式的方式将已渲染的 DOM 绑定至底层 Vue 实例的数据。

  4. 指令:Vue.js 提供了一些特殊的属性,如 v-ifv-forv-bindv-model 和 v-on,这些被称作“指令”,用于在 DOM 上应用特殊的响应性行为。

  5. 生命周期钩子:Vue.js 提供了丰富的生命周期钩子函数,允许你在 Vue 实例的不同生命周期阶段执行自定义逻辑。

  6. 过渡效果:Vue.js 可以在元素或组件有插入、更新或移除时应用过渡效果。

  7. 状态管理:对于大型应用,Vue.js 提供了 Vuex,一个专为 Vue.js 应用程序开发的状态管理模式和库。

  8. 路由:对于构建单页面应用(SPA),Vue.js 提供了 vue-router,用于构建路由系统。

  9. 构建工具:Vue CLI 是一个完整的 Vue.js 开发工具,提供了构建、热重载、代码压缩等功能。

helloworld测试:

<div id="app">  <p>{{ message }}</p>  <button @click="reverseMessage">Reverse Message</button>  
</div>  <script>  
new Vue({  el: '#app',  data: {  message: 'Hello Vue!'  },  methods: {  reverseMessage: function () {  this.message = this.message.split('').reverse().join('')  }  }  
})  
</script>

三、中间件nacos的学习:

Nacos(Naming and Configuration Service)是一个开源的动态服务发现、配置管理和服务管理平台,专为现代化的微服务架构而设计。它旨在解决服务发现、配置管理和动态路由等关键挑战,并提供了服务健康监测和多语言支持等功能。

核心概念

  1. 服务(Service): 服务是指一个或一组软件功能,不同的客户端可以为不同的目的重用。Nacos支持主流的服务生态,如Kubernetes Service、gRPC、Dubbo RPC Service或Spring Cloud RESTful Service。

  2. 服务注册中心(Service Registry): 服务实例及元数据的数据库。服务实例在启动时注册到服务注册表,并在关闭时注销。

  3. 服务元数据(Service Metadata): 描述服务的数据,包括服务端点、服务标签、版本号、服务实例权重等。

  4. 配置(Configuration): 在系统开发过程中,通常会将一些需要变更的参数、变量等从代码中分离出来独立管理,这些配置信息在Nacos中以配置文件的形式存在。

  5. 名字服务(Naming Service): 提供分布式系统中所有对象、实体的“名字”到关联的元数据之间的映射管理服务。

  6. 配置服务(Configuration Service): 在服务或者应用运行过程中,提供动态配置管理功能。

以上即是本周的学习情况,下周继续学习其他技术栈;

这篇关于虚拟现实环境下的远程教育和智能评估系统(二)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1018997

相关文章

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

在Mysql环境下对数据进行增删改查的操作方法

《在Mysql环境下对数据进行增删改查的操作方法》本文介绍了在MySQL环境下对数据进行增删改查的基本操作,包括插入数据、修改数据、删除数据、数据查询(基本查询、连接查询、聚合函数查询、子查询)等,并... 目录一、插入数据:二、修改数据:三、删除数据:1、delete from 表名;2、truncate

VScode连接远程Linux服务器环境配置图文教程

《VScode连接远程Linux服务器环境配置图文教程》:本文主要介绍如何安装和配置VSCode,包括安装步骤、环境配置(如汉化包、远程SSH连接)、语言包安装(如C/C++插件)等,文中给出了详... 目录一、安装vscode二、环境配置1.中文汉化包2.安装remote-ssh,用于远程连接2.1安装2

C#实现系统信息监控与获取功能

《C#实现系统信息监控与获取功能》在C#开发的众多应用场景中,获取系统信息以及监控用户操作有着广泛的用途,比如在系统性能优化工具中,需要实时读取CPU、GPU资源信息,本文将详细介绍如何使用C#来实现... 目录前言一、C# 监控键盘1. 原理与实现思路2. 代码实现二、读取 CPU、GPU 资源信息1.

在C#中获取端口号与系统信息的高效实践

《在C#中获取端口号与系统信息的高效实践》在现代软件开发中,尤其是系统管理、运维、监控和性能优化等场景中,了解计算机硬件和网络的状态至关重要,C#作为一种广泛应用的编程语言,提供了丰富的API来帮助开... 目录引言1. 获取端口号信息1.1 获取活动的 TCP 和 UDP 连接说明:应用场景:2. 获取硬

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

2.1/5.1和7.1声道系统有什么区别? 音频声道的专业知识科普

《2.1/5.1和7.1声道系统有什么区别?音频声道的专业知识科普》当设置环绕声系统时,会遇到2.1、5.1、7.1、7.1.2、9.1等数字,当一遍又一遍地看到它们时,可能想知道它们是什... 想要把智能电视自带的音响升级成专业级的家庭影院系统吗?那么你将面临一个重要的选择——使用 2.1、5.1 还是

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j