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

织梦网站栏目无法生成wordpress 模版 推荐

织梦网站栏目无法生成,wordpress 模版 推荐,国家企业信息公示系统(全国)官网,渭南市住房和城乡建设部网站个人主页#xff1a;兜里有颗棉花糖 欢迎 点赞#x1f44d; 收藏✨ 留言✉ 加关注#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【MySQL学习专栏】#x1f388; 本专栏旨在分享学习MySQL的一点学习心得#xff0c;欢迎大家在评论区讨论#x1f48c; 目录 一、前言… 个人主页兜里有颗棉花糖 欢迎 点赞 收藏✨ 留言✉ 加关注本文由 兜里有颗棉花糖 原创 收录于专栏【MySQL学习专栏】 本专栏旨在分享学习MySQL的一点学习心得欢迎大家在评论区讨论 目录 一、前言二、导入MySQL驱动包如何下载MySQL驱动包如何向项目中导入MySQL驱动包 三、JDBC编程创建数据源与数据库服务器建连接构造SQL语句执行SQL语句释放必要资源关闭连接向数据库中插入数据完整代码查询数据库中的数据完整代码 四、JDBC编程注意事项 一、前言 JDBC编程Java Database Connectivity简单来说就是通过JAVA代码来操作数据库。我们在绝大部分的实际开发过程中都是通过代码来操作数据库的既然想用代码来操作数据库的话最主要的还是依赖我们之前学过的SQL语句。 首先我们要知道一个成熟的数据库一般都会提供APIApplication Programming Interface叫做应用程序编程接口来供开发者使用API就是一些类/方法。API是一个非常广义的概念这与我们之前JAVA语法中学到的Interface接口是有所区别的。 Java语法中的Interface接口特指的是Java语法中的特殊语法格式Interface算是一个非常狭义的概念。实际上Java中的Interface接口也是提供API的一种方式。 通常我们写好一个程序之后这个程序要给别人提供哪些功能这些功能往往是通过函数/类这样的方式来提供的。 比如我们之前Java语法阶段学过的Random、Scanner、ArrayList、String等这些都可以认为是Java标准库为我们提供的API 每个数据库提供的API都是不一样的。例如MySQL中有MySQL数据库提供的数据库、Oracle中有Oracle数据库提供的API、SQLServe数据库中有SQLServe提供的API、SQLite数据库中有SQLite数据库提供的API。又因为设计每个数据库的人都是不一样的。所以每个数据库设计出来的API差异很大。这也会大大增加开发者的学习成本。 此时java就提供了一套操作数据库的API这个API存在的意义就是可以让所有的数据库都能按照统一的方式来进行操作使用数据库。所以开发者只需要学会一套API就可以操作各种数据库了。然而这只是针对Java开发者而言 对于C开发者而言的话就没有这么方便了我们已经知道每个数据库都有自己的一套API一些比较大的公司为了让C开发者更加方便的操作数据库也尝试开发出一套统一的API但是开发出来的统一API也是有很多套的导致这些不同公司或者组织开发出来的不同的统一API谁也不服谁知道现在也没有哪一套统一API能够向JDBC可以操作各种数据库。 好了现在我们把关注点放到JDBC上面我们已经知道JDBC提供了统一的一套API来供Java开发者来操作各种数据库但是我们不要忘记每一个数据库本身都是有自己的一套API的JDBC只是把这些API进行统一成了一套API。所以每个数据库厂商就提供了一些代码这些代码就称为数据库的驱动包来把数据库自己的原生API转换为JDBC的统一API。请看下图方便大家理解 二、导入MySQL驱动包 如何下载MySQL驱动包 现在我们需要引入MySQL的驱动包来作为项目的依赖即把MySQL驱动包下载下来导入到项目中。 关于MySQL驱动包下载的方法有很多种我们这里采取的是从中央仓库中进行下载中央仓库网址https://mvnrepository.com/ 现在我们进行下载的演示 然后选择自己所需要的版本即可数据库驱动包的版本和数据库服务器的大版本必须保持一致小版本的话不做要求 我这里下载的是5.1.49版本的 下载成功之后大概长这个样子 这就算是MySQL驱动包下载好了。 我们来解释一下下载的这个jar包是个什么东西 .jar类似于是.rar这样的压缩包是java定义的一种压缩格式.jar包中包含了很多的.class文件。 那那么多的.class文件是干什么用的呢一般我们要想把程序发布给其它人的话就需要把这些.class文件拷贝过去而如果.class文件特别多的话就显得非常的麻烦所以我们一般就会把这些.class文件打成压缩包的形式即打成java定义的一种压缩格式即.jar格式。 如何向项目中导入MySQL驱动包 现在我们已经有了MySQL驱动包接下来我们看看如何来将其导入到我们的项目中。 首先我们在项目中新创建一个目录取名叫liblib即library在计算机中就是库的意思 然后我们ctrlc复制一下刚刚的.jar包然后ctrlv粘贴到lib目录中去请看 最后一步右键lib目录然后点击Add as Library点击之后会弹出来一个小弹窗我们点击OK即可这一步意思就是告诉idea这个lib目录中放的是库文件即.jar包 三、JDBC编程 创建数据源 关键代码1DataSource dataSource new MysqlDataSource(); 解释 DataSource dataSource new MysqlDataSource(); DataSource是JDBC提供的interfaceMysqlDataSource()是MySQL驱动包提供的类这个类就实现了JDBC提供的interface(即DataSource)。 DataSource dataSource new MysqlDataSource();是一个向上转型父类引用指向子类对象的操作。 关键代码2((MysqlDataSource) dataSource).setUrl(jdbc:mysql://127.0.0.1:3306/mysql_java?characterEncodingutf8useSSLfalse); 解释此代码就是向下转型目的就是使用setUrl()方法这个方法是子类才有的。 好了现在我们如果既不是用向上转型也不使用向下转型我们就可以把关键代码1和关键代码2一起改为MysqlDataSource dataSource new MysqlDataSource(); dataSource.setUrl(jdbc:mysql://127.0.0.1:3306/mysql_java?characterEncodingutf8useSSLfalse);这种写法不使用转型完全是可以的。我们之所以使用关键代码1和关键代码2这种转型的写法就是希望MysqlDataSource这个类不要扩散到代码的其它部分即目的就是想mysql驱动包和项目代码之间的耦合关系避免以后更换数据库的时候有太大的成本。或者当我们写的代码比较简单的时候其实不需要太在意耦不耦合的事项所以这两种方式在代码比较简单的时候无论用哪种方式都是可以的。我们这里使用关键代码1和关键代码2的这一种方式。 url是什么url是唯一资源定位符通常用来描述url来描述网络上一个资源的位置。而MySQL本体是一个服务器相当于网络上的一个资源。 现在我们来看看setUrl()方法中jdbc:mysql://127.0.0.1:3306/mysql_java?characterEncodingutf8useSSLfalse是什么 jdbc:mysqljdbc:mysql意思就是给jdbc中的mysql用的。127.0.0.1是一个ip地址相当于网路上一个设备的地址网络上的ip地址通常是使用来进行表示的一串数字每个部分的数值范围是1到255用.进行分割而127.0.0.1环回地址这个ip地址是一个比较特殊的ip地址特指我们自己电脑的主机。如果我们的数据库和java代码都是在同一个主机上进行执行的那么我们这里的ip地址就可以把ip地址写成环回ip(即127.0.0.1)。33063306是一个端口号是用来区分主机上的应用程序的。比如我的电脑上此时正在运行着许多的应用程序即是用来区分应用程序上的进程的。characterEncodingutf8统一字符集为utf8useSSLfalse决定了数据库服务器和客户端之间的通信是否要进行加密。 设置了url之后我们还需要设置用户名和密码。代码如下 ((MysqlDataSource) dataSource).setUser(root); ((MysqlDataSource) dataSource).setPassword(111111); 至此我们只是找到了数据库服务器的地址并没有连接上数据库服务器。 与数据库服务器建连接 现在我们来尝试连接数据库。 输入代码1 Connection connection dataSource.getConnection(); 注意我们输入Connection的时候必须选择第二个即java.sql。 同时我们可以注意到上面代码抛出了异常分为受查异常和非受查异常。其中受查异常必须经过我们的手动处理即要么try catch要么throws 我们再来看上述代码抛出的异常java.sql.SQLException是jdbc中提供的受查异常按住altenter可以抛出异常。 一个java程序可以连接多个数据库服务器。和每个数据库服务器进行通信都要有独立的连接、通讯。 构造SQL语句 假设我们现在有一张student(id,name)的学生表现在向表中进行插入数据。 关键代码String sql insert into student values(1,张三);PreparedStatement statement connection.prepareStatement(sql); 上图中我们选择java.sql库中的PreparedStatement。 解释PreparedStatement statement connection.prepareStatement(sql); 首先我们知道SQL语句是string类型JDBC提供了Statement(中文是语句的意思)对象让我们把string类型转换为Statement然后再发送给服务器。 但是我们一般会使用PreparedStatement(预处理的语句)对象来替代Statement。 之所以会使用PreparedStatement来代替Statement是因为Statement对象会把SQL语句原封不动的直接发给数据库服务器此时数据库服务器只能自己来解析SQL语句。 而PreparedStatement对象回先在客户端这边初步解析一下SQL语句验证语法格式是否符合要求啥的此时数据库服务器就不需要再做这些检查了从而降低了数据库服务器的负担。 执行SQL语句 输入代码int n statement.executeUpdate(); 释放必要资源关闭连接 输入代码statement.close(); connection.close(); 解释 我们创建的语句对象和连接对象中一般都会持有计算机硬件或者软件上的资源这些资源我们如果不使用的话就需要及时进行释放。 在Java中虽然有垃圾回收机制来自动释放内存但是计算机资源中不仅仅包含了内存资源还包含了一些其它的资源。这些其它的资源(如连接对象中会包含出来内存资源以外的其它计算机资源)就需要我们进行手动释放。 所以我们一般使用close()方法即一个专门释放资源的方法。 还有一点我们需要注意先创建的对象后关闭即后创建的对象先关闭。 最终运行结果如下 向数据库中插入数据完整代码 import javax.sql.DataSource; import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException;public class JDBCDemo1 {public static void main(String[] args) throws SQLException {// 创建数据源头DataSource dataSource new MysqlDataSource();((MysqlDataSource) dataSource).setUrl(jdbc:mysql://127.0.0.1:3306/mysql_java?characterEncodingutf8useSSLfalse);((MysqlDataSource) dataSource).setUser(root);((MysqlDataSource) dataSource).setPassword(111111);// 连接数据库Connection connection dataSource.getConnection();// 构造SQL语句String sql insert into student values(1,张三);PreparedStatement statement connection.prepareStatement(sql);// 执行SQL语句返回值代表此次操作影响到了几行int n statement.executeUpdate();System.out.println(n n);// 释放没有必要资源关闭连接statement.close();connection.close();} } 如果我们希望插入的数据能够在运行是发生动态的变化这种方式当然是可以的但是我们不希望你这样做因为那样会使你的代码显得并没有那么整洁。另外拼接字符串的方式也并不是那么的安全。 如果我们想要让插入的数据通过控制台发生动态的变化的话PreparedStatement给我们提供了更为方便的方式基于占位符的一种方式比如String sql insert into student values(?,?);。 其中?是一个占位符即会占据一个位置后续PreparedStatement会把变量值带入到?中。 替换方式如下 上图中代码的写法就会显得代码肥肠粉简单明了。同时在执行过程中setXXX()方法内部也会进行更为严格的校验避免出现SQL注入攻击的情况。 对数据库进行删除操作 查询数据库中的数据完整代码 对数据库进行查询操作 关键代码1ResultSet resultSet statement.executeQuery(); 关键代码2遍历查询结果集合 while(resultSet.next()) {int id resultSet.getInt(id);String name resultSet.getString(name);System.out.println(id id , name name); }完整代码如下 // 查询操作 import com.mysql.jdbc.jdbc2.optional.MysqlDataSource; import javax.sql.DataSource; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException;public class JDBCDemo3 {public static void main(String[] args) throws SQLException {// 创建数据源DataSource dataSource new MysqlDataSource();((MysqlDataSource)dataSource).setUrl(jdbc:mysql://127.0.0.1:3306/mysql_java?characterEncodingutf8uesSSLfalse);((MysqlDataSource)dataSource).setUser(root);((MysqlDataSource)dataSource).setPassword(111111);// 与数据库建立连接Connection connection dataSource.getConnection();// 构造数据库语句String sql select * from student;PreparedStatement statement connection.prepareStatement(sql);// 执行SQL语句ResultSet resultSet statement.executeQuery();// 遍历查询结果集合while(resultSet.next()){int id resultSet.getInt(id);String name resultSet.getString(name);System.out.println(id id , name name);}// 释放资源resultSet.close();statement.close();connection.close();} }查询结果如下 如果我们要查询某一个学号的学生请看 查询结果如下 另外要注意执行查询操作时要使用executeQuery()方法。查询操作返回值是一个ResultSet类型的对象来表示是一个表格。需要我们遍历查询的结果。 四、JDBC编程注意事项 创建数据库连接时Connection选择java.sql库中的Connection。创建数据库时不要忘记抛出异常与数据库建立连接时(Connection connection dataSource.getConnection();)不要忘记抛出异常(alt回车)准备执行SQL语句的PreparedStatement对象使用的是java.sql包中的PreparedStatement。 JDBC编程最主要的四个API DataSourceConnectionPreparedStatementResultSet遍历查询结果 通过上面最主要的4个API就可以完成JDBC编程。这里并不是太难但是需要我们经常的去进行练习。 好了以上就是本文的全部内容了希望大家多多练习加强自己的理解。就到这里吧再见啦友友们
http://www.pierceye.com/news/466756/

