自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(103)
  • 资源 (1)
  • 收藏
  • 关注

原创 Springboot整合mail实现邮箱注册验证

Springboot整合mail实现邮箱注册验证1.邮件发送流程:发件方:a@qq.com(简写,为了马赛克)收件方:b@163.com(简写,为了马赛克)2.配置pom.xml <!--mail--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-s

2021-06-20 21:47:13 2133 1

原创 json web token(JWT)基本原理及Springboot集成

JWT基本原理及Springboot集成1.JWT(Json Web Token)简介Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该token也可直接被用于认证,也可被加密。说起JW

2021-06-20 21:19:47 895 1

原创 JAVA和Python的GRPC远程调用

JAVA和Python的GRPC远程调用1.使用springboot项目搭建Java端1.1pom.xml配置文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.a

2021-06-19 23:22:01 1665 2

原创 在win10本地开发springboot项目能上传图片,并能通过URL直接从浏览器访问,但是部署到服务器上后能上传文件,但是通过浏览器无法访问图片

在win10本地开发springboot项目能上传图片,并能通过URL直接从浏览器访问,但是部署到服务器上后能上传文件,但是通过浏览器无法访问图片1.首先springboot项目在Window和Linux服务器的项目资源路径是不一样的,需要分开来设置路径: @Override @Transactional(readOnly = false, rollbackFor = Exception.class) public String uploadImage(MultipartFile ima

2021-06-15 21:45:45 1027

原创 在controller中获取的上传图片和封装实体类报错

在controller中获取的上传图片和封装实体类报错2021-02-19 22:45:16.664 WARN 8368 --- [nio-8080-exec-1] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'multipart/form-data;boundary=-------------

2021-06-15 21:31:53 748

原创 解决已经在安全规则组中开放端口却还是无法访问项目的问题

解决已经在安全规则组中开放端口却还是无法访问项目的问题当项目部署到服务器后,相应的软件以及配置环境都已经安装完毕,但是在启动项目访问首页时候出错,由于已经在云服务器控制台中开启了相应的端口,但是还是访问失败,因此需要自己手动在服务器中开放端口。由于我的服务器使用的os是Ubuntu,所以这里就介绍一下ubuntu18.04下的方法。2.8.1安装iptables$ sudo apt-get install iptables2.8.2添加规则$ iptables -I INPUT -p tcp -

2021-06-15 21:27:59 5127

原创 springboot项目打包到服务器运行以及出错解决办法

springboot项目打包到服务器运行以及出错解决办法本次项目中需要的MySQL8数据库,Redis都是已经安装在了远程服务器上,因此我们可以直接将springboot项目打包好jar后发送到服务器然后运行即可。2.1首先在项目的pom.xml中添加配置 <packaging>jar</packaging> <build> <plugins> <plugin> &

2021-06-15 21:19:50 3746 2

原创 Springboot处理CORS跨域请求的五种方法并且设置过滤器的执行顺序

Springboot处理CORS跨域请求的三种方法一.前言Springboot跨域问题,是当前主流web开发人员都绕不开的难题。但我们首先要明确以下几点跨域只存在于浏览器端,不存在于安卓/ios/Node.js/python/ java等其它环境跨域请求能发出去,服务端能收到请求并正常返回结果,只是结果被浏览器拦截了。之所以会跨域,是因为受到了同源策略的限制,同源策略要求源相同才能正常进行通信,即协议、域名、端口号都完全一致。浏览器出于安全的考虑,使用 XMLHttpRequest对象发起

2021-06-15 20:51:03 4601 2

原创 Typora绑定PicGo图床+Gitee快速上传图片

Typora绑定PicGo图床+Gitee快速上传图片Typora是一个Markdown编辑工具,可以使用他绑定PicGo图床实现粘贴文件自动上传到图床的功能,便于我们在一处编写完文章后发表到其他网址1下载Typora直接在typora官网选择Download页签下载即可2.PicGo准备2.1下载在PicGo官方的github地址下载即可,如果官网太慢可以到笔者的百度网盘上下载,建议选择2.2.0以上版本,支持PicGo-Server配置自定义端口百度云下载gicgo2.3版本:链接:h

2021-06-15 18:05:15 392

原创 windows下git配置github和gitee SSH-Key密钥方便同时将本地分支推送到远程仓库

windows下 git配置github和gitee SSH-Key密钥方便同时将本地分支推送到远程仓库1先配置giteee的SSH-Key生成一个gitee用的SSH-Key密钥:输入命令:(gitee_id_rsa是生成公钥的名)$ ssh-keygen -t rsa -C '你的邮箱' -f ~/.ssh/gitee_id_rsa点击三次回车,这里什么也不用填。2.配置github的SSH-Key生成一个github用的SSH-Key密钥:输入命令:(github_id_rsa是生成公钥

2021-06-13 18:20:15 716

原创 Git项目同时推送到GitHub和gitee上教程

Git项目同时推送到GitHub和gitee上1.首先在GitHub和gitee上分别创建两个仓库1.1在GitHub上创建test仓库1.2在Gitee上创建test仓库2.在本地中初始化创建一个git本地分支git init3.从GitHub或者gitee上将test仓库拉取到本地(这里选择克隆GitHub的test仓库)git pull https://github.com/LJF2402901363/test.git4.进入 .git目录下修改config文件[cor

2021-06-13 18:11:18 2071 1

原创 MySQL数据库入门学习(五)——使用工具类封装JDBC实现MySQL的查询操作

MySQL数据库入门学习(五)——使用工具类封装JDBC实现MySQL的查询操作1.前言我们知道,事实上,MySQL的 “增删查改”其实就是分为两类,一类是更新操作:int executeUpdate(String sql)包括了插入(insert),更新(update),删除(delete);另外一类是查询操作(select),由ResultSet executeQuery(String sql) 或者 ResultSet executeQuery() 实现。在上篇文章:MySQL数

2021-02-18 13:47:37 353

原创 Docker环境下使用CentOS7.8配置Hadoop3.3.0完全分布式集群环境

Docker环境下使用CentOS7.8配置Hadoop3.3.0完全分布式集群环境1.首先拉取CentOS7.8镜像(笔者之前使用CentOS8进行安装但是CentOS8无法正常安装OpenSSH,折腾了好久后才使用CentOS7进行安装后可以正常安装OpenSSH)docker pull centos:centos7.8.20032.创建固定IP子网按照集群的架构,创建容器时需要设置固定IP,所以先要在docker使用如下命令创建固定IP的子网.至于在Docker下的网络模式可以参考博客D

2021-01-08 22:59:50 1112 4

原创 MYSQL学习与数据库综合实验(十二)——自主存取控制实验(基于Ubuntu18.04中Docker安装的MySQL8实验)

MYSQL学习与数据库综合实验(十)——自主存取控制实验(基于Ubuntu18.04中Docker安装的MySQL8实验)12.1MySQL的权限用户连接到MySQL,可以做各种查询,这都是MySQL用户与权限功能在背后维持着操作。用户与数据库服务器交互数据,分为两个阶段:(1)你有没有权连接上来(2)你有没有权执行本操作12.1.1你有没有权连接上来服务器如何判断用户有没有权连接上来?依据:1)你从哪里来?host2)你是谁?user3)你的密码是多少?password用户的这

