1. 用JAVA设计一个连接数据库的程序,打印输出数据表中的记录
package 数据库测试;
import java.sql.*;
/**
* @author qingsongwang
* @2008.11.16
*
* 说明:实现与数据库相连,取出数据库的内容显示
*/
public class JDBCTest
{
//主函数main()
public static void main(String[] args) throws Exception
{
String kongge=new String(" ");
//为后面的结果集输出好看点
Class.forName("com.mysql.jdbc.Driver");
//驱动
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/greatwqs?user=root&password=greatwqs");
/*连接数据库,jdbc:mysql://localhost:3306/greatwqs 数据库为greatwqs数据库
* 端口为3306
*
* 用户名user=root
*
* 用户密码password=greatwqs
*/
Statement stmt=conn.createStatement();
//创建SQL语句,实现对数据库的操作功能
ResultSet rs=stmt.executeQuery("select * from person");
//返回查询的结果
while(rs.next())
{
System.out.print(rs.getString("id")+kongge);
System.out.print(rs.getString("name")+kongge);
System.out.print(rs.getString("gender")+kongge);
System.out.print(rs.getString("major")+kongge);
System.out.print(rs.getString("phone")+kongge);
System.out.println();
}//输出结果集的内容
rs.close();
stmt.close();
conn.close();
//关闭语句,结果集,数据库的连接.
}
}
我运行的结果如下
2. 怎么用JAVA把Mysql数据库中的表的数据输出至文本文档中
首先导入 mysql-connector-java-5.1.45-bin.jar 包
代码如下:
import java.io.*;import java.sql.*;public class App { public static void main(String[] args) { try { Class.forName("com.mysql.jdbc.Driver"); // 数据库用户 String user = "root"; // 数据库密码 String password = ""; Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db_sale", user, password); Statement stmt = conn.createStatement(); // 查询 , 从数据库 db_sale 的 product 表中查询 id, name, qty 字段 ResultSet rs = stmt.executeQuery("SELECT id, name, qty FROM product"); // 创建输出文件 result.txt File file = new File("d://result.txt"); OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream(file)); while (rs.next()) { writer.write(String.valueOf(rs.getLong(1)) + "\t"); writer.write(rs.getString(2) + "\t"); writer.write(String.valueOf(rs.getInt(3))); writer.write("\r\n"); //System.out.println(rs.getLong(1)); //System.out.println(rs.getString(2)); //System.out.println(rs.getLong(3)); } writer.flush(); writer.close(); rs.close(); stmt.close(); conn.close(); } catch (Exception e) { e.printStackTrace(); } }}
3. 怎样用Java实现将在数据库中查询到的数据显示在表格中
JTable的有一个方法是getTableModel().返回提供此 JTable 所显示数据的 TableModel.
TableModel是一个接口,实际上返回的是DefaultTableModel类,它实现了TableModel接口。这个类中有一个方法是void addRow(Object[] rowData)。它就是将一行插入到JTable中。
不过JTable的setValueAt方法应该就可以实现。
楼主可以定义个一个线程类来完成。
比如你需要插入100行数据,可以在线程的run方法中写一个循环,在循环中写两行代码,一行是setValueAt,一行是刷新JTable,然后再让线程睡眠,这样一行一行的显示的效果就可以出来了!
或者楼主可以用进度条来打发等待的时间,就像打开netbeans的那个进度条一样,这个可以用JProgressBar类。楼主可以去查看一下源代码。如果楼主还是没有头绪,我干脆就写个例子得了!
关于组件的添加或者类似设置窗口的大小,布局管理器等我就不做解释了!
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import javax.swing.table.*;
public class Test extends JFrame implements ActionListener
{
private JButton button1;
private JButton button2;
private JButton button3;
private DefaultTableModel model;
private JTable table;
private JProgressBar bar;
private JScrollPane scrollpane;
private JPanel panel;
public Test()
{
button1=new JButton("演示1");
button2=new JButton("演示2");
button3=new JButton("清空");
panel=new JPanel();
bar=new JProgressBar(0,100);
String[] colnames={"数据一","数据二"};
model=new DefaultTableModel(colnames,100);
table=new JTable(model);
scrollpane=new JScrollPane(table);
panel.setLayout(new FlowLayout());
button1.addActionListener(this);
button2.addActionListener(this);
button3.addActionListener(this);
panel.add(button1);
panel.add(button2);
panel.add(button3);
panel.add(bar);
this.setLayout(new GridLayout(2,1));
this.setSize(500,600);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.add(scrollpane);
this.add(panel);
}
public void actionPerformed(ActionEvent e)
{
String command=e.getActionCommand();
if(command.equals("演示1"))
{
ShowModel show=new ShowModel(true);
Thread thread=new Thread(show);
thread.start();
}
else if(command.equals("演示2"))
{
ShowModel show=new ShowModel(false);
Thread thread=new Thread(show);
thread.start();
}
else
{
String[] colnames={"数据一","数据二"};
model=new DefaultTableModel(colnames,100);
table.setModel(model);
}
}
private class ShowModel implements Runnable
{
private boolean type;//当type为true时,则说明是“演示1”的线程,false则相反
public ShowModel(boolean type)
{
this.type=type;
}
public void run()
{
if(type)//这个就是让线程睡眠,并且设置JTable的值
{
try{
for(int i=0;i<100;i++)
{
Test.this.table.setValueAt(String.valueOf(i),i,0);
Test.this.table.setValueAt(String.valueOf(i),i,1);
Thread.sleep(100);
}
}catch(Exception e)
{
e.printStackTrace();
}
}
else//这个就是进度条的演示
{
try{
Test.this.table.setVisible(false);
for(int i=0;i<100;i++)
{
Test.this.table.setValueAt(String.valueOf(i),i,0);
Test.this.table.setValueAt(String.valueOf(i),i,1);
Test.this.bar.setValue(i+1);
Test.this.bar.setString(String.valueOf(i+1)+"%");
Thread.sleep(40);
if(i==99)
{
Test.this.table.setVisible(true);
JOptionPane.showMessageDialog(Test.this,"OK");
Test.this.bar.setValue(0);
}
}
}catch(Exception e)
{
e.printStackTrace();
}
}
}
}
public static void main(String[] args)
{
Test test=new Test();
test.setVisible(true);
}
}
4. java如何获得一个数据库中数据表的名称??
那样做有什么意义吗?
java对数据库的操作一般都是通过sql语句或者是存储过程调用的,至于用到什么表也是写程序的人指定的。你具体要做什么呢?描述清楚了大家想办法。
5. 如何利用java输出一个数据库表的内容?
主要的几个点:1、确定表有多少行。2、按表的行数画表格。
给你个示列
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Font;
import java.beans.Statement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Vector;
6. 如何把数据库的一个表的内容,显示到java程序上,这个java程序上有一个按钮,点击按钮显示数据库表的内容
这个按钮添加一个ActionListen 监听接口事件,实现 actionPerformed方法,在该方法中实现表的查询:select * from 你的表名; 把你查询出来的数据显示出来就可以了
7. 怎么用java把数据库的表信息导出到电脑上的指定位置
导到指定位置 导成什么格式的?位置是自己选 还是写死
8. 怎样用java代码动态生成数据库表
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn=DriverManager.getConnection("数据库url","帐号","密码");
state=conn.createStatement();
state.executeUpdate("create 建表语句");
state.executeUpdate("insert 插入数据")------>插入的值由页面获得,注意字符串拼接。
然后就是关闭连接,state.close();conn.close();
核心代码就是这些,具体应用你可以多写几个方法(增删改查),都是类似的,注意异常的处理,关闭连接最好在finally中进行。