更多的程序员文章收录在
文章目录
数据库是项目开发的关键。不管是JAVA,还是C#还是PHP都要接触后端数据库,mysql 是一项大学生必须掌握的技能与学科。
JAVA毕设项目一般所使用的技术

JAVA环境及工具:
本系列环境
| 环境 | win11 | 安装博文 | B站视频地址 |
|---|---|---|---|
| 工具 | idea 2020 | Idea2020安装详解以及JAVA项目技术讨论-【JAVA环境】 | 【JAVA环境】介绍IDEA 2020的下载以及安装 |
| jdk | JDK1.8 | JDK安装详解以及JAVA项目技术讨论-【JAVA环境】 | 【JAVA环境】jdk安装及配置 |
| 数据库 | mysql5.5 | mysql安装超详细步骤(保姆级教程)以及JAVA项目技术讨论-【mysql数据库】 | |
| maven | 3.6.0 | ||
| WEB服务器 | tomcat | ||
| 数据库前端工具 | mysql-front | ||
| 数据库前端工具 | navicat |
数据库前端工具:mysql-front (navicat 也可以)
主要是这些跟PHPStudy 2018 整合了,所以有的时候懒的打开navicat
关于环境的重要性,直接看上面的《SpringBoot 的项目编译即报错处理–JSB系列之001》
mysql版本
MySQL是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的RDBMS (Relational Database Management System,关系数据库管理系统)应用软件之一。
MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL 5.0
免费!
MyISAM MySQL 5.0 之前的默认数据库引擎,最为常用。拥有较高的插入,查询速度,但不支持事务
InnoDB事务型数据库的首选引擎,支持ACID事务,支持行级锁定, MySQL 5.5 起成为默认数据库引擎
16.在线 DDL/更改功能,数据架构支持动态应用程序和开发人员灵活性(5.6新增)
17.复制全局事务标志,可支持该软件修复式集群(5.6新增)
18.复制无崩溃从机,可提高可用性(5.6新增)
19.复制多线程从机,可提高性能(5.6新增)
20.3倍更快的性能(5.7 [3]新增)
21.新的优化器(5.7新增)
22.原生JSON支持(5.7新增)
23.多源复制(5.7新增)
24.GIS的空间扩展 [4](5.7新增)
MySQL 8.0
MySQL 8.0是当前最先进的MySQL版本,提供了显著的性能提升、安全增强和新功能支持,适用于现代Web、移动和云应用开发。
MySQL 8.0的核心优势
MySQL 8.0作为Oracle旗下的主流开源数据库,在性能、功能和管理方面均有显著改进,主要亮点包括:
性能提升:
支持Hash Join和Anti Join,优化多表连接查询效率。
引入倒序索引、不可见索引和函数索引,提升查询灵活性。
通过WRITESET模式减少主从复制延迟,并行复制效率提高。
功能增强:
JSON支持:新增Multi-valued索引和JSON_TABLE函数,强化JSON数据处理能力。
窗口函数与CTE:简化复杂查询逻辑,支持WITH子句和窗口分析。
文档存储:在同一数据库中同时支持关系型和NoSQL应用。
安全与管理:
默认字符集升级为utf8mb4,支持更广泛的国际化字符。
提供SQL角色管理,简化权限分配流程。
在线配置参数持久化(SET PERSIST),减少重启需求。
MySQL 8.0分社区版与企业版
MySQL 8.0社区版是全球最受欢迎的开源数据库之一,遵循GPL许可协议,由活跃的开源社区支持。它适用于多种应用场景,包括Web开发、数据分析等,并提供了丰富的功能和性能优化。
社区版免费!
企业版的差异在于附加的插件/组件
MySQL 8.0.35 的企业版与社区版相比,性能方面是有所提高的。
企业版收费!




mysql5.7与mysql8.0对比
默认配置下,为什么 MySQL 8.0 比 MySQL 5.7 慢!
这两天在整理 MySQL 的资料,然后分别在 MySQL 5.7 和 MySQL 8.0 上做测试,看看这些资料内容在两个版本上是否有差异。
结果在涉及到一个插入数据的场景中,发现两个版本的性能相差很大,都是在一个简单表上通过存储过程来插入100万条记录。两者的性能相差3倍多。
于是就想看看是什么原因导致两者这么大的差异,以及应该做哪些调整才能有性能提升。
首先说明,两个数据库安装在相同型号,相同配置的两台机器上,都采取默认配置,所配置的内存也一致。