2020-12-19 23:21:42 1291 2

原创 MySQL创建用户时提示“Operation CREATE USER failed for XXX”的解决办法

本人在进行数据库综合实验时候,想创建一个user用户,遇到该问题报错:经过一段时间的排查发现,出现该原因的结果是之前使用了delete from mysql.user where user ='user_1';的语句删除用户,即使你刷新了 flush privileges;也没用。删除用户需要使用drop user 用户然后重新进行创建就好了:create user 'user_1'@'%' identified by '123456';...

2020-12-19 22:16:20 31857 3

原创 MYSQL学习与数据库综合实验(十 一)—— 客户端工具备份与恢复实验(基于Ubuntu18.04中Docker安装的MySQL8实验)

11. 客户端工具备份与恢复实验该实验衔接上一次实验:MYSQL学习与数据库综合实验(十)——语句备份与恢复实验(基于Ubuntu18.04中Docker安装的MySQL8实验)11.1使用mysqldump命令备份DBEM数据库中的salary表将数据库dbms中的salary表备份到当前所在目录中(你所在文件夹下使用指令的地方)backup文件夹下的salary.sql文件中。mysqldump -h localhost -P 3307 -u root -p dbms salary > b

2020-12-19 21:49:57 728 1

原创 MYSQL学习与数据库综合实验(十)——语句备份与恢复实验

