当前位置: 首页 > news >正文

做旅游计划的网站免费建网站 高校社团官方网站

做旅游计划的网站,免费建网站 高校社团官方网站,佛山关键词排名工具,建站之星网站 和服务器目录 一、数据库编程的前置 二、Java的数据库编程----JDBC 1.概念 2.JDBC编程的优点 三.导入MySQL驱动包 四、JDBC编程的实战 1.创造数据源,并设置数据库所在的位置,三条固定写法 2.建立和数据库服务器之间的连接,连接好了后&#xff…

目录

一、数据库编程的前置

二、Java的数据库编程----JDBC

1.概念

2.JDBC编程的优点

三.导入MySQL驱动包

四、JDBC编程的实战

1.创造数据源,并设置数据库所在的位置,三条固定写法

2.建立和数据库服务器之间的连接,连接好了后,才能进行后续的 请求-响应 交互。

3.构造SQL语句

4.把sql发给服务器

5.释放资源,关闭连接

五、动态拼接写法


一、数据库编程的前置

1.编程语言:如 Java , C 、 C++ 、 Python 等 。
2.数据库:如 Oracle , MySQL , SQL Server 等 。
3.数据库驱动包不同的数据库,对应不同的编程语言提供了不同的数据库驱动包,如: MySQL 提供了 Java 的驱动包 mysql-connector-java ,需要基于 Java 操作 MySQL 即需要该驱动包。同样的,要基于 Java 操作 Oracle 数据库则需要 Oracle 的数据库驱动包 ojdbc。

二、Java的数据库编程----JDBC

1.概念

JDBC是数据库连接是一种用于执行SQL语句的java API,就类似于一个网址,它是java中的数据库连接规范,这个API里面由java.sql.*,javax.sql.*包中的一些类和接口组成,这些都可以为实现sql做基础,这些都为java开发人员操作数据库提供了一个标准的API,可以为多重关系数据库提供同意的访问。

2.JDBC编程的优点

直接底层操作,提供了简单,便捷的访问数据库的方法,跨平台性较强,灵活比较强,可以执行很复杂的SQL语句,说白了就是JDBC要通过Java代码操作数据库。

三.导入MySQL驱动包

(1)准备数据库驱动包

首先我们需要去MySQL的Maven中央仓库,下载我们的jar包。

Maven中央仓库  -->输入mysql-->MySQL Connector Java -->选择版本

必须选择和我们MySQL对应的版本,博主使用的就是MySQL5.7系列的,那么选择5开头的任意一个都可以,点击进去。

我们有两种方法导入驱动包。

1.导入jar包

2.依赖注入   (这里我们只讲这种,个人认为这种方法最为简便)

我们上一步之后跳转以下页面,复制以下内容,粘贴到 pom.xml文件 <dependencies> </dependencies>中,然后刷新以下Maven

这样我们的依赖注入就完成了。。


四、JDBC编程的实战

一般的jdbc开发分为五大具体步骤

1.创造数据源,并设置数据库所在的位置,三条固定写法

DataSource dataSource=new MysqlDataSource();
((MysqlDataSource)dataSource).setUrl("jdbc:mysql://127.0.0.1:3306/textclass?characterEncoding=utf8&useSSL=false");
((MysqlDataSource)dataSource).setUser("root");//设置用户名 固定是root 也可以配置别的
((MysqlDataSource)dataSource).setPassword("数据库密码");//设置密码 登录数据库密码

分析 setUrl() 方法里边内容:

jdbc:mysql 表示这个url是给jdbc中的mysql来使用的。

127.0.0.1 表示IP地址-> 这里称为环回IP 表示主机自己(相当于Java中的this)。

3306 代表端口号, 一般默认是3306 这么多程序你要把网络数据交给哪个程序呢?

textclass表示要访问的数据库名。

characterEncoding=utf8 访问的字符编码方式。

useSSL=false useSSL表示加密,此处没必要加密 手动关闭。

2.建立和数据库服务器之间的连接,连接好了后,才能进行后续的 请求-响应 交互。

Connection connection=dataSource.getConnection();

注意是第一个,我们很多人都选过第二个,导致报错,哈哈哈哈哈

3.构造SQL语句

假如我们要往student表中插入一条数据。(首先是要有student这张表,提前已经创建过了)

String sq1 ="insert into student values(1,'张三')";//描述了sql是啥样的