相关文章:

  • 外贸网站建设如何做呢百度热搜风云榜
  • ASP网站建设实训报告总结山西建设公司网站
  • 网站建设使用的什么软件房屋设计风格
  • 厦门网站建设公司排名杭州小型网站建设服务
  • 西安建设主管部门官方网站中文搭建式软件开发工具
  • 南通网站建设论文网站首页导航栏怎么做
  • 建设网站的运行费包括什么北京市建设工程信息网安徽兴创
  • 我想在泉州做网站上上海网站设计
  • 百度seo网站优化一 网站开发体会
  • 成都58手机微信网站建设名录tiktok跨境电商好做吗
  • 电子科技 深圳 网站建设怎么做打码网站
  • 南宁小程序开发网站建设公司公司网站建设怎么选择
  • erp网站代做项目网络进度图
  • 网站建设胶州家园外贸网站怎么注册
  • 我想找阿里巴巴做网站推广建一个公司网站花多少钱
  • 最新购物网站建设框架wordpress 登录后台乱码
  • 音频网站开发做外贸网站需要营业执照
  • 企业网站搭建项目概述范文wordpress更改链接地址
  • 免费网站在线观看人数在哪直播建设工业网站首页
  • 权威的南昌网站设计wordpress游客评论游客
  • 乡镇府建设网站什么是外链
  • 营销型网站设计流程电子商务网站建设软件
  • 做个人网站的步骤wordpress 添加新页面
  • 公司建网站流程网站布局选择
  • 云南效果好的网站优化微信如何做有趣的短视频网站
  • wordpress个人网站后台登陆dedecms仿站
  • 网站没被收录什么原因上海哪家做网站
  • 电子商务网站建设含代码项目外包是什么意思
  • 此网站正在建设中页面重庆网上商城网站建设公司
  • 保定建设公司网站新产品上市的营销策划方案