MYSQL学习与数据库综合实验(十)——语句备份与恢复实验(基于Ubuntu18.04中Docker安装的MySQL8实验)10.SQL语句备份与恢复实验​ 数据库的主要作用就是对数据进行保存和维护,所以备份数据是数据库管理中最常用的操作。为了防止数据库意外崩溃或硬件损伤而导致的数据丢失,数据库系统提供了备份和恢复策略。保证数据安全的最重要的一个措施就是定期的对数据库进行备份。这样即使发生了意外,也会把损失降到最低。数据库备份是指通过导出数据或者复制表文件的方式来制作数据库的副本。当数据库出现故障或

2020-12-19 21:17:58 2380 1

原创 信息摘要函数(Hash函数)的设计与性质验证

1.信息摘要函数(Hash函数)的设计与性质验证实验2.实验目的:信息摘要函数(Hash函数)的设计与性质验证。2.1实验设备:PC机 一台/人2.2实验原理:2.2.1.信息摘要函数具有固定的输出数位。2.2.1信息摘要函数满足不可求逆,不可伪造和在可行时间之内找不到碰撞等特性。3.实验内容及注意事项:信息摘要函数的设计与Hash值的性质验证实验步骤:3.1设计符合原理要求的信息摘要函数H(m)。3.2对于如下明文信息m:There was a grocery shop in a t

2020-12-13 00:29:53 3338 4

原创 C++实现MD5摘要算法加盐salt值

C++实现MD5摘要算法加盐salt值1.信息摘要函数1.1Hash函数哈希函数就是能将任意长度的数据映射为固定长度的数据的函数。哈希函数返回的值被叫做哈希值、哈希码、散列,或者直接叫做哈希。1.2消息摘要将长度不固定的消息(message)作为输入参数,运行特定的Hash函数,生成固定长度的输出,这个输出就是Hash,也称为这个消息的消息摘要(Message Digest)1.3信息摘要算法是hash算法的一种,具有以下特点:①无论输入的消息有多长,计算出来的消息摘要的长度总是固定的

2020-12-13 00:09:30 4014 1

原创 Mybatis-plus学习(七)——MybatiPlus的代码生成器

7.代码生成器AutoGenerator 是 MyBatis-Plus 的代码生成器,通过 AutoGenerator 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 等各个模块的代码,极大的提升了开发效率。特别说明:自定义模板有哪些可用参数?Github Gitee AbstractTemplateEngine 类中方法 getObjectMap 返回 objectMap 的所有值都可用。package com.moyisuiying.bo

2020-12-06 01:28:10 602

原创 Mybatis-plus学习(六)——MybatiPlus的乐观锁和自动填充功能详解

7.乐观锁7.1OptimisticLockerInnerInterceptor当要更新一条记录的时候,希望这条记录没有被别人更新乐观锁实现方式:取出记录时,获取当前version更新时,带上这个version执行更新时, set version = newVersion where version = oldVersion如果version不对,就更新失败7.2使用方法字段上加上@Version注解@Versionprivate Integer version;说明:

2020-12-06 01:20:03 660

原创 Mybatis-plus学习(五)——MybatiPlus的自定义ID生成器和逻辑删除详解测试

5.自定义ID生成器自mybatis-plus3.3.0开始,默认使用雪花算法+UUID(不含中划线)5.1雪花算法snowflake是Twitter开源的分布式ID生成算法,结果是一个long型的ID。其核心思想是:使用41bit作为毫秒数,10bit作为机器的ID(5个bit是数据中心,5个bit的机器ID),12bit作为毫秒内的流水号(意味着每个节点在每毫秒可以产生 4096 个 ID),最后还有一个符号位,永远是0。可以保证几乎全球唯一!5.2配置主键自增5.3在数据库中配置主

2020-12-06 01:11:42 3540 2