真正执行SQL语句用到PreparedStatement这个类库,后面的括号里面传入我们的SQL语句。

PreparedStatement statement = connection.prepareStatement(sq1);//真正的执行语句

4.把sql发给服务器

返回值是一个整数,表示影响到的行数

这里面我们会用到executeUpdate这个函数,它的返回值是一个整数,我们定义一个ret用来接收

int n= statement.executeUpdate();System.out.println("n ="+n);

注意: 针对 增 删 改:使用executeUpdate  

            针对      查    : 使用executeQuery

5.释放资源,关闭连接

(释放顺序是后获取到的资源,先释放,与创建的顺序是相反的)

statement.close();
connection.close();

五、动态拼接写法

那么这里步骤没有变化,唯一变化的就是我们需要添加输入语句,还有sql的写法:

输入语句

Scanner sc=  new Scanner(System.in);System.out.println("请输入学号:");int id = sc.nextInt();System.out.println("请输入姓名:");String name = sc.next();

拼接写法SQL:

String sql ="insert into student values("+id+",'"+name+"')";
PreparedStatement statement = connection.prepareStatement(sql);

那么这种字符串拼接的方式 是不是太丑了呢?如何改进

使用下面的动态拼接,注意写法我们通过?的形式这里我们称之为'占位符',实现我们的构造。

String sq1 ="insert into student values(?,?)";//动态拼接
PreparedStatement statement = connection.prepareStatement(sq1);statement.setInt(1,id);//按照下标依次替换 注意下标从1开始计算statement.setString(2,name);
System.out.println("sql "+ statement);
import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;public class Demo1 {public static void main(String[] args) throws SQLException {//1.创建 DateSourceDataSource dataSource=new MysqlDataSource();((MysqlDataSource)dataSource).setUrl("jdbc:mysql://127.0.0.1:3306/textclass?characterEncoding=utf8&useSSL=false");((MysqlDataSource)dataSource).setUser("root");((MysqlDataSource)dataSource).setPassword("2003");//2.建立和数据库服务器之间的连接,连接好了后,才能进行后续的 请求-响应 交互。Connection connection=dataSource.getConnection();//3.构造sqlString sql ="insert into student values(1,'张三')";PreparedStatement statement= connection.prepareStatement(sql);//4.把sql发给服务器,返回值是一个整数,表示影响到的行数int n= statement.executeUpdate();System.out.println("n ="+n);//5.释放资源,关闭连接,释放顺序,是后获取到的资源,先释放statement.close();connection.close();}
}

http://www.yayakq.cn/news/528716/

相关文章:

  • 网站建设一般多少钱要如何选择wordpress+播放列表
  • 九龙坡做网站画logo的手机软件
  • 自己建一个网站需要多少钱淄博网络推广公司
  • 网站设计轮播图需要吗惠州网站制作公司
  • 做网站设计需要哪些软件爱做网站视频
  • 那些网站做的非常好看单页网站域名
  • 建站宝盒建站系统织梦网站后台密码忘记
  • 深圳网站建设公司设计公司怎么做网站赚流量
  • 手机网站设计只找亿企邦游戏编辑器
  • 常德网站建设案例教程同程网 网站模板
  • 电子商务系统建设网站策划书asp网上书店网站开发
  • 网站语言建设银行官方网站下载安装
  • 网站开发公司谁家好有什么软件可以制作抽奖页面
  • 长沙网站推广排名优化wordpress广告插件下载
  • 做一个网站放网上要多少钱wordpress链接排序
  • 网站开发基础房地产新闻最近
  • 免费游戏网站建设游戏后台新闻稿代写平台
  • 怎么知道网站被kps怎么做网站导航
  • 专业的网站建设与优化建设教育网站费用
  • 网站开发 保修期网站建设公司咋样
  • 做门户网站长沙社区赚钱吗网站开发一般用的字体类型
  • 淮安市网站企业网站建设目的选择题
  • 乱码网站怎么办怎么做就一张图的网站
  • 做商业网站去哪里弄好邢台市疾控中心
  • 网站开发当前城市定位功能wordpress怎么发布公告
  • 网站搭建一般要多少钱无锡论坛网站制作
  • 网站设计与开发的基本步骤包括哪些佛山便宜网站建设
  • 做app网站设计网站图片验证码出不来
  • win7 iis7 添加网站手机端网站变成wap
  • 网站推广的企业登录设备管理