一、项目介绍
本项目中使用到的工具:
JDK、IDEA、MySQL、JavaWeb、Sping/SpringMVC/MyBatis、maven、Spring Boot...
二、MySQL的使用
1、工具
数据库
主流MySQL版本为5.x和8.x(本项目使用5.5版本)。 这里提供一种简便的数据库使用方式(所有资料在文末放置在网盘连接里):
免安装版,解压即可使用(前提:电脑中没有之前的MySQL残留)。注意路径
运行主程序
启动MySQL
MySQL客户端工具
连接MySQL服务器
2、MySQL操作
学生信息表
课程信息表
成绩信息表
数据库基础语法
添加数据
insert into 表名(列1,列2,...) values(值1,值2,...)
修改数据
update 表名 set 列1=值1,列2=值2,...where 条件
删除数据
delete from 表名 where 条件
查询数据
select * from 表名 where 分组前条件
group by 分组依据
having 分组后筛选
order by 排序
limit 限定行数
3、小结
增删改,修改了表数据,结果是受影响的行数,对应了java中int
查询,没有修改表数据,结果是一张临时表,对用了java中的ResultSet
三、JDBC,使用java控制MySQL得到结果
1、添加MySQL驱动
在项目目录下新建lib文件夹
点击file->Project Structure->Modules
选中刚创建的lib目录,用来存放项目需要用到的jar包
之后用到的时候将jar包放入bin目录即可
2、测试与数据库的连通性
添加
public class Add {
public static void main(String[] args) throws Exception{
// 加载jdbc驱动
Class.forName("com.mysql.jdbc.Driver");
// 建立数据库连接
Connection conn= DriverManager.getConnection("jdbc:mysql://localhost:3306/school","root","root");
// 编写sql语句
String sql="insert into course(cno,name,type,contents,point) values('k72','SSM','java类','框架',9)";
// 预执行
PreparedStatement ps=conn.prepareStatement(sql);
// 执行sql语句
int flag=ps.executeUpdate(); //增删改都用executeUpdate()
//关闭连接
ps.close();
conn.close();
//观察结果
System.out.println(flag);
}
}
修改
public class Upd {
public static void main(String[] args) throws Exception{
Class.forName("com.mysql.jdbc.Driver");
Connection conn= DriverManager.getConnection("jdbc:mysql://localhost:3306/school","root","root");
String sql="update course set name='SSM+分布式' where id=8";
PreparedStatement ps=conn.prepareStatement(sql);
int flag=ps.executeUpdate();
ps.close();
conn.close();
System.out.println(flag);
}
}
删除
public class Del {
public static void main(String[] args) throws Exception{
Class.forName("com.mysql.jdbc.Driver");
Connection conn= DriverManager.getConnection("jdbc:mysql://localhost:3306/school","root","root");
String sql="delete from course where id=10";
PreparedStatement ps=conn.prepareStatement(sql);
int flag=ps.executeUpdate();
ps.close();
conn.close();
System.out.println(flag);
}
}
查询(带参数)
public class Sel {
public static void main(String[] args) throws Exception{
Class.forName("com.mysql.jdbc.Driver");
Connection conn= DriverManager.getConnection("jdbc:mysql://localhost:3306/school","root","root");
//问号占位符,可以传递参数
String sql="select * from course where point=? and type=?";
PreparedStatement ps=conn.prepareStatement(sql);
//设定参数内容,可以有多个问号,索引从1开始
ps.setInt(1,6);//设定第一个问号为int类型,值为6
ps.setString(2,"java类");//设定第一个问号为String类型,值为“java类”
//得到结果集
ResultSet rs=ps.executeQuery();
//遍历结果集
while(rs.next()){//只要有下一行,就循环遍历
//一次遍历一行
//编号,int
System.out.print(rs.getInt("id")+"\t");
//名称
System.out.print(rs.getString("name")+"\t");
//学分
System.out.print(rs.getInt("point")+"\n");
}
rs.close();
ps.close();
conn.close();
}
}
写在最后: 算是新开的一个专题,这几天应该会一直更新,算是对自己技术的一个总结和强化,也算是记录一下大学除毕设之外的完整的项目。(我也不知道我的黑色背景的图片怎么到了这里变的有点虚化了,到时候看发布完成之后会不会有好转,还有我在项目最后使用的其实是project中的一个module,因为总创建project占内存,打开也慢。好啦,大家加油!)
网盘链接:链接: pan.baidu.com/s/1ONk89ArB… 提取码: hm5r