在数据量百万级之下,mysql8.0还不如mysql5.7,不管怎么优化。
在数据量百万级之下,优化过的mysql8.0强于mysql5.7,这一下就知道为什么那么多的开源项目,都使用mysql5.7了吧?
mysql安装详解
1.下载安装程序
官方地址:https://downloads.mysql.com/archives/installer/

2.安装 mysql
一旦下载完成,你需要双击打开这个安装包,以启动mysql的安装程序。接下来,你可以按照安装向导的指引,逐步完成mysql的安装过程。

双击运行mysql-installer-community-5.7.31.0.msi,这里选择是自定义安装,所以直接选择“Custom”,点击“Next”
“Developer Default”是开发者默认
“Server only”仅作为服务器安装
“Client only”仅作为客户端安装
“Full”是完整安装
“Custom”是自定义安装

2. 选择安装的产品和功能
依次点开“MySQL Servers”、“MySQL Servers”、“MySQL Servers 5.7”、“MySQL Servers 5.7.31 -64”,然后点击绿色箭头将选中的版本移植到右边选中框中
注:这里选择的是64位系统

3. 先选中“MySQL Server 5.7.31” ,之后点击下方的蓝色“Advanced Options”

4. 自定义安装路径和数据存放路径,更改完成之后点击“OK”
注:虽说安装在C盘也没毛病,但是个人建议不要安装到C盘,我安装到了D盘
安装路径选择,个人建议安装在D盘的JAVA的各种工具,以前的JDK也是建议安装到D盘

5. 直接点击“OK”
注:这里因为选择了我自己创建的路径,故程序提示路径已存在,是否要继续

- 更改完成之后点击“Next”

- 确认一下安装路径和数据存放路径对不对,没有问题的话就直接点击Next

- 直接点击“Yes”

直接点击“Yes”
- 先选中“MySQL Server5.7.31”,若电脑中没有这个环境,会提示安装“Microsoft Visual C++ 2013”环境,点击“Execute”
这一步不一定会弹出
若电脑没有这个环境,则弹

11. 勾选中之后点击“Install”

- 安装完成,点击“Close”

12. 看到这个对勾就说明这个环境安装上了,直接点击“Next”
最最重要的验证

13. 直接点击“Execute”

14. 出现这个图标就说明安装成功了,直接点击“Next”

15. 直接点击“Next”

16. 直接点击“Next”

17. 选择安装类型(默认即可)
个人学习研究的话选择“Development Computer”则可以,我这里选择是“Development Computer”
Development Computer 适合个人开发学习使用的
Server Computer 是像主要用于像FTP,email,web服务器等等
Dedicated Computer 只用作MySQL服务器

- MySQL的默认端口是3306,不需要作修改,直接点击“Next”

- 这里需要设置MySQL的密码,不需要太复杂,设置完了直接点击“Next” ,一般开始的密码都设123456 免得忘了。

- 直接点击“Next”

21. 直接点击“Execute”,开始安装,点击安装之后需要等待片刻

22. 点击“Finish” (要一些时间,安心的等着)

23. 点击“Next”

- 点击“Finish”,此时MySQL安装完成

验证:
- 在开始界面搜索mysql,点击第一个MySQL 5.7 Command Line Client

2. 输入刚才设置的MySQL的密码,按Enter键(回车键)

3. 出现下面界面就说明已经安装成功了

至此,MySQL数据库安装成功
配置环境变量(其实可以不设)
- 找到MySQL的安装路径

- 右击此电脑选择“属性”

- 先点击“高级系统设置”,再点击“环境变量”

4. 在“系统变量”中选择“Path”,点击“编辑”

- 点击“新建”,将MySQL的安装路径添加上去,之后点击“确定”

6. 直接点击“确定”


7. 验证环境变量是否配置好,按下“window+R”键 弹出运行框,输入“cmd”进入window命令行

- 输入“mysql -u root -p”按下回车

- 输入密码,按下“Enter键(回车键)”,出现下面界面则是已经配置成功

