java数据库之JDBC
任何一个项目,都离不开数据,而对于数据的存储以及其他操作,就会用到数据库了。
在这里是主要针对MySQL数据库的操作。
1.软件
当然首先要下载MySQL,为了操作起来更加方便,这里推荐一个比较方便的辅助软件Navicat for MySQL,
看名字就知道专门为MySQL设计的。(图片尺寸太大,而且找不到缩小尺寸的选项,索性不贴图了)
1.1
首先如果MySQL创建的时候没有新建一个Connection,那么进入软件之后再创建一个新的Connection,
这里会要求输入Hostname,本地服务器的话就是127.0.0.1;
然后是端口(Port),默认是3306,可以自行更改,但是要在0~1023之外,因为这些是为系统软件预留的;
再然后就是用户名和密码了,方便记忆,一般都写root,root。
完了之后,进入这个Connection,新建一个数据库如eco,之后的操作为了方便,在Navicat for MySQL中操作。
1.2
进入Navicat for MySQL后,建立与之前Connection的连接,填入之前的hostname、port、username、
password等必要信息。
打开数据库eco,该建表的建表,该导入的导入,因为全是中文我就不一一赘述了。
建好数据库之后,就是在java中对数据库的操作了。
2.java项目建立对数据库的连接
首先我们要下载一个MySQL驱动的jar包,拖到项目下,然后右键Bulid Path;
1 public class MySQL { 2 private static final String URL = "jdbc:mysql://127.0.0.1:8090/eco?useUnicode=true&characterEncoding=utf-8&useSSL=false"; 3 private static final String USER = "root"; 4 private static final String PASSWORD = "root"; 5 private static Connection conn; 6 static Connection getconnect() { 7 try { 8 // 加载MySQL驱动程序 9 Class.forName("com.mysql.jdbc.Driver"); 10 // 获得数据库eco的连接 11 conn = DriverManager.getConnection(URL, USER, PASSWORD); 12 } catch (Exception e) { 13 e.printStackTrace(); 14 } 15 return conn; 16 }
17 }
在这里定义了一个静态方法getconnect()是为了在其他类中随时调用对指定数据库的连接,我们可
以看到在获得数据库eco连接的方法中有三个参数,下面解释一下这个URL参数的含义:
jdbc:指采用jdbc方式建立对数据库的连接;
mysql:hostname,因为是本地的,所以依旧是127.0.0.1;
eco:数据库名称;
Unicode~:规定解析方式,这里是utf-8;
useSSL:这里是对JDBC和MySQL的版本兼容性处理。
3.将表格数据逐条读到一个集合中
1 public class Do { 2 public static List userlist() { 3 List<User> list = new ArrayList<User>(); 4 //调用方法实现对数据库的连接 5 Connection conn = MySQL.getconnect(); 6 try { 7 //新建一个查询语句,从table1表格中筛选出user、password字段 8 String sql = "select user,password from table1"; 9 //执行sql,并返回数据列表 10 Statement st = conn.createStatement(); 11 ResultSet rs = st.executeQuery(sql); 12 while (rs.next()) { 13 //将筛选后的记录逐条添加到集合中, 14 User user = new User(); 15 user.setUser(rs.getString("user")); 16 user.setPassword(rs.getString("password")); 17 list.add(user); 18 } 19 rs.close(); 20 st.close(); 21 } catch (Exception e) { 22 e.printStackTrace(); 23 } 24 //此方法最终返回所有记录的集合 25 return list; 26 } 27 }
在这里,我们先建一个List集合,将表格的数据作为User对象的各属性,逐条添加到集合中
最后这个方法返回了包含所有用户信息(user、password)的集合。
这样,我们就已经将数据库中的信息,保存在一个List集合中了,之后将对这个集合操作,进而实现
对数据库的增、删、改、查。