java操作mssql2000的小例子

发表于:2007-06-22来源:作者:点击数: 标签:
主要由三个文件组成.一个是主执行文件,一个是用户界面文件,一个是数据模块文件. 用户界面这一块是用的eclipse的VE插件做的, 只是还不知道如何发布这样的应用程序.唉... //主程序 package com.fcgl; public class FC { /** * @param args */ public static

   

    主要由三个文件组成.一个是主执行文件,一个是用户界面文件,一个是数据模块文件.
用户界面这一块是用的eclipse的VE插件做的,
只是还不知道如何发布这样的应用程序.唉...
 
 
//主程序
package com.fcgl;
public class FC {
 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
       Login.main(null);
      
     
 }
}

//用户界面
package com.fcgl;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Point;
import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.List;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
public class Login {
 private Shell sShell = null;  //  @jve:decl-index=0:visual-constraint="74,10"
 private Composite composite1 = null;
 private Button button1 = null;
 private Dm dm1;
 private Label label1 = null;
 private Text text1 = null;
 private Text text2 = null;
 private Text text3 = null;
 private Text textArea1 = null;
 private List list1 = null;
 private Button button2 = null;
 /**
  * This method initializes composite1 
  *
  */
 private void createComposite1() {
  composite1 = new Composite(sShell, SWT.NONE);
  composite1.setLayout(null);
  button1 = new Button(composite1, SWT.NONE);
  button1.setText("连接");
  button1.setSize(new Point(48, 22));
  button1.setLocation(new Point(176, 159));
  button1.addSelectionListener(new org.eclipse.swt.events.SelectionAdapter()
{
   public void widgetSelected(org.eclipse.swt.events.SelectionEvent e)
{
    dm1 = new Dm();
    boolean c = dm1.DconnectionOpen(text1.getText
(),text2.getText(),text3.getText());
    if (button1.getText() == "连接") {
     if (c == false) {
      label1.setText("连接失败");
     } else {
      label1.setText("连接成功");
      button1.setText("断开");
      ResultSet rs=dm1.ExeSQL(textArea1.getText
());
      try{
       list1.removeAll();
      while(rs.next()){
       for(int i=1;i<=3;i++){
             list1.add(rs.getString(i));
       }
         }
      }
      catch(Exception ee){
         ee.printStackTrace();
      }
      
     }
    } else {
     boolean d =dm1.DconnectionClose();
     if (d==false){
      label1.setText("断开失败");
     }
     else{
      label1.setText("断开成功");
      button1.setText("连接");
      }
     }
     
    
   }
  });
  label1 = new Label(composite1, SWT.NONE);
  label1.setBounds(new Rectangle(297, 163, 83, 12));
  label1.setText("");
  text1 = new Text(composite1, SWT.BORDER);
  text1.setBounds(new Rectangle(176, 16, 90, 17));
  text2 = new Text(composite1, SWT.BORDER);
  text2.setBounds(new Rectangle(176, 42, 90, 17));
  text3 = new Text(composite1, SWT.BORDER);
  text3.setBounds(new Rectangle(176, 69, 90, 17));
  textArea1 = new Text(composite1, SWT.MULTI | SWT.WRAP | SWT.V_SCROLL |
SWT.BORDER);
  textArea1.setBounds(new Rectangle(176, 91, 163, 59));
  list1 = new List(composite1, SWT.BORDER);
  list1.setBounds(new Rectangle(10, 11, 145, 169));
  button2 = new Button(composite1, SWT.NONE);
  button2.setBounds(new Rectangle(242, 160, 48, 22));
  button2.setText("字段");
  button2.addSelectionListener(new org.eclipse.swt.events.SelectionAdapter()
{
   public void widgetSelected(org.eclipse.swt.events.SelectionEvent e)
{
    list1.removeAll();
    ResultSetMetaData sm=dm1.GetField();
    try{
    for (int i=1;i<=sm.getColumnCount();i++){
     list1.add(sm.getColumnName(i));
    }
    }
    catch(Exception ee){
     ee.printStackTrace();
    }
   }
   });
   
 
 }
 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  /* Before this is run, be sure to set up the launch configuration
(Arguments->VM Arguments)
   * for the correct SWT library path in order to run with the SWT dlls.
   * The dlls are located in the SWT plugin jar. 
   * For example, on Windows the Eclipse SWT 3.1 plugin jar is:
   *       installation_directory\plugins\org.eclipse.swt.win32_3.1.0.jar
   */
 
  Display display = Display.getDefault();
  Login thisClass = new Login();
  thisClass.createSShell();
  thisClass.sShell.open();
  while (!thisClass.sShell.isDisposed()) {
   if (!display.readAndDispatch())
    display.sleep();
  }
  display.dispose();
 }
 /**
  * This method initializes sShell
  */
 private void createSShell() {
  sShell = new Shell();
  
  sShell.setText("数据库连接");
  sShell.setSize(new Point(391, 221));
  sShell.setLayout(new FillLayout());
  /*Button btn1 =new Button(composite1,SWT.None);
  btn1.setBounds(12, 12, 22, 22);
  btn1.setText("连接");*/
  createComposite1();
  
  
 }
}
 
//数据模块
package com.fcgl;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;

public class Dm {
 Connection dcon;
 Statement stmt;
    ResultSet rs = null;
    ResultSetMetaData rmd;
 public boolean DconnectionOpen(String i,String u,String p){
  final String jdbc_driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
  final String database_url =
  "jdbc:microsoft:sqlserver://"+i+":1433;DatabaseName=vllia-temp";
  final String user = u;
  final String password = p;
 try{
  Class.forName(jdbc_driver);
   dcon = DriverManager.getConnection(database_url, user,
                password);
   stmt = dcon.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
              ResultSet.CONCUR_UPDATABLE);
  
 } 
 catch (Exception e) {
  e.printStackTrace();
  return false;
  
 }
  return true;
 }
 
 public boolean DconnectionClose(){
  try {
   
   stmt.close();
   dcon.close(); 
  } catch (Exception e) {
          e.printStackTrace();
          return false;
  }
  return true;
 }
 
 public ResultSet ExeSQL(String s){
  try{
  rs=stmt.executeQuery(s);
  }
  catch(Exception e){
   e.printStackTrace();
  }
  return rs;
  
 }
 public ResultSetMetaData GetField(){
  
  try{
   rmd =rs.getMetaData();
    
     }
  catch (Exception e){
   e.printStackTrace();
  
  }
  return rmd;
  
 }
 
}

原文转自:http://www.ltesting.net