则表示整个mysql安装与环境的配置已经顺利完成。
常用客户端
下载地址:
https://download.csdn.net/download/dearmite/90564909
安装视频(略)
因这PHPStudy 一路点Next .也不用修改目录,默认就在D盘
一般项目的数据库报错信息及处理 由于本系列的视频要有设置项,推荐去B站登陆观看,不然低分率下的菜单可能看不清
AI推荐的JAVA学习路线:
以下是系统化的Java基础学习路线图,结合主流技术栈及企业需求整理,共分四个阶段,配有学习要点和资源推荐:
一、Java语法与编程基础(1-2个月)
目标:建立编程思维,掌握核心语法
基础语法:变量/数据类型、运算符、流程控制(if/for/while)、数组
面向对象(OOP):类与对象、封装/继承/多态、抽象类/接口
常用类库:String/StringBuilder、集合框架(List/Set/Map)、异常处理
工具:熟练使用IDEA开发工具,完成学生管理系统等小项目
资源:
书籍:《Java核心技术卷I》
视频:慕课网《Java零基础入门》5
二、语言进阶与高级特性(1个月)
目标:深入理解底层机制,提升代码质量
核心深化:集合源码分析、IO流操作(文件读写/序列化)、多线程(线程创建/同步/Lock锁)
网络编程:Socket通信、TCP/UDP协议
新特性:Lambda表达式、Stream API、函数式接口(Java 8+)
实战:实现单机应用程序(如简易聊天室)
重点:通过调试理解集合扩容、线程状态转换等机制16
三、数据库与Web开发衔接(1-2个月)
目标:掌握数据持久化与基础Web交互
数据库:
MySQL基础:CRUD操作、事务、索引优化
JDBC:连接池原理(如Druid)、SQL防注入
前端基础:HTML/CSS/JavaScript、Ajax异步通信
JavaWeb核心:
Servlet生命周期、JSP动态页面
Filter过滤器和Listener监听器
MVC分层架构实现
项目:开发图书管理系统或简易电商后台311
以下是系统化的Java基础学习路线图,(时间更短)
结合主流技术栈及企业需求整理,共分四个阶段,配有学习要点和资源推荐:
一、Java语法与编程基础(1-2个月)
目标:建立编程思维,掌握核心语法
基础语法:变量/数据类型、运算符、流程控制(if/for/while)、数组
面向对象(OOP):类与对象、封装/继承/多态、抽象类/接口
常用类库:String/StringBuilder、集合框架(List/Set/Map)、异常处理
工具:熟练使用IDEA开发工具,完成学生管理系统等小项目
资源:
书籍:《Java核心技术卷I》
视频:慕课网《Java零基础入门》
二、语言进阶与高级特性(1个月)
目标:深入理解底层机制,提升代码质量
核心深化:集合源码分析、IO流操作(文件读写/序列化)、多线程(线程创建/同步/Lock锁)
网络编程:Socket通信、TCP/UDP协议
新特性:Lambda表达式、Stream API、函数式接口(Java 8+)
实战:实现单机应用程序(如简易聊天室)
重点:通过调试理解集合扩容、线程状态转换等机制
三、数据库与Web开发衔接(1-2个月)
目标:掌握数据持久化与基础Web交互
数据库:
MySQL基础:CRUD操作、事务、索引优化
JDBC:连接池原理(如Druid)、SQL防注入
前端基础:HTML/CSS/JavaScript、Ajax异步通信
JavaWeb核心:
Servlet生命周期、JSP动态页面
Filter过滤器和Listener监听器
MVC分层架构实现
项目:开发图书管理系统或简易电商后台
四、企业开发前置技能(1个月)
目标:构建工程化开发能力
项目管理:
Maven依赖管理、私服配置
Git版本控制(分支管理/协同开发)
Linux基础:常用命令、Tomcat/Nginx部署
框架初探:
Spring IOC容器与Bean管理
MyBatis基础CRUD与映射配置
关键点:掌握SSM(Spring+SpringMVC+MyBatis)整合流程14
️ 学习注意事项
代码优先:每个知识点需手敲代码验证,避免“只看不练”
项目驱动:每个阶段用小项目巩固(如学生管理系统→图书管理系统→电商后台)
避坑指南:
避免过早深入框架源码,先掌握应用层
数据库重点理解索引和事务,而非繁琐SQL语法
资源建议:
算法练习:LeetCode/牛客网刷基础题(每周5题)
文档:Java官方文档 + MySQL官方文档5
总结
提示:IT是一个要多动手的职业,一定要多练不要贪快:
JAVA的学习是一门多练习技能
高效学习Java需要科学规划路径、强化实践并善用资源,以下结合主流学习方法和实战经验,整理出分阶段执行策略:
也要多看我的博客哟。
参考资源
JAVA项目环境必知必会–【大作业及毕设项目】
下载安装程序
官方地址:https://downloads.mysql.com/archives/installer/

8万+

被折叠的 条评论
为什么被折叠?



