jdbc (java和sql的连接)
2006-07-18 20:42
507 查看
一个从数据库读取数据到界面的例子,简单饿学生信息管理系统,过两天我改下,使它可以录入数据(等)
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.event.*;
import java.sql.*;
import com.microsoft.jdbc.sqlserver.SQLServerDriver;
public class stuInfoRecoder extends JFrame implements ActionListener
{
private String name[];
private int sext[];
private int age[];
private int btncount;
private String se;
String sex[]={"男","女"};
JLabel lblname=new JLabel("姓名:");
JTextField txt1=new JTextField(5);
JLabel lblsex=new JLabel("性别:");
JComboBox txt2=new JComboBox(sex);
JLabel lblage=new JLabel("年龄:");
JTextField txt3=new JTextField(5);
JButton btn=new JButton("计算");
JTextArea txt4=new JTextArea(8,18);
JLabel lbl=new JLabel();
JPanel pane1=new JPanel();
JPanel pane2=new JPanel();
JPanel pane3=new JPanel();
stuInfoRecoder ()
{
btn.addActionListener(this);
btncount=0;
this.setTitle("学生信息系统");
Container c=getContentPane();
pane1.add(lblname);
pane1.add(txt1);
pane1.add(lblsex);
pane1.add(txt2);
pane1.add(lblage);
pane1.add(txt3);
pane1.add(btn);
pane2.add(txt4);
pane3.add(lbl);
c.add(pane1,BorderLayout.NORTH);
c.add(pane2,BorderLayout.CENTER);
c.add(pane3,BorderLayout.SOUTH);
}
public void getConnection()
{
String driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=info";
int arry=0;
try
{
Class.forName(driver);
Connection cn = DriverManager.getConnection(url,"sa", "miss");
Statement stmt = cn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT count(*) AS arraylen FROM sturnfo");
if(rs.next())
{
arry=rs.getInt("arraylen");
}
if(arry!=0)
{
name=new String[arry];
sext=new int[arry];
age=new int[arry];
int i=0;
rs = stmt.executeQuery("SELECT * FROM sturnfo");
while(rs.next())
{
name[i]=rs.getString("username");
sext[i]= rs.getInt("sex");
age[i]= rs.getInt("age");
i++;
}
}
else
{
name=new String[0];
sext=new int[0];
age=new int[0];
}
rs.close();
stmt.close();
cn.close();
}
catch(Exception exce)
{
System.out.println(exce.toString());
}
}
public static void main(String args[])
{
stuInfoRecoder bo=new stuInfoRecoder ();
bo.setSize(400,250);
bo.getConnection();
bo.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==btn)
{
if(name.length==0)
{
return;
}
if(btncount<name.length)
{
txt1.setText(name[btncount]); //填写用户名;
if(sext[btncount]==1) //填写性别;
{
txt2.setSelectedIndex(0);
se="男";
}
else
{
txt2.setSelectedIndex(1);
se="女";
}
txt3.setText(Integer.toString(age[btncount]));
display();
btncount++;
}
}
}
public void display()
{
if(txt1.getText().length()<0)
{
lbl.setText("姓名不能为空");
}
txt4.setText("姓名:"+txt1.getText()+"性别:"+se+" 年龄:"+txt3.getText());
}
}
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.event.*;
import java.sql.*;
import com.microsoft.jdbc.sqlserver.SQLServerDriver;
public class stuInfoRecoder extends JFrame implements ActionListener
{
private String name[];
private int sext[];
private int age[];
private int btncount;
private String se;
String sex[]={"男","女"};
JLabel lblname=new JLabel("姓名:");
JTextField txt1=new JTextField(5);
JLabel lblsex=new JLabel("性别:");
JComboBox txt2=new JComboBox(sex);
JLabel lblage=new JLabel("年龄:");
JTextField txt3=new JTextField(5);
JButton btn=new JButton("计算");
JTextArea txt4=new JTextArea(8,18);
JLabel lbl=new JLabel();
JPanel pane1=new JPanel();
JPanel pane2=new JPanel();
JPanel pane3=new JPanel();
stuInfoRecoder ()
{
btn.addActionListener(this);
btncount=0;
this.setTitle("学生信息系统");
Container c=getContentPane();
pane1.add(lblname);
pane1.add(txt1);
pane1.add(lblsex);
pane1.add(txt2);
pane1.add(lblage);
pane1.add(txt3);
pane1.add(btn);
pane2.add(txt4);
pane3.add(lbl);
c.add(pane1,BorderLayout.NORTH);
c.add(pane2,BorderLayout.CENTER);
c.add(pane3,BorderLayout.SOUTH);
}
public void getConnection()
{
String driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=info";
int arry=0;
try
{
Class.forName(driver);
Connection cn = DriverManager.getConnection(url,"sa", "miss");
Statement stmt = cn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT count(*) AS arraylen FROM sturnfo");
if(rs.next())
{
arry=rs.getInt("arraylen");
}
if(arry!=0)
{
name=new String[arry];
sext=new int[arry];
age=new int[arry];
int i=0;
rs = stmt.executeQuery("SELECT * FROM sturnfo");
while(rs.next())
{
name[i]=rs.getString("username");
sext[i]= rs.getInt("sex");
age[i]= rs.getInt("age");
i++;
}
}
else
{
name=new String[0];
sext=new int[0];
age=new int[0];
}
rs.close();
stmt.close();
cn.close();
}
catch(Exception exce)
{
System.out.println(exce.toString());
}
}
public static void main(String args[])
{
stuInfoRecoder bo=new stuInfoRecoder ();
bo.setSize(400,250);
bo.getConnection();
bo.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==btn)
{
if(name.length==0)
{
return;
}
if(btncount<name.length)
{
txt1.setText(name[btncount]); //填写用户名;
if(sext[btncount]==1) //填写性别;
{
txt2.setSelectedIndex(0);
se="男";
}
else
{
txt2.setSelectedIndex(1);
se="女";
}
txt3.setText(Integer.toString(age[btncount]));
display();
btncount++;
}
}
}
public void display()
{
if(txt1.getText().length()<0)
{
lbl.setText("姓名不能为空");
}
txt4.setText("姓名:"+txt1.getText()+"性别:"+se+" 年龄:"+txt3.getText());
}
}
相关文章推荐
- Hibernate3.2与Sql连接时出现的--java.lang.AbstractMethodError: com.microsoft.jdbc.base.BaseDatabaseMetaData.supportsGetGeneratedKeys()Z
- java里连接sqlserver对象名无效的解决方法 java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]对象名 无效
- 【J2EE】Java连接SQL Server 2000问题:“com.microsoft.sqlserver.jdbc.SQLServerException:用户'sa'登录失败。该用户与可信SQL Server连接无关联”
- 对于 java 连接sql server 2005的警告: Failed to load the sqljdbc_auth.dll
- Java JDBC sqlserver连接(增删改)方法二
- com.microsoft.sqlserver.jdbc.SQLServerException: 到主机 的 TCP/IP 连接失败。 java.net.ConnectException: Conn
- 使用jdbc连接mysql 出现 java.sql.Exception: this specifer does...(root@'%')..doesn't exist.
- om.microsoft.sqlserver.jdbc.SQLServerException: 到主机的TCP/IP 连接失败。java.net.ConnectException: Connectio
- jdbc连接sql server 出现 java.sql.SQLException: Network error IOException: Connection refused:
- 关于java基础--SQL驱动及JDBC连接
- com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“java
- 关于在java中连接MS SQL Server 2005 JDBC的问题及解决办法
- 终于做好了JDBC在java和sql 2005之间的连接了 ,快哭了
- java 连接SQLServer No suitable driver found for jdbc
- Java连接SQL2005及SQL Server JDBC Driver 2.0中sqljdbc.jar和sqljdbc4.jar的区别
- java JDBC 连接数据库查询数据与直接使用sql的疑问
- JDBC Java SQL Server 连接
- Java连接SQL Server2005 “Failed to load the sqljdbc_auth.dll” 问题解决
- java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver+数据库连接的工具类
- com.microsoft.sqlserver.jdbc.SQLServerException: 到主机 的 TCP/IP 连接失败。 java.net.ConnectException: Connection refused: connect