数据库大作业——学生选课系统设计(基于SpringBoot+MySQL)

一、需求分析1、项目背景由于选课时间集中, 在同一时间进入系统抢占有限的资源, 导致系统服务响应速度明显下降, 严重时甚至会造成服务器崩溃。这种问题在目前实行学分制的国内高校中普遍存在。当系统软件不具备高并发性时,就无法顺畅承接超大流量,当请求过多,系统就会直接崩溃。2、项目目标本小组致力于针对原有


什么是接口幂等性及其实现

一、定义幂等(idempotent、idempotence)是一个数学与计算机学概念,常见于抽象代数中。在编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函数,或幂等方法,是指可以使用相同参数重复执行,并能获得相同结果的函数。这些函数不会影响系统状态,也不用担心重复执


全局唯一ID(自增ID、UUID、雪花算法)

一、介绍系统唯一id是我们在设计阶段常常遇到的问题。在复杂的分布式系统中,几乎都需要对大量的数据和消息进行唯一标识。在设计初期,我们需要考虑日后数据量的级别,如果可能会对数据进行分库分表,那么就需要有一个全局唯一id来标识一条数据或记录。生成唯一id的策略有多种,但是每种策略都有它的适用场景、优点以


CTF-web题之SQL注入

CTF-web题之SQL注入这两天闲着没事报名了信安和网安组织的网络安全大赛,靠着仅有的一点web知识做了几道web题,现在记录一下解题思路首先题面如下首先通过语句判断有多少个字段:1' or 1=1 order by 4 #1' or 1=1 order by 3 #order by是按by后面的


Java-DBUtils操作数据库

Java-DBUtils操作数据库封装了JDBC,简化了其操作数据库的步骤一、执行sql语句QueryRunner类update(String sql, Object… params) ,执行insert update delete操作query(String sql, ResultSetHandl


数据库连接池——Druid

一、好处更方便地获取连接对象,效率高资源可以更好的重复利用便于进行必要的管理二、数据库连接池技术DBCP速度快、不稳定C3P0稳定,速度慢Druid兼具两者的优点三、DataSourceDataSource通常被称为数据源,它包含连接池和连接池管理两个部分习惯上也把DataSource成为连接池四、


使用配置文件获取数据库连接

一、好处实现了数据和代码的分离,解耦编写的java程序部署到服务器上时,需要打包,如果java代码修改过,就需要重新打包;而使用配置文件则不需要修改代码,所以不用重新打包。二、实现方式在src目录下新建一个.properties文件获取资源文件的输入流。获取配置文件中的信息连接数据库static {


PreparedStatement对象

Java-PreparedStatement对象与Statement对象的区别引入PreparedStatement对象是因为使用Statement对象容易被SQL注入,而PreparedStatement对象采用了预编译的方法,会对传入的参数进行强制类型检查和安全检查,进而避免了SQL注入的产生,


Java-JDBC操作事务

Java-JDBC操作事务1、开启事务(关闭自动提交则默认开启事务)conn.setAutoCommit(false);2、一组业务执行完毕,提交事务conn.commit();3、可以在catch语句中显示的定义回滚语句,但默认失败就会回滚conn.rollback();示例:package co


SQL注入

1、什么是SQL注入SQL 注入(SQL Injection)是发生在 Web 程序中数据库层的安全漏洞,是网站存在最多也是最简单的漏洞。攻击者在 事先定义好的 SQL 语句中添加额外的 SQL 语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步获取