原创 Mybatis-plus学习(四)——MybatiPlus的Wrapper的使用

4Wrapper的使用4.1Wrapper的类图体系4.2wapper介绍Wrapper : 条件构造抽象类,最顶端父类,抽象类中提供4个方法西面贴源码展示AbstractWrapper : 用于查询条件封装,生成 sql 的 where 条件AbstractLambdaWrapper : Lambda 语法使用 Wrapper统一处理解析 lambda 获取 column。LambdaQueryWrapper :看名称也能明白就是用于Lambda语法使用的查询Wrapper

2020-12-06 01:03:24 2043 1

原创 Mybatis-plus学习(三)——MybatiPlus的分页插件PaginationInnerInterceptor详解以及测试

3.分页插件(PaginationInnerInterceptor)3.1属性介绍属性名类型默认值描述overflowbooleanfalse溢出总页数后是否进行处理(默认不处理,参见 插件#continuePage 方法)maxLimitLong单页分页条数限制(默认无限制,参见 插件#handlerLimit 方法)dbTypeDbType数据库类型(根据类型获取应使用的分页方言,参见 插件#findIDialect 方法)dialect

2020-12-06 00:53:34 28657 11

原创 Mybatis-plus学习(二)——MybatiPlus的BaseMapper和IService详解以及自定义实现

Mybatis-plus学习(二)——MybatiPlus的BaseMapper和IService详解以及自定义实现2.使用BaseMapper以及了解其原理2.1查看BaseMapper的源码AccountDao.java接口继承于mybatis-plus提供的BaseMapper.java接口,而BaseMapper.java接口继承于Mapper.java接口。我们首先看Mapper.java接口里面的方法:** * 顶级Mapper * * @author nieqiurong 201

2020-12-06 00:30:57 23054 4

原创 Mybatis-plus学习(一)——Springboot整合MybatiPlus

1.初步认识1.1简介Mybatis-Plus(简称MP)是一个 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,为简化开发、提高效率而生。这是官方给的定义,关于mybatis-plus的更多介绍及特性,可以参考mybatis-plus官网。那么它是怎么增强的呢?其实就是它已经封装好了一些crud方法,我们不需要再写xml了,直接调用这些方法就行,就类似于JPA。1.2.特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本

2020-12-05 18:19:32 518

原创 MYSQL学习与数据库综合实验(六)——实体完整性实验

6.实体完整性实验6.1定义**实体完整性:**是指保证表中所有的行唯一。实体完整性要求表中的所有行都有一个唯一标识符。这个唯一标识符可能是一列,也可能是几列的组合,称为主键。也就是说,表中的主键在所有行上必须取唯一值。强制实体完整性的方法有:索引、UNIQUE约束、PRIMARY KEY约束或IDENTITY属性。​ 如:student表中sno(学号)的取值必须唯一,它唯一标识了相应记录所代表的学生,学号重复是非法的。学生的姓名不能作为主键,因为完全可能存在两个学生同名同姓的情况。6.2创建

2020-12-05 14:07:55 2747

原创 MYSQL学习与数据库综合实验(五)——索引实验

5.索引实验5.1索引的定义​ 索引是一种特殊的数据库结构,由数据表中的一列或多列组合而成,可以用来快速查询数据表中有某一特定值的记录。​ 通过索引,查询数据时不用读完记录的所有信息,而只是查询索引列。否则,数据库系统将读取每条记录的所有信息进行匹配。​ 可以把索引比作新华字典的音序表。例如,要查“库”字,如果不使用音序,就需要从字典的 400 页中逐页来找。但是,如果提取拼音出来,构成音序表,就只需要从 10 多页的音序表中直接查找。这样就可以大大节省时间。 因此,使用索引可以很大程度上提高数

2020-12-05 13:38:27 3781 2

原创 MYSQL学习与数据库综合实验(八)——存储过程实验

8.存储过程实验8.1存储过程定义存储过程是一组为了完成特定功能的 SQL 语句集合。使用存储过程的目的是将常用或复杂的工作预先用 SQL 语句写好并用一个指定名称存储起来,这个过程经编译和优化后存储在数据库服务器中,因此称为存储过程。当以后需要数据库提供与已定义好的存储过程的功能相同的服务时,只需调用“CALL存储过程名字”即可自动完成。8.2存储过程的优点1) 封装性通常完成一个逻辑功能需要多条 SQL 语句,而且各个语句之间很可能传递参数,所以,编写逻辑功能相对来说稍微复杂些,而存储过程

