JDBC直连不就是那个固定的代码吗,还配置什么?

解决方案 »

  1.   

    首先是连接数据库的公用类,test为你的数据源:
    public class dbconn {
      private Connection con;
      public dbconn() {
        try {
          Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        }
        catch (ClassNotFoundException ce) {
          System.out.println("ce");
        }    try {
          con = DriverManager.getConnection("jdbc:odbc:test");
        }
        catch (SQLException s) {
          System.out.println("exception:" + s.getMessage());
        }
      }
    public Connection getConnection(){
      return con;
    }}一个简单的javabean
    public class EmpModel {
      private String empno;
      private String ename;
      private String position;
      private String res;
      public EmpModel() {
      }  public String getEmpno() {
        return empno;
      }  public String getEname() {
        return ename;
      }  public String getPosition() {
        return position;
      }  public String getRes() {
        return res;
      }
      public void setEmpno(String empno) {
        this.empno = empno;
      }  public void setEname(String ename) {
        this.ename = ename;
      }  public void setPosition(String position) {
        this.position = position;
      }  public void setRes(String res) {
        this.res = res;
      }
    }数据库的增删改
    public class EmpHandler {
      DbConn conn=new DbConn();
      ResultSet rs;
      public static ArrayList emp=new ArrayList();
      public static HashMap empname=new HashMap();
      public static LinkedList name=new LinkedList();
      public EmpHandler() {
      }
      //拿出所有employee表的数据;
      public void getAllEmp(){
        String spl = "select * from employee";
        try {
          rs = conn.s.executeQuery(spl);      while(rs.next()){
            EmpModel e=new EmpModel();
            e.setEmpno(rs.getString("empno"));
            e.setEname(rs.getString("ename"));
            e.setPosition(rs.getString("position"));
            e.setRes(rs.getString("res"));
            emp.add(e);
            empname.put(e.getEmpno(),e.getEname());
            name.add(e.getEname());
          }
          rs.close();
          conn.s.close();
        }
        catch (SQLException ex) {    }
      }
      //添加员工
      public boolean addEmp(EmpModel e){
        String spl="insert into employee (empno,ename,position,res) values ("+
            e.getEmpno()+",'"+e.getEname()+"','"+e.getPosition()+"','"+e.getRes()+"')";
        try {
          conn.s.executeUpdate(spl);
          getAllEmp();
          conn.s.close();
          return true;
        }
        catch (SQLException ex) {
          return false;
        }
      }
      //通过员工名找ID
      public String[] conNameToId(String n){
        String id = "";
        int num = 0;
        String[] tmp=new String[2];
        for (int i = 0; i < emp.size(); i++) {
          EmpModel e = (EmpModel) emp.get(i);
          if (e.getEname().equals(n)) {
            id = e.getEmpno();
            num++;
          }
        }
        tmp[0]=id;
        tmp[1]=String.valueOf(num);
        return tmp;
      }
      //通过ID找员工信息
      public EmpModel conIdToemp(EmpModel tmp) {
        int i=0;
        for(int j=0;j<emp.size();j++){
          EmpModel e=(EmpModel)emp.get(j);
          if(e.getEmpno().equals(tmp.getEmpno())){
            tmp.setEname(e.getEname());
            tmp.setPosition(e.getPosition());
            tmp.setRes(e.getRes());
            i++;
          }
        }
        if(i!=1){
          tmp.setEmpno("");
        }
        return tmp;
      }
      //修改员工信息
      public boolean upEmp(EmpModel tmp){
        boolean i = false;
        String spl = "update employee set ename='" + tmp.getEname() +
            "', position='" + tmp.getPosition() + "',res='" + tmp.getRes() +
            "' where empno=" + tmp.getEmpno() + "";
        try {
          conn.s.executeUpdate(spl);
          getAllEmp();
          conn.s.close();
          i = true;
          return i;
        }
        catch (SQLException ex) {
          return i;
        }
      }
      //删除员工信息
      public boolean delEmp(String tmp){
        String spl="delete from employee where empno=" + tmp + "";
        try {
          conn.s.executeUpdate(spl);
          getAllEmp();
          conn.s.close();
          return true;
        }
        catch (SQLException ex) {
          return false;
        }
      }
    }
      

  2.   

    J2EE群:814047 有很多视频资料
    加入的前提是你别太沉默了,别下完资料就跑了 
    欢迎大家加入 
    希望版主别删,我只是希望有一个非常棒的交流环境~
      

  3.   

    上面那个复杂了点;
    首先是连接数据库的公用类,MyDatabase为你的数据源:
    public class Dbconn {
        public Dbconn() {
        }    public Connection getConn() {
            Connection conn = null;
            try {
                //加载Jdbc-Odbc桥驱动
                Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
                conn =DriverManager.getConnection("Jdbc:Odbc:MyDatabase");
                //System.out.println("数据库连接成功!");
            } catch (ClassNotFoundException cl) {
                System.out.println("驱动程序未找到!");
            } catch (SQLException se) {
                System.out.println("数据库操作出错!");
                se.printStackTrace();
            }
            return conn;
        }
       /* public static void main(String [] args){
               Dbconn con=new Dbconn();
               con.getConn();        }*/}一个javabean:
    public class Empmodel {
        private int empno;
        private String ename;
        private String position;
        private String res;
        public Empmodel() {
        }    public void setEmpno(int empno) {
            this.empno = empno;
        }    public void setEname(String ename) {
            this.ename = ename;
        }    public void setPosition(String position) {
            this.position = position;
        }    public void setRes(String res) {
            this.res = res;
        }    public int getEmpno() {
            return empno;
        }    public String getEname() {
            return ename;
        }    public String getPosition() {
            return position;
        }    public String getRes() {
            return res;
        }
    }数据库的增删改
    public class Emphandle {
       Dbconn db;
       Connection cc;
       Empmodel em;
       public boolean eminsert(Empmodel em){
           db=new Dbconn();
           cc=db.getConn();
           //em=new Empmodel();
           try{
               Statement stmt=cc.createStatement();
               PreparedStatement pstmt=cc.prepareStatement("insert into employee (empno,ename,position,res) values (?,?,?,?)");
               pstmt.setInt(1,em.getEmpno());
               pstmt.setString(2,em.getEname());
               pstmt.setString(3,em.getPosition());
               pstmt.setString(4,em.getRes());
               pstmt.execute();
               cc.commit();
               cc.close();
           }catch(SQLException e){
               System.out.println("exception:"+e.getMessage());
               return false;
           }
           return true;
       }
       public Empmodel search(int n){
           try{
               db=new Dbconn();
               cc=db.getConn();
               em=new Empmodel();
               Statement stmt = cc.createStatement();
               ResultSet rs=stmt.executeQuery("select * from employee where empno="+n+"");
               while(rs.next()){
                   //em.setEmpno(rs.getInt(1));
                   em.setEname(rs.getString(2));
                   em.setPosition(rs.getString(3));
                   em.setRes(rs.getString(4));
               }
               cc.commit();
               rs.close();
               stmt.close();
              //
               cc.close();
           }catch(SQLException e){
                System.out.println("exception:"+e.getMessage());
           }
           return em;
       }
       public boolean Emmodify(Empmodel ee){
           try{
             db=new Dbconn();
             cc=db.getConn();
             PreparedStatement pstmt=cc.prepareStatement("update employee set ename=?,position=?,res=? where empno=?");
             pstmt.setString(1,ee.getEname());
             pstmt.setString(2,ee.getPosition());
             pstmt.setString(3,ee.getRes());
             pstmt.setInt(4,ee.getEmpno());
             pstmt.execute();
             pstmt.close();
             cc.close();
         } catch (SQLException e) {
             System.out.println("exception:" + e.getMessage());
             return false;
         }
         return true;
         }
                 public boolean Empdel(String s) {
             try {
                 db = new Dbconn();
                 cc = db.getConn();
                 PreparedStatement pstmt = cc.prepareStatement(
                         "delete from employee where empno='" + s + "'");
                 pstmt.execute();
                 pstmt.close();
                 cc.close();         } catch (SQLException e) {
                 System.out.println("删除信息时出错了!");
                 e.printStackTrace();
                 return false;
             }
             return true;     }}
      

  4.   

    J2EE群:814047 有很多视频资料
    加入的前提是你别太沉默了,别下完资料就跑了 
    欢迎大家加入 
    希望版主别删,我只是希望有一个非常棒的交流环境~