mysql数据库连接实例_mysql 连接数据库实例java代码

mysql链接数据库的实例代码

0818b9ca8b590ca3270a3433284dd417.png

------------------------------

(注意:字体为红色部分:是连接mysql数据库的关键代码)

(部分代码仅供参考:如果需要全部代码,去我博客下载)

import javax.swing.*;

import java.awt.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.Statement;

import java.util.Vector;

public class JDBCmysql extends JFrame implements ActionListener{

/**

* @param args

*/

JPanel mb1, mb3;

// 面板一:查询

JLabel xuehao;

JTextField xh;

JButton search;

// 面板二:表格

JTable bg;

JScrollPane gdt;

// 面板三:添加,修改,删除

JButton add;

JButton change;

JButton del;

// 为JTble 中添加表头和内容

@SuppressWarnings("rawtypes")

Vector ziduan, jilu;

// 数据库操作变量

Connection con;

Statement stmt;

ResultSet rs;

@SuppressWarnings({ "unchecked", "rawtypes" })

public JDBCmysql() {

// 在构造方法中将期间添加到面板中

mb1 = new JPanel();

xuehao = new JLabel("清输入姓名:");

xh = new JTextField(10);

search = new JButton("查询");

search.addActionListener(this);

mb1.add(xuehao);

mb1.add(xh);

mb1.add(search);

// 面板二

ziduan = new Vector();

jilu = new Vector();

ziduan.add("学号");

ziduan.add("姓名");

ziduan.add("性别");

ziduan.add("年龄");

ziduan.add("籍贯");

ziduan.add("专业");

// 面板三

mb3 = new JPanel();

add = new JButton("添加");

add.addActionListener(this);

change = new JButton("修改");

change.addActionListener(this);

del = new JButton("删除");

del.addActionListener(this);

mb3.add(add);

mb3.add(change);

mb3.add(del);

// 连接数据库,从数据库中获取数据到(集合类)jilu中

try

{

Class.forName("com.mysql.jdbc.Driver").newInstance();

//database1为数据库名,xs为表名。。3306为端口号  root为账户名,zkpk为mysql的密码

con = DriverManager.getConnection("jdbc:mysql://localhost:3306/database1","root","zkpk");

stmt = con.createStatement();

//将查询的所有结果显示出来

rs = stmt.executeQuery("select * from xs");

while (rs.next()) {

// 将得到的东西添加到(Vector) hang中

Vector hang = new Vector();

hang.add(rs.getString(1));

hang.add(rs.getString(2));

hang.add(rs.getString(3));

hang.add(rs.getInt(4));

hang.add(rs.getString(5));

hang.add(rs.getString(6));

jilu.add(hang);

}

} catch (Exception e1) {

System.out.println("连接数据出现错误");

}

finally

{

try {

if (con != null) {

con.close();

}

if (stmt != null) {

stmt.close();

}

if (rs != null) {

rs.close();

}

} catch (Exception e2) {e2.printStackTrace();}

}

//           设计使用 JTable 的应用程序时,务必要注意用来表示表数据的数据结构

//  。DefaultTableModel 是一个模型实现,它使用一个 Vector

//  来存储所有单元格的值,该 Vector 由包含多个 Object 的 Vector 组成。

bg = new JTable(jilu,ziduan);

gdt = new JScrollPane(bg);

this.setLayout(new BorderLayout());

this.add(mb1,"North");

this.add(gdt,"Center");

this.add(mb3,"South");

this.setTitle("学生管理系统");

this.setSize(800,500);

this.setLocation(400,300);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

}

public static void main(String[] args) {

// TODO Auto-generated method stub

//测试程序的运行时间(想看一下程序连接数据的运行时间)

long start ,end;

start =  System.nanoTime();

JDBCmysql student = new JDBCmysql();

end = System.nanoTime();

System.out.println("该程序共执行了" + (end - start) + "纳秒");

}

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

//--------------查询学生----------------------

if(e.getSource().equals(search))

{

String xingming2;

String xingming = xh.getText().trim();

xingming2 =  "select * from xs where xingming = '"+xingming+"'";

xsxx xsxx1 = new xsxx(xingming2);

bg.setModel(xsxx1);

if(xingming.equals(""))

{

xsxx xsxx2 = new xsxx();

bg.setModel(xsxx2);

}

}

//------------------学生添加-----------------------------

if(e.getSource().equals(add))

{

tianjia tj = new tianjia(this,"添加学生信息",true);

xsxx xs = new xsxx();

bg.setModel(xs);

}

//------------------------修改学生----------------------

if(e.getSource().equals(change))

{

xsxx xs1 = new xsxx();

int hang = bg.getSelectedRow();

if(hang == -1)

{

JOptionPane.showMessageDialog(this,"请选中要修改的行");

return;

}

xgxx xg = new xgxx(this,"修改学生信息",true,xs1,hang);

xsxx xs2 = new xsxx();

bg.setModel(xs2);

}

//------------------删除学生--------------------

if(e.getSource().equals(del))

{

xsxx xsxx2 = new xsxx();

int hang=this.bg.getSelectedRow();

if(hang == -1)

{

JOptionPane.showMessageDialog(this,"请选中要删除的行");

return;

}

String st=(String)xsxx2.getValueAt(hang,0);

PreparedStatement ps=null;

Connection ct=null;

ResultSet rs=null;

try {

Class.forName("com.mysql.jdbc.Driver").newInstance();

ct=DriverManager.getConnection("jdbc:mysql://localhost:3306/database1","root","zkpk");

ps=ct.prepareStatement("delete from xs where xuehao =?");

ps.setString(1,st);

ps.executeUpdate();

} catch (Exception e2){System.out.println("删除出错");}

finally

{

try {

if(rs!=null)

{

rs.close();

}

if(ps!=null)

{

ps.close();

}

if(ct!=null)

{

ct.close();

}

} catch (Exception e3){System.out.println("修改失败");}

}

xsxx2=new xsxx();

bg.setModel(xsxx2);

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值