2020-12-05 03:55:52 5763

原创 MYSQL学习与数据库综合实验(九)——触发器

9触发器9.1触发器是什么MySQL 的触发器和存储过程一样,都是嵌入到 MySQL 中的一段程序,是 MySQL 中管理数据的有力工具。不同的是执行存储过程要使用 CALL 语句来调用,而触发器的执行不需要使用 CALL 语句来调用,也不需要手工启动,而是通过对数据表的相关操作来触发、激活从而实现执行。比如当对 student 表进行操作(INSERT,DELETE 或 UPDATE)时就会激活它执行。触发器与数据表关系密切,主要用于保护表中的数据。特别是当有多个表具有一定的相互联系的时候,触发

2020-12-05 03:37:18 5223 4

原创 MYSQL学习与数据库综合实验(七)——参照性完整实验

7.参照性完整实验7.1语法7.1.1创建表时定义参照完整性7.1.1.1列级参照完整性列定义时加上关键字 REFERENCES ref_table_name(ref_key)7.1.1.2表级参照完整性7.1.1.2.1表定义时,在语句最后加上CONSTRAINT ref_key_name FOREIGN KEY (ref_key) REFERENCES ref_table_name(ref_key)7.1.2创建表后定义参照完整性使用ALTER TABLE命令7.1.3参照性定义

2020-12-05 03:26:56 2353

原创 MYSQL学习与数据库综合实验(四)——视图实验

4.视图实验4.1视图的定义​ MySQL 视图(View)是一种虚拟存在的表,同真实表一样,视图也由列和行构成,但视图并不实际存在于数据库中。行和列的数据来自于定义视图的查询中所使用的表,并且还是在使用视图时动态生成的。数据库中只存放了视图的定义,并没有存放视图中的数据,这些数据都存放在定义视图查询所引用的真实表中。​ 使用视图查询数据时,数据库会从真实表中取出对应的数据。因此,视图中的数据是依赖于真实表中的数据的。一旦真实表中的数据发生改变,显示在视图中的数据也会发生改变。视图可以从原有的表上

2020-12-05 03:02:52 2527

原创 MYSQL学习与数据库综合实验(三)——数据查询实验

