一、数据库的连接
请参考这篇文章:
eclipse配置maven+JDBC的SQL server数据库开发环境
在(4.新建Maven_JDBC数据库项目)中有数据库连接的实例代码
二、表的增删改查
数据库名:测试
表名:STU
表内的信息如下两图所示:
属性:
值:
实例代码:
package study.SQL;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Main {
public static final String URL = "jdbc:sqlserver://localhost:1433;databasename=测试";
//说明: java驱动名称(我这里用的jdbc):数据库驱动名称://主机名(或IP地址):端口号;databasename=要使用的数据库名称
public static final String USER = "sa"; //选择数据库用户
public static final String PASSWORD = "123456"; //数据库用户密码
public static void main(String[] args) throws Exception{
// 1.加载驱动程序
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
// 2. 获得数据库连接
Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
// 3.操作数据库,实现增删改查
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from STU"); // 从STU表中查询
System.out.println("查询STU表中全部内容");
while (rs.next()) {
System.out.println(rs.getString("学号") + " " + rs.getString("姓名") + " " + rs.getString("性别")); //循环输出
}
System.out.println("\n插入数据:");
stmt.executeUpdate("insert into STU values (5,NULL,0)"); //向STU表中插入数据
rs = stmt.executeQuery("select * from STU");
while (rs.next()) {
System.out.println(rs.getString("学号") + " " + rs.getString("姓名") + " " + rs.getString("性别")); //循环输出
}
System.out.println("\n更新数据:");
stmt.executeUpdate("update STU set 姓名='小壮' where 学号=5"); //向STU表中更新数据
rs = stmt.executeQuery("select * from STU");
while (rs.next()) {
System.out.println(rs.getString("学号") + " " + rs.getString("姓名") + " " + rs.getString("性别")); //循环输出
}
System.out.println("\n删除数据:");
stmt.executeUpdate("delete from STU where 学号=5"); //删除数据
rs = stmt.executeQuery("select * from STU");
while (rs.next()) {
System.out.println(rs.getString("学号") + " " + rs.getString("姓名") + " " + rs.getString("性别")); //循环输出
}
}
}
运行结果截图:
三、数据的展示
1.C/S结构
利用awt+Swing组件开发客户端,用客户端进行数据的交互与处理。
经典实例:企业进销存管理系统
链接:https://pan.baidu.com/s/1QACXhpxyutxATrDuwgUkag
提取码:zj9u
2.B/S结构
两种方式:
(1)H5+CSS+JavaScript+AJAX
这种方式可以不用Java和JDBC就实现前端与服务器数据库的动态交互。
(2)H5+CSS+JavaScript+applet+Java+jdbc
未发布前可以当做C/S结构,进行发布后就是B/S结构,可以通过浏览器进行操作。
这里只展示第二种方式applet部分的代码(数据库信息与“二、表的增删改查”相同)
package study.SQL;
import java.awt.*;
import java.applet.Applet;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Show extends Applet{
public static final String URL = "jdbc:sqlserver://localhost:1433;databasename=测试";
//说明: java驱动名称(我这里用的jdbc):数据库驱动名称://主机名(或IP地址):端口号;databasename=要使用的数据库名称
public static final String USER = "sa"; //选择数据库用户
public static final String PASSWORD = "123456"; //数据库用户密码
public void init() {
resize(400, 300);
}
public void paint (Graphics g)
{
try {
// 1.加载驱动程序
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
// 2. 获得数据库连接
Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
// 3.操作数据库,实现增删改查
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from STU"); // 从STU表中查询
g.drawString("学号", 40, 40);
g.drawString("姓名", 80, 40);
g.drawString("性别", 160, 40);
int i = 10;
while (rs.next()) {
g.drawString(rs.getString(1), 40, 60 + i);
g.drawString(rs.getString(2), 80, 60 + i);
g.drawString(rs.getString(3), 160, 60 + i);
i += 20;
}
rs.close();
stmt.close();
conn.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
结果截图:
java applet程序可以被转换成applet标签,嵌入到HTML页面中。