步骤

  1. 创建JSP项目
  2. 创建数据库
  3. 导入MySQL的jar包文件
  4. 使用Java连接数据库执行增删改查

创建JSP项目

使用Eclipse创建一个jsp项目

创建数据库

我使用的是Navicat Premium 15来对数据库进行操作

1.点击连接,选择MySQL,连接所需要的数据库

2.只需要填写主机名、端口号、用户名以及密码就可以了,点击连接,便可以连接到数据库信息(前提是你的电脑上必须已经安装了MySQL数据库

3.右击❶处,选择创建数据库,根据你的选择,起一个数据库的名字,设置数据库的字符集


4.双击你新建的数据库,在表中新建表,设置需要的字段以及表名,保存即可

导入MySQL的jar包文件


MySQL的jar包有两种,一个是5.1.4的版本,另一个是8.0.29的版本,这次我使用jar包5.1.4的版本,因为新版本已经更新了连接语句,之后有机会再补充。

把jar包直接拖动到该目录下就可以使用

拖进去后,直接点击OK就可以了

使用Java连接数据库执行增删改查

新建一个jsp文件,先将sql的Java包导入文件中

<%@ page import="java.sql.*" %>

Class.forName("com.mysql.jdbc.Driver");  
String url = "jdbc:mysql://localhost:3306/test";
String name="root";
String password = "123456";
Connection conn = DriverManager.getConnection(url,name,password);

首先使用Class.forName(“com.mysql.jdbc.Driver”)去加载MySQL的驱动,再使用DriverManager.getConnection()去创建数据库连接语句,并返回一个Connection类型的对象

DriverManager.getConnection()的内容需要地址、用户名、以及密码。用户名和密码是数据库连接时使用的用户名和密码,地址则是jdbc:mysql://localhost:3306/数据库名,MySQL这个地址是固定的,数据库名是你想连接的数据库名字

Statement stmt = conn.createStatement();
这条语句用来创建一个用来处理sql语句的对象,之后就可以进行增删改查了

查询

String sql="select * from student"; 

ResultSet rs = stmt.executeQuery(sql);  

while(rs.next()){ 
	out.println(rs.getString("name"));  
    out.println(rs.getString("age"));  
}

创建一个查询语句,student是我数据库中的表名.

再使用之前创建的stmt对象,使用stmt.executeQuery(sql)查询数据表中的信息,并将返回的数据集合成一个ResultSe对象

ResultSe中会有一个next()方法,从返回的数据中,一行一行的输出信息。但是还是用通过列名获取到相应数值。即用rs(ResultSe对象)getString(“列名”)获取该行的列名值。

增加

String sname;
int sage;
String sql = "insert into student values('"+sname+"','"+sage+"')";
int count = stmt.executeQuery(sql);

sname和sage都可以根据自己以及数据库要求修改,语句可以在我这个语句上修改一下。

执行完stmt.executeQuery(sql)语句后,返回一个int类型的数值,操作正常时返回值为1.

删除

String sql = "delete from student where sname = '"+ sname +"'";

在删除数据上,其他操作与增加相同,只有在sql语句上不相同,其他一样。同样,提交完数据后,也是返回一个int类型的数值,1代表成功。

修改

String sname;
int age;
String sql = "update student set sname=?,sage=? where sname=?";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,sname);
pstmt.setInt(2,sage);
pstmt.setString(3,sname);
int count = pstmt.executeUpdate();

在修改数据库中,我采用的是占位符填充数据。这可以快速的向sql语句填充信息,一个?就是一个数据的位置。

pstmt.set类型(位置(从1开始),数据信息),要向里面填充什么类型的数据,就用set什么类型的数据函数。参数有两个,第一个是第几个占位符,第二个是要填充的数据。

**注意:**在填充完sql语句后,使用executeUpdate()语句进行更新,而不是之前使用的executeQuery()语句执行语句。

Logo

本社区面向用户介绍CSDN开发云部门内部产品使用和产品迭代功能,产品功能迭代和产品建议更透明和便捷

更多推荐