大家好,又见面了,我是你们的朋友全栈君。
由于时间关系,里面许多图片都已经变形或错位
课程设计(学年论文)
题目:学生选课管理系统的设计与实现
系 院 计算机科学技术系
专 业 计算机科学与技术
班 级
姓 名
学 号
指导教师
职 称
二零一三 年 六月 三十 日
课程设计(学年论文)任务书
(指导教师用表)
学 生 姓 名 |
指 导 教 师 |
|
|||
题 目 |
学生选课管理系统的设计和实现 |
||||
主要 内容 |
|
||||
研究方法 |
|
||||
主要任务 及目标 |
|
||||
主要参 考文献 |
|
||||
进度安排 |
各阶段任务 |
日期 |
|||
|
|
||||
|
|
||||
|
|
||||
|
|
指导教师签字:
系(院)负责人签字:
课程设计(学年论文)成绩评定表
系(院):
学生姓名 |
|
专业 班级 |
|
||
题目 |
学生选课管理系统的设计与实现 |
||||
内容提要 |
|
||||
指导教师评语 |
|
||||
成绩: 指导教师(签名): 年 月 日 |
目录
引言…5
第一章 需求分析… 6
1.1 需求分析… 6
1.1.1 分析阶段… 6
1.2 任务概述… 7
1.2.1 目标… 7
1.2.2 运行环境… 7
软件配置: 1.2 任务概述… 8
1.2.1 目标… 8
1.2.2 运行环境… 8
1.3 数据流图… 8
1.4 数据字典… 9
第二章 概念结构设计… 11
2.1 概念结构… 11
2.2 学生选课管理系统概念结构设计… 11
2.2.1 系统E-R图… 12
2.2.2 实体及属性的定义… 12
第三章 逻辑结构设计… 13
3.1 逻辑结构设计… 13
3.2 初始关系模式… 14
3.3 规范化处理… 14
第四章 物理结构设计… 14
4.1 索引表… 15
4.2 角色… 15
4.3 视图… 16
第五章 数据库的实施… 17
5.1 用SQL语言建数据库和表代码如下:… 17
5.2 数据的载入… 19
5.3 数据库的修改操作… 19
5.4 数据库的删除操作… 20
5.5 应用程序的调试… 20
第六章 数据库系统运行与维护… 20
6.1 数据库的维护… 20
6.1.1 维护… 20
6.1.2 检测并改善数据库性能… 21
6.1.3 重新组织和构造数据库… 21
第七章 前台C#设计的用户界面… 22
第八章 结论与体会… 29
引言
科学技术的进步和生产的发展使人类知识总量的增长不断加快,生产社会化趋势的扩大和社会对产品需求的多样性使得组织在营运活动中所涉及的内部和外部信息量迅速地膨胀起来。面对激烈的市场竞争,人们对这些信息进行收集、加工、传递等过程的时间性和准确性提出了更高的要求。这一切使得传统的手工作业为基础的信息系统陷入了机构日益庞大,效率日益降低的困境。电子计算机的出现为摆脱这种困境找到了出路。计算机用于管理信息处理的突出优点是迅速、准确、可靠、具有很大的存储能力,适应于管理信息量大、面宽的特点,适合于管理信息处理及时、准确的要求。
管理信息系统(MIS,Management Information System)是一个由人和计算机等组成的能够提供信息以支持一个组织机构内部的作业、管理、分析和决策职能的系统。管理信息系统利用计算机的硬件和软件,手工规程、分析、计划、控制和决策用的模型,以及数据库对信息进行收集、传输、加工、保存和使用。因此,管理信息系统是一个信息处理系统。
数据库作为存取数据并对数据进行操作的工具在系统中所起到的作用至关重要。数据库设计是指对于一个给定的应用环境,构造优化的数据库逻辑模式和物理模式结果,并据此建立数据库及其应用系统,使之能有效地存储和管理数据,满足应用需求,包括信息管理要求和数据操作。信息管理要求是指在数据库中应该存储和管理哪些数据对象;数据操作要求是指对数据对象进行哪些操作,如查询、增、删、改、统计等操作。数据库设计地目标是维用户和各种应用系统提供的一个信息基础设施和高效率地运行环境。高效率的运行环境包括:数据库数据的存取速率、数据库存储空间的利用率、数据库系统运行管理的效率等都是高的。
为了使数据库的应用系统开发设计合理、规范、有序、正确、高效进行,现在广泛采用的是工程化6阶段开发设计过程与方法,它们是需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、物理结构设计阶段、数据库实施、数据库系统运行与维护阶段。我按照以上几点开发了学生选课管理系统数据库。
第一章 需求分析
1.1需求分析
数据库是一种存储数据并对数据进行操作的工具。数据库的作用在于组织和表达信息,简而言之,数据库就是信息的集合。计算机的数据库可以分为两类:非关系数据库和关系数据库。关系数据库中包含了多个数据表的信息,数据库含有各个不同部分的术语,如记录、域等。
SQLserver 2005就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。SQL 的优点在于它集数据查询、数据操纵、数据定义和数据控制功能于一体。
通过调查本地的学校,根据学校的具体情况设计学生选课信息管理系统。主要功能有:
1. 学生管理:学生信息查询、插入、删除、修改等
2. 选课管理:选课信息查询、插入、删除、修改等
3.成绩管理:成绩的查询。
4. 系统管理:操作员信息的管理
5. 系统维护:如数据安全管理(含备份与恢复)、操作员管理、权限设置等
1.1.1 分析阶段
本文主要以计算机和网络通信技术为基础,以一门计算机基础课程为实例,研究和探讨了怎样合理地组织和管理教学内容,并且能应用于实际教学之中,以期能达到教师组织教学内容方便、实施网络教学方便以及学生能利用计算机网络进行自主学习的目的。
经过分析,我使用Microsoft公司的MicrosoftVisual Studio 2008开发工具,将.net技术与数据库SQL server相结合进行设计。首先,在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。系统可基本实现选课信息和学生信息的录入、修改、删除等功能,扩充的功能包括与成绩相关的信息处理。同时,可根据学校教学管理制度,设定或自定义审核操作的规则。系统其他方面的需求有:安全保密性、可恢复性、可扩充性、可维护性等。
1.2任务概述
1.2.1目标
本高校管理系统的应用对象定位在普通大学,因此在进行需求分析时主要考虑高等大学的具体需求,并将设计目标确定为普通大学提供基本的高校管理功能。
1.2.2运行环境
服务器配置包括硬件配置和软件配置,它们各自都有详细的要求,下面将分别进行介绍.
1、服务器端配置
(1)、硬件配置
安装本软件之前,需要确保计算机具有如下配置,这也是最低硬件要求:
233兆赫(MHZ)Pentium或更高的微处理器(或与之相当的处理器)
使用256内存(RAM最小为64MB,最大为4GB)
不小于40MB的可用硬盘空间
(2)、软件配置
安装本软件之前,需要确保计算机已安装:MicorsoftWindows XP及以上的操作系统.
2、客户端配置
本软件开发所需要的硬件配置和软件配置分别介绍如下:
硬件配置:1台奔腾级别电脑
软件配置: 1.2 任务概述
1.2.1目标
本高校管理系统的应用对象定位在普通大学,因此在进行需求分析时主要考虑高等大学的具体需求,并将设计目标确定为普通大学提供基本的高校管理功能。
1.2.2运行环境
服务器配置包括硬件配置和软件配置,它们各自都有详细的要求,下面将分别进行介绍.
1、服务器端配置
(1)、硬件配置
安装本软件之前,需要确保计算机具有如下配置,这也是最低硬件要求:
233兆赫(MHZ)Pentium或更高的微处理器(或与之相当的处理器)
使用256内存(RAM最小为64MB,最大为4GB)
不小于40MB的可用硬盘空间
(2)、软件配置
安装本软件之前,需要确保计算机已安装:MicorsoftWindows XP及以上的操作系统.
2、客户端配置
本软件开发所需要的硬件配置和软件配置分别介绍如下:
硬件配置:1台奔腾级别电脑
软件配置:MicrosoftVisual Studio 2008
1.3 数据流图
图2.1 数据流图(1)
1.4数据字典
数据流图表达了数据与处理的关系,数据流图作为直观了解系统运行机理的手段,并没有具体描述个类数据的细节,只有通过数据字典进一步细化才能对系统的需求得到具体而确切的了解。数据字典用来说明数据流图中出现的所有元素的详细定义和描述,包括数据流、加工处理、数据存储、数据的起点和终点或外部实体等。
数据字典包括的项目有数据项、数据结构、数据流、数据存储、加工逻辑和外部实体。可使用一些符号来表示数据结构、数据流和数据存储的组成。
数据元素 |
数据类型 |
长度 |
数据来源 |
学号 |
char |
9 |
学生表 |
学生姓名 |
char |
20 |
学生表 |
性别 |
char |
2 |
学生表 |
年龄 |
smalldatetime |
default |
学生表 |
所在系 |
char |
20 |
学生表 |
课程号 |
char |
4 |
课程表 |
课程名 |
char |
40 |
课程表 |
先修课 |
char |
4 |
课程表 |
学分 |
char |
4 |
课程表 |
学号 |
char |
5 |
成绩表 |
课程号 |
char |
3 |
成绩表 |
成绩 |
char |
3 |
成绩表 |
管理员ID |
char |
4 |
管理员表 |
管理员姓名 |
char |
12 |
管理员表 |
权限 |
char |
20 |
管理员表 |
(1)学号={学号,唯一标识学生,类型:char,长度:9,与课程号唯一标识这门课成绩}。
第二章 概念结构设计
2.1概念结构
在需求分析阶段所得到的应用需求应该首先抽象为信息世界的结构,才能更好地、更准确地用某一DBMS实现这些需求。
概念结构主要特点:
(1) 能真是、充分地反映显示世界,包括事物和事物之间的联系,能满足用户对数据的处理要求,是对现实世界的一个只是模型;
(2) 易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库设计成功的关键。
(3) 易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充;
(4)易于向关系、网状、层次等各种数据模型转换;
概念结构时各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。
2.2学生选课管理系统概念结构设计
现在对所设计系统的需求作进一步的分析,产生概念结构设计的E-R模型。由于这个系统并不复杂,因此可采用自顶向下的设计方法。自顶向下设计的关键是确定系统的核心活动。所谓核心活动就是系统中的其他活动都要围绕这个活动展开,或与此活动密切相关。确定了核心活动之后,系统就有了可扩展的余地。
2.2.1 系统E-R图
管理员 |
|
表2-1 学生信息表Student的表结构
主码 |
列 名 |
数据类型 |
宽度 |
小数位 |
空否 |
备 注 |
Pk |
Sno |
Char |
9 |
|
N |
学号 |
|
Sname |
Char |
20 |
|
N |
姓名 |
|
Ssex |
Char |
2 |
|
Y |
性别 |
|
Ssage |
SmallDatetime |
|
|
Y |
出生日期 |
|
Sdept |
Char |
20 |
|
Y |
所在系 |
表2-2 课程信息表Course的表结构
主码 |
列 名 |
数据类型 |
宽度 |
小数位 |
空否 |
备 注 |
Pk |
Cno |
Char |
4 |
|
N |
课程代码 |
|
Cname |
Char |
40 |
|
N |
课程名称 |
|
Cpno |
char |
4 |
|
Y |
先修课程 |
|
Credit |
Decimal |
4 |
1 |
Y |
学分 |
表2-3 选课成绩表SC的表结构
主码 |
列 名 |
数据类型 |
宽度 |
小数位 |
空否 |
备 注 |
Pk |
Sno |
Char |
5 |
|
N |
学号 |
Cno |
Char |
3 |
|
N |
课程代码 |
|
|
Grade |
Decimal |
3 |
1 |
Y |
成绩 |
表2-4 管理员表Admin的表结构
主码 |
列 名 |
数据类型 |
宽度 |
小数位 |
空否 |
备 注 |
Pk |
Admin_id |
Char |
4 |
|
N |
操作员编号 |
|
Admin_name |
Char |
12 |
|
N |
操作员姓名 |
|
Permission |
Char |
20 |
|
Y |
权限 |
第三章 逻辑结构设计
3.1逻辑结构设计
概念结构设计所得的E-R模型是对用户需求的一种抽象的表达形式,它独立于任何一种具体的数据模型,因而也不能为任何一个具体的DBMS所支持。为了能够建立起最终的物理系统,还需要将概念结构进一步转化为某一DBMS所支持的数据模型,然后根据逻辑设计的准则、数据的语义约束、规范化理论等对数据模型进行适当的调整和优化,形成合理的全局逻辑结构,并设计出用户子模式这
就是数据库逻辑设计所要完成的任务。
数据库逻辑结构的设计分为两个步骤:首先将概念设计所得的E-R图转换为
关系模型;然后对关系模型进行优化,如下图所示:
图4.1 逻辑结构设计过程
关系模型是由一组关系(二维表)的结合,而E-R模型则是由实体、实体的属性、实体间的关系三个要素组成。所以要将E-R模型转换为关系模型,就是将实体、属性和联系都要转换为相应的关系模型。
3.2 初始关系模式
Student(Sno,Sname,Ssex,Ssage,Sdept)
其中各项含义分别为:学生(学号,姓名,性别,年龄,所在系)
Course(Cno,Cname,Cpno,Credit)
其中各项含义分别为:课程(课程代码,课程名称,先修课程,学分)
SC(Sno,Cno,Grade)
其中各项含义分别为:选修(学号,课程代码,成绩)
Admin(Amin_id,Admin_name, Permission)
其中各项含义分别为:操作员(操作员编号,操作员姓名,权限)
3.3规范化处理
经过对初始关系模式的规范化处理以下关系模式中不存在部分函数依赖和传递函数依赖,已经达到3NF。(下划线代表主码,斜体外码)
Student(Sno,Sname,Ssex,Ssage,Sdept)
Course(Cno,Cname,Cpno,Credit)
SC(Sno,Cno,Grade)
Admin(Admin_id,Admin_name,Permission)
第四章 物理结构设计
数据库在物理上的存储结构与存储方法称为数据库的物理结构,它依赖于选定的数据库管理系统。为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是物理结构设计。
数据库的物理结构设计通常分为两步:
(1)确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;
(2)对物理结构进行评价,评价的中的是时间和空间效率。
4.1索引表
表2-5 学生信息表Student的表索引表
索引 |
列 名 |
数据类型 |
宽度 |
主 |
Sno |
Char |
9 |
无 |
Sname |
Char |
20 |
无 |
Ssex |
Char |
2 |
无 |
Sage |
SmallDatetime |
|
无 |
Sdept |
Char |
20 |
表2-6 课程信息表Course的索引表
索引 |
列 名 |
数据类型 |
宽度 |
主 |
Cno |
Char |
4 |
无 |
Cname |
Char |
40 |
无 |
Cpno |
Char |
4 |
无 |
Credit |
Decimal |
4 |
表2-7 选课成绩表SC的索引表
索引 |
列 名 |
数据类型 |
宽度 |
主 |
Sno |
Char |
9 |
Cno |
Char |
4 |
|
无 |
Grade |
Decimal |
5 |
表2-8 操作员表Admin的索引表
索引 |
列 名 |
数据类型 |
宽度 |
主 |
Admin_id |
Char |
4 |
无 |
Admin_name |
Char |
12 |
无 |
Permission |
Char |
20 |
4.2 角色
建立了管理员角色
图2.5 角色
4.3 视图
用SQL管理工具建立常用的一个视图,即学生_成绩视图。
菜单栏中单击工具→ 向导→ 数据库→ 创建视图向导,选择你所要建的试图的对象,选择列名,按照提示,最后单击完成即可。
使用SQL语句建立视图的命令如下:
ps(此处本该数据表建成以后再创建视图,为啦清楚表达物理结构设计所以提前)
create view 学生_成绩 as select sc.sno,sname,course.cno,cname,grade from student join sc on student.sno= sc.sno join course on course.cno=sc.cno
|
第五章 数据库的实施
数据库物理设计完成之后,需要用RDBMS提供的数据定义语言和其他使用程序将数据库逻辑设计和物理设计结果严格描述出来,成为DBMS可以接受的源代码,在经调试产生目标文件。
5.1用SQL语言建数据库和表代码如下:
学生选课信息管理系统数据库代码如下:
Create database 学生选课管理系统 On (Name=mydatabase1, Filename=‘d:\数据库\mydatabase.mdf’, Size=3, Maxsize=10, Filegrowth=1), (Name=mydatabase2, Filename=‘d:\数据库\mydatabase.ndf’, Size=5, Maxsize=15, Filegrowth=2) Log on (Name=mydatabase_log, Filename=‘d:\数据库\mydatabase_log.ldf’, Size=5, Maxsize=10, Filegrowth=1)
|
学生选课信息管理系统数据表代码如下:
create table Student( Sno char(9)primary key, Sname char (20) not null, Sex char(2)check (sex in(‘男‘,‘女‘)), Sbirth smalldatetime, Sdept char(20) ); go create table Course( Cno char(3)primary key, Cname char(40)not null, Cpno char(4),
Credit Decimal(3,1) ) go create table SC( Sno char(9)references Student(Sno), Cno char(4)references Course(Cno), Grade decimal(5,1), constraint pk primary key(Sno,Cno) ) go create table Admin( Admin_id char(9)primary key, Admin_name char(12)not null, Permission char(20)default ‘0’ ) go
|
5.2数据的载入
INSERT
INTO <表名>[(<属性列1>[,<属性列2>…)]
VALUES(<常量1>[,<常量2>]);
以学生表为例插入输入如下:PS(学号是主码,故不可以相同)
insert into Student(Sno,Sname,Ssex,Sage,Sdept) values(‘200215121’,‘李勇‘,‘男‘,’20’,‘CS’);
insert into Student(Sno,Sname,Ssex,Sage,Sdept) values(‘200215122’,‘刘晨‘,‘女‘,’19’,‘CS’);
insert into Student(Sno,Sname,Ssex,Sage,Sdept) values(‘200215123’,‘王敏‘,‘女‘,’18’,‘MA’);
insert into Student(Sno,Sname,Ssex,Sage,Sdept) values(‘200215125’,‘张立‘,‘男‘,’19’,‘IS’); insert into Student(Sno,Sname,Ssex,Sage,Sdept) |
5.3数据库的修改操作
UPDATE <表名>
SET<列名>=<表达式>
[WHERE<条件>];
例如:在学生表中修改学号为’200215121’的所在系为’IS’。
update student set sdept=‘IS’ where sno=‘200215121’
|
5.4数据库的删除操作
DELETE
FROM<表名>
[WHERE<条件>];
例如:删除学号为’200215124’的相关信息
delete from student where sno=‘200215124’
|
5.5应用程序的调试
系统操作运行演示:为了使数据库的设计过程更加完整一些,这点专门拿到后面的一章前台界面的开发中去描述。
第六章数据库系统运行与维护
数据库的运行和应用程序的调试都将在第七章中进行演示。
6.1数据库的维护
在数据库运行阶段,对数据库经常性的维护工作主要是有DBA完成,它包括:
1. 数据库的转储和恢复
2. 数据库的安全性和完整性控制
3. 数据库性能的监督、分析和改造
4. 数据库的重组织与重构造
6.1.1 维护
数据库既是共享的资源,又要进行适当的保密。DBA必须对数据库安全性和完整性控制负起责任。尤其在计算机网络普遍引应用的今天,保证数据安全、防止黑客攻击、防止病毒入侵等,都是DBA所需要面对的。按照设计阶段提供的安全防范和故障恢复规范,DBA要经常检查系统的安全是否受到侵犯,根据用户的实际需要授予用户不同的操作权限。数据库在运行过程中,由于应用环境发生变化,对安全性的要求可能发生变化,DBA要根据实际情况及时调整相应的授权和密码,以保证数据库的安全性。同样数据库的完整性约束条件也可能会随应用环境的改变而改变,这时DBA也要对其进行调整,以满足用户的要求。
6.1.2检测并改善数据库性能
目前许多DBMS产品都提供了检测系统性能参数的工具,DBA可以利用系统提供的这些工具,经常对数据库的存储空间及响应时间进行分析评价;结合用户的反映情况确定改进措施;及时改正运行中发现的错误;按用户的要求对数据库的现有功能进行适当的扩充。但要注意在增加新功能时应保证原有功能和性能不受损害。
6.1.3重新组织和构造数据库
数据库建立后,除了数据本身是动态变化外,随着应用环境的变化,数据库本身也必须变化以适应应用要求。
数据库运行一段时间后,由于记录在不断增加、删除和修改,会改变数据库的物理存储结构,使数据库的物理特性受到破坏,从而降低数据库存储空间的利用率和数据的存取效率,使数据库的性能下降。因此,需要对数据库进行重新组织,即重新安排数据的存储位置,回收垃圾,减少指针链,改进数据库的响应时间和空间利用率,提高系统性能。这与操作系统对“磁盘碎片”的处理的概念相似。数据库的重组只是使数据库的物理存储结构发生变化,而数据库的逻辑结构不变,所以根据数据库的三级模式,可以知道数据库重组对系统功能没有影响,只是为了提高系统的性能。
由此可知,数据库的重组并不会改变原设计的数据逻辑结构和物理结构,而数据库的重构造则不同,它部分修改原数据库的模式或内模式,这主要是因为数据库的应用环境发生了变化,如需求变化、设计调整等。例如增加新的数据项、改变数据类型、改变数据库的容量、增加或删除索引、修改完整性约束等。
DBMS一般都提供了重新组织和构造数据库的应用程序,以帮助DBA完成数据库的重组和重构工作。
只要数据库系统在运行,就需要不断地进行修改、调整和维护。一旦应用变化太大,数据库重新组织和构造也无济于事,这就表明数据库应用系统的生命周期结束,应该建立新系统,重新设计数据库。从头开始数据库设计工作,标准着一个新的数据库应用系统生命周期的开始。
第七章前台C#设计的用户界面
用户登录界面如下:
系统主界面如下:
学生管理界面如下:此界面具有增删改查功能。具体演示以选课信息为例
选课信息界面设计:
添加课程
连接数据库和添加课程de代码如下:
private void button1_Click(object sender, EventArgs e) { SqlConnection conn =new SqlConnection(); conn.ConnectionString = s; SqlCommand cmd = new SqlCommand(); string sql = string.Format(“insert into Course (Cno,Cname,Cpno,Ccredit) values(‘{0}’,'{1}’,'{2}’,'{3}’)”,textBox1.Text,textBox2.Text,textBox3.Text,textBox4.Text); cmd.CommandText = sql; cmd.Connection = conn; conn.Open(); cmd.ExecuteNonQuery(); conn.Close(); MessageBox.Show(“添加成功!”); } |
删除课程:
private void button1_Click(object sender, EventArgs e) { DialogResult r = MessageBox.Show(“你确实要删除吗?”,“提示”, MessageBoxButtons.YesNo); if (r == DialogResult.No) return; string s = “server=.;database=学生选课管理系统;integrated security=true;”; SqlConnection conn =new SqlConnection(); conn.ConnectionString = s; SqlCommand cmd = new SqlCommand(); string sql; sql = string.Format(“delete from Course where Cno='{0}'”, textBox1.Text); cmd.CommandText = sql; cmd.Connection = conn; conn.Open(); int n = cmd.ExecuteNonQuery(); conn.Close(); MessageBox.Show(“删除” + n +“条数据”); } |
删除代码如下:
修改课程信息:
查找课程:
课表显示:
成绩查询:
由于代码太多,就不一一附上啦。更多的信息操作功能与源代码的实现可查看源项目。
第八章 结论与体会
在我做课程设计时,将书本上所学的知识尽可能地发挥到了实践中。经过需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施及数据库运营与维护6大阶段,我制作并运营成功了一个的以SQLSERVER 2005数据库为后台、以Microsoft Visual Studio 2008所制作的应用程序为前台。
通过这次设计,我受益非浅,亲身体验了数据库设计的全过程,在实践中了解了数据库系统设计的步骤、流程以及思路,增长了在数据库设计方面的见识,我深刻认识到以前所学的基础课程的重要性,也使我们掌握了很多新知识,特别是一些课本之外的知识,体会到了理论知识和实践相结合的重要性。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/144672.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...