网站建设协议附件,网站建设j介绍ppt模板,linux做ppt下载网站,那些cps网站做的比较好数据库
存储数据#xff1a;集中管理
目的#xff1a; 文件中的数据能够放在数据库中集中管理
管理方法#xff1a;一个项目一个库#xff0c;每个库中包含最小化数据的表
开发#xff1a; 节省存储空间#xff0c;节省运行空间#xff0c;采用数据库#xff0c;架…数据库
存储数据集中管理
目的 文件中的数据能够放在数据库中集中管理
管理方法一个项目一个库每个库中包含最小化数据的表
开发 节省存储空间节省运行空间采用数据库架构
Java连接数据库
Java se所有类String ArrayList来自java.lang
后面web页面应用----à导包包第三包 jar包
mysql-connector-java.jar 连接数据库的版本
java面向接口提供了数据库的相关接口每个不同的数据库厂家根据接口开发方法。Java使用数据库调用对应接口的实现。
反射
连接:Connection 连接
在Driver类中connect方法就是数据库连接方法方法返回类型Connection
Connection接口中方法就是操作数据库的相关方法
Java原生DriverManager方便程序员开发方便
DriverManager调用Connection, getConnection
调用DriverManager.getConnection(数据库地址用户名,密码 );
先把mysql-connect-java包导入到idea的库中
首先建一个包 这个package取名lib 把使用的java包拷贝在lib的package目录下 在项目名称上右键点击 open Module setting 模块设置。 在出现的对话框中左侧点击library库,然后右边点击加号添加这个jar包。
点击加号后选择java 出现的对话框选择自己项目下的jar 包文件 这里是一个询问的信息 直接点击ok即可。继续ok即可。
这时项目中的jar包就会解开。 解开后才知道java包如何导入。
使用代码连接java再规范化开发面向接口
连接java效仿mysql源码注册驱动。
DriverManager.registerDriver(new Driver());
获取Connection连接接口因为数据库的操作方法都在这里。
Connection connDriverManager.getConnection(jdbc:mysql://localhost:3306/shop,root,admin);
连接时输入mysql 数据库的连接地址。
getConnection输入数据库的连接地址本地localhost连接端口号 3306连接数据库jdbc:mysql://localhost:3306/shop用户名 root密码 admin
通过连接执行sql语句需要定义sql语句。
String sqlselect * from user;
在connection操作数据库前面有两个Statement , ResultSet Statement 是执行sql语句的线程。
//Statement进行线程语句的处理Statement stconn.createStatement();
Statement是线程语句的处理statement中可以执行语句
executeQuery执行查询返回的类型是ResultSet,这是数据库结果记录
executeUpdate执行更新增删改
统一方法execute执行增删改查返回值是布尔型不能查询后返回记录的条件除登录
如果执行查询结果返回ResultSet
//查询的方法executeQuery,结果是ResultSetResultSet rsst.executeQuery(sql);
在Resultset中看到next()方法一定用到Iterator迭代器这个迭代器可以用next();ResultSet是一个迭代器
只能使用迭代器的方法来使用。返回类型next()有没有数据库中把指针移到当前数据。
ResultSet中next方法的原理。 在ResultSet类中都要get后面跟上类型。因为java 和mysql 都是强语言类型数据必须指明类型。Java 获取字段类型一定要跟mysql里对应字段类型是一致的。
ResultSet rsst.executeQuery(sql);//因为ResultSet有next()判断数据是否有如果有一直做执行一次next()记录在restulSet中while(rs.next()){ //按照mysql的类型和java类型对应关系取数据 int idrs.getInt(id); String namers.getString(username); String sexrs.getString(sex); String positionrs.getString(position); int agers.getInt(age); String passwordrs.getString(password); System.out.println(id:name:sex:position:age:password);}
在数据方法中,Connection中有方法close()close()关闭。 这里的问题
DriverManager.registerDriver(new Driver());
注册Driver时new Driver中源码中静态块中也发生new Driver()
我们这里的代码执行两次目的是注册驱动
在源码中获取连接本身具备
Reflection.getCallerClass()
Reflection类是 反射
通过反射技术注册类
注意java 只出规范其他的应用按照规范去开发java在每一个规范中都有反射去找到相关的类。
直接使用反射技术把驱动注册。
正确连接数据库使用方法 1注册驱动反射
Class.forName(com.mysql.jdbc.Driver);
2获取连接
Connection connDriverManager.getConnection(jdbc:mysql://localhost:3306/shop,root,admin);
(3)定义sql语句
String sqlselect * from user;
(4)获取Statement
Statement stconn.createStatement();
(5)根据需要决定如果查询executeQuer如果更新executeUpdate
ResultSet rsst.executeQuery(sql);
返回结果如果是查询用ResultSet如果是增删改返回的是int
如果是ResultSet使用迭代器遍历next()方法
(6)根据mysql的数据类型与java 的数据类型的对应关系,使用对应的get方法,得出结果.
(7)最后依次关闭ResultSetStatementConnection。
rs.close();st.close();conn.close();
开发基本的单表增删改查
面向接口需要有接口文件
这里的方法增删改查
一个属性和一个值对应关系(Map,面向对象)
按照java思想理念面向对象,没有方法是逻辑关系它就是java bean)
(2) 面向对象把数据库记录中的字段封装成一个类。 Java bean在开发中就是对应的数据库的表