Java程序连接数据库(mysql,sql server)以及出现的问题解决

来源:互联网 发布:长春学历网络教育报名 编辑:程序博客网 时间:2024/06/15 16:07

这里因为主要的是演示Java程序与数据库的连接,所以表的建立就不详细说了。

Java程序连接mysql数据库
这里的表格是通过控制台创建的一个基本的:
这里写图片描述

在eclipse的工程环境下:需要导入一个jar包:
这里写图片描述

/** * 连接mysql数据库 */import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import java.util.ArrayList;import java.util.List;public class Testttttt{    public static void main(String[] args) throws ClassNotFoundException, SQLException {            //加载数据库驱动            Class.forName("com.mysql.jdbc.Driver");            //获取连接            Connection connection=    DriverManager.getConnection("jdbc:mysql://localhost:3306/c1604?user=root&password=");            //通过连接创建statement            Statement statament=connection.createStatement();            //定义sql  userinfo为要查询相应的表名            String sql="select * from userinfo";            //执行sql语句            ResultSet rs=statament.executeQuery(sql);            List<UserInfoBean> us=new ArrayList<UserInfoBean>();            while(rs.next()){                int id=rs.getInt("id");                String name=rs.getString("name");                UserInfoBean uib=new UserInfoBean(id, name);                us.add(uib);            }            for(int i=0;i<us.size();i++){                System.out.println(us.get(i));        }    }}
Bean类public class UserInfoBean {    int id;    String name;    public UserInfoBean(int id, String name) {        super();        this.id = id;        this.name = name;    }    @Override    public String toString() {        return "UserInfoBean [id=" + id + ", name=" + name + "]";    }    public int getId() {        return id;    }    public void setId(int id) {        this.id = id;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }}

打印的结果:
这里写图片描述

Java程序连接sql server数据库
sql server选用sql server身份验证,可能出现如下错误
这里写图片描述
具体解决方法如下:

这里写图片描述

这里写图片描述

这里写图片描述
这里写图片描述
这里写图片描述
登录后进入eclipse的环境,同样需要导入一个jar包:
这里写图片描述
Java实现的程序:

/** * 连接sql server数据库 */import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;import java.util.ArrayList;import java.util.List;public class Test {    public static void main(String[] args) throws ClassNotFoundException, Exception {        // 加载数据库驱动        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");        // 获取连接  factory为数据库名        String url = "jdbc:sqlserver://localhost:1433;DatabaseName=factory"; // 连接url地址        String user = "sa"; // 数据库用户名        String password = "123456"; // 密码        Connection connection = DriverManager.getConnection(url, user, password);        // 通过连接创建statement        Statement statament = connection.createStatement();        // 定义sql depart为表名        String sql = "select * from depart";        // 执行sql语句        ResultSet rs = statament.executeQuery(sql);        List<factoryBean> us = new ArrayList<factoryBean>();        while (rs.next()) {            int did = rs.getInt("did");            String dname = rs.getString("dname");            int dmaster = rs.getInt("dmaster");            int droom = rs.getInt("droom");            factoryBean uib = new factoryBean(did, dname, dmaster, droom);            us.add(uib);        }        for (int i = 0; i < us.size(); i++) {            System.out.println(us.get(i));        }    }}

数据库对应的表:
这里写图片描述

public class factoryBean {    int did;       String dname;       int dmaster;       int droom;    public int getDid() {        return did;    }    @Override    public String toString() {        return "FactoryBean [did=" + did + ", dname=" + dname + ", dmaster=" + dmaster + ", droom=" + droom + "]";    }    public factoryBean(int did, String dname, int dmaster, int droom) {        super();        this.did = did;        this.dname = dname;        this.dmaster = dmaster;        this.droom = droom;    }    public void setDid(int did) {        this.did = did;    }    public String getDname() {        return dname;    }    public void setDname(String dname) {        this.dname = dname;    }    public int getDmaster() {        return dmaster;    }    public void setDmaster(int dmaster) {        this.dmaster = dmaster;    }    public int getDroom() {        return droom;    }    public void setDroom(int droom) {        this.droom = droom;    }}

打印的结果:
这里写图片描述

0 0