3 数据查询实验3.1单表查询3.1.1Select 语句,SQL核心,语法格式如下:SELECT [ALL | DISTINCT | DISTINCTROW ][HIGH_PRIORITY]… 列名表达式 …[FROM table_reference ... ] /*FROM子句*/[WHERE 条件] /*WHERE子句*/[GROUP BY {列名| 表达式 | position} [ASC | DESC], ... [WITH ROLLUP]] /*GR

2020-12-05 02:59:40 4247

原创 MYSQL学习与数据库综合实验(二)—— 数据更新实验

MYSQL学习与实验(二)—— 数据更新实验2.1数据更新实验2.1.1创建一个测试表test用于测试:create table if not exists test ( id int(8) primary key auto_increment,name varchar(20) not null,price float,gender tinyint(1) default 0,age int(3),birth date );2.1.2向test表中插入数据2.1.2.1插入单条数据INSERT

2020-12-05 02:40:22 1406

原创 MYSQL学习与数据库综合实验(一)——数据库定义与操作

MYSQL学习与实验(一)——数据库定义与操作1.1创建数据库语句CREATE DATABASE [IF NOT EXISTS] 数据库名 [选项...];这里创建一个DBMS的数据库 create database if not exists DBMS character set gbk;这里使用了if not exists 这个条件,意思是如果不存在该数据库则创建,如果已经存在了则不创建。比如这个DBMS数据库已经被创建,这时候就不会重复创建这个数据库,如果不使用这个if not ex

2020-12-05 02:21:52 1195

原创 UP 的阶段,用例和使用场景之间是什么关系以及和协作之间的关系,软件开发过程中使用 UML 的必要性以及好处,寻找概念类的三种策略

UP 的阶段,用例和使用场景之间是什么关系以及和协作之间的关系,软件开发过程中使用 UML 的必要性以及好处1.什么是 UP 的阶段?1) 初始:大体上的构想、业务案例、范围和模糊评估;2) 细化:已精化的构想、核心架构的迭代实现、高风险的解决、确定大多数需求和范围以及进行更为实际的评估;3) 构造:对遗留下来的风险较低和比较简单的元素进行迭代实现,准备部署;4) 移交:进行 beta 测试和部署。2.用例和使用场景之间是什么关系?与协作又是什么关系?用例就是一组相关的成功和失败场景集合,用

2020-11-01 19:01:30 1457

原创 UML构造型的作用,主动类的概念,敏捷开发的含义,对象图的适用场景以及它的优缺点

UML构造型的作用,主动类的概念,敏捷开发的含义,对象图的适用场景以及它的优缺点1.构造型的作用是什么?构造型用来定义一些特定于某个领域或某个系统的构造块。用来扩展建模元素,增加建模元素的语义。构造型表示对现有建模概念的精化,并且定义在UML 的简档之中。简档是一组相关构造型、标记和约束的集合,其目的是使用 UML 专用于特定领域或平台。UML 预定义了大量构造型,同时允许用户自行定义构造型,因此,在 UML 中构造型提供了扩展机制。2.请简要解释主动类的概念,并说明它建模的意义主动对象运行于自己控

2020-11-01 17:46:10 4775

原创 UML 的三个主要的特性,是否是方法论,三种方式以及三种透视图

UML 的三个主要的特性,是否是方法论以及三种方式1. UML 的三个主要的特性。1) UML 是一种可视化语言;2) UML 用于建模;3) UML 是一种统一的标准。2.UML 是一种方法论吗?并简要说明理由。UML 并不是 OOA/D,也不是方法论,它只是图形表示法,是一种描述模型的标准语言, 虽然渗透了许多方法论的基础概念,但是却没有在标准中给出完整的方法指南。3.应用 UML 的三种方式是什么?UML 作为草图,用于探讨问题或解决方案空间的复杂部分;UML 作为蓝图,相对详细的

2020-11-01 15:15:46 2194

原创 MySQL数据库入门学习(四)——使用工具类封装JDBC实现MySQL的更新操作

MySQL数据库入门学习(四)——使用工具类封装JDBC实现MySQL的更新操作1.前言我们知道,事实上,MySQL的 “增删查改”其实就是分为两类,一类是更新操作:int executeUpdate(String sql)包括了插入(insert),更新(update),删除(delete);另外一类是查询操作(select),由ResultSet executeQuery(String sql) 实现。观察数据库更新操作时的代码:/** * @param book 需要保存的对象

2020-10-31 18:19:59 315

原创 MySQL数据库入门学习(三)——使用工具类封装JDBC实现对数据库的连接

MySQL数据库入门学习(三)——使用工具类封装JDBC实现对数据库的连接1.前言回顾在对MySQL数据库进行操作之前,我们首先通过JDBC获取Connection对象,在这个过程中,我们首先要加载MySQL数据库驱动,然后才能通过 DriverManager.getConnection(url,user,password)创建一个连接Connection对象。我们首先观察JDBC中对数据库进行增删查改操作的代码(这里只列出了更新update和查询select)的代码://拼接需要执行的更新sql语句

2020-10-31 17:28:23 489

软件工程大作业-腾讯雨课堂升级版-需求分析

目录 1 引言 4 1.1 背景 4 1.2文档目的 5 1.3预期的用户 5 1.4参考文献 5 2 综合描述 6 2.1 用户角色权限 6 2.1.1 用户权限 6 2.2用户角色类型和特征 7 2.4系统运行环境 7 3 系统功能需求 8 3.1 产品功能结构图 9 3.2 产品信息结构图 11 3.3 开发进度安排 12 4 模块详细需求 12 4.1 注册登录模块 12 4.2 课堂会议模块 14 4.3 个人信息模块 20 4.4学习讨论区模块 22 4.5其它模块 24 4.6通知模块 25 4.7系统完整的用例图 27

2020-10-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除