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

济南公众平台网站建设技术支持 济源网站建设

济南公众平台网站建设,技术支持 济源网站建设,青岛网站设计网站,wordpress听说对百度不友好下载 JDBC https://mvnrepository.com/ 创建项目,然后创建一个目录并将下载好的 jar 包拷贝进去 选择 Add as Library,让这个目录能被项目识别 连接数据库服务器 在 JDBC 里面,使用 DataSource 类来描述数据库的位置 import com.mysql.cj.…

下载 JDBC

https://mvnrepository.com/

img

创建项目,然后创建一个目录并将下载好的 jar 包拷贝进去

img

选择 Add as Library,让这个目录能被项目识别

img

连接数据库服务器

在 JDBC 里面,使用 DataSource 类来描述数据库的位置

import com.mysql.cj.jdbc.MysqlDataSource;import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.SQLException;public class JDBCTest {public static void main(String[] args) throws SQLException {// 使用 DataSource 描述 MySQL 服务器的位置DataSource dataSource = new MysqlDataSource();((MysqlDataSource)dataSource).setURL("jdbc:mysql://127.0.0.1:3306/mydb?characterEncoding=utf8&useSSL=false");((MysqlDataSource)dataSource).setUser("root");((MysqlDataSource)dataSource).setPassword("233333");// 和数据库建立连接Connection connection = dataSource.getConnection();System.out.println(connection);}
}
// 输出:com.mysql.cj.jdbc.ConnectionImpl@1e88b3c

DataSource 是一个 interface,不能直接实例化,而 MysqlDataSource 则是实现类

mydb 是要连接的数据库名;characterEncoding=utf8,设置客户端连接服务器使用的字符集;useSSL=false 不启用加密

最后还要设置好用户名和密码

然后建立连接,打印出对象说明连接成功了

对数据库进行操作

上述代码完成了后续的构造 SQL 语句,这里以插入一条数据为例,还需要借助 PreparedStatement 对象,然后执行 SQL,最后断开连接,释放资源

import com.mysql.cj.jdbc.MysqlDataSource;import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;public class JDBCTest {public static void main(String[] args) throws SQLException {// 使用 DataSource 描述 MySQL 服务器的位置DataSource dataSource = new MysqlDataSource();((MysqlDataSource)dataSource).setURL("jdbc:mysql://127.0.0.1:3306/mydb?characterEncoding=utf8&useSSL=false");((MysqlDataSource)dataSource).setUser("root");((MysqlDataSource)dataSource).setPassword("123456");// 和数据库建立连接Connection connection = dataSource.getConnection();//System.out.println(connection);// 构造 SQL 语句String sql = "insert into student values(1, '张三')";PreparedStatement statement = connection.prepareStatement(sql);// 执行 SQL 语句// insert, update, delete 都是通过 executeUpdate 来执行,select 通过 executeQuery 来执行// 返回影响的行数int n = statement.executeUpdate();System.out.println("n = " + n);// 断开连接,释放资源,后创建的先释放statement.close();connection.close();}
}
// 输出:n = 1

很多时候我们的 SQL 语句不能是写死的,一种最简单的方式的就是通过拼接字符串来构造 SQL 语句,如:

String sql = "insert into student values(" + num + ", '" + name + "')";

这样写会带来两个问题,一是代码丑陋,引号太多不易读,二是无法防止SQL注入

正确的写法

String sql = "insert into student values(?, ?)";

使用 ? 作为占位符,后续使用 statement 对象进行替换。

statement.setInt(1, num); // 将第1个?替换成num
statement.setString(2, name); // 将第2个?替换成name
System.out.println(statement); // 打印statement
// 输出:com.mysql.cj.jdbc.ClientPreparedStatement: insert into student values(2, 'lisi')
// 说明拼接的没问题

select 操作

import com.mysql.cj.jdbc.MysqlDataSource;import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;public class JDBCSelect {public static void main(String[] args) throws SQLException {DataSource dataSource = new MysqlDataSource();((MysqlDataSource)dataSource).setURL("jdbc:mysql://127.0.0.1:3306/mydb?characterEncoding=utf8&useSSL=false");((MysqlDataSource)dataSource).setUser("root");((MysqlDataSource)dataSource).setPassword("123456");Connection connection = dataSource.getConnection();String sql = "select * from student";PreparedStatement statement = connection.prepareStatement(sql);// select 使用 executeQuery,返回一个 ResultSetResultSet resultSet = statement.executeQuery();// 遍历 ResultSetwhile (resultSet.next()) {int id = resultSet.getInt("id");String name = resultSet.getString("name");System.out.println(id + ": " + name);}// 释放resultSet.close();statement.close();connection.close();}
}
http://www.yayakq.cn/news/125183/

相关文章:

  • 滨州网站seo做php网站
  • 网站服务器计算机安全的措施网站顶部导航代码
  • 需要锦州网站建设谁家网站做的好
  • 网站建设教程视频教程明星网页设计
  • wordpress网站重新安装插件厦门网站怎么做
  • 白山市建设局网站免费企业网站建设
  • 武鸣网站建设易语言开发网站
  • 企业网站建设之域名篇做网站要准备哪些
  • 东莞做汽车有没有买票的网站平台网站建设意见征求表
  • 枣庄网站制作公司51比购网官方网站
  • 宁夏做网站建设公司wordpress轻量主题
  • 哈西建站优化上海学网站建设
  • 好的企业网站设计方案开发公司做管理公司天然气怎么做帐
  • 上海做门户网站的公司wordpress获取特定分类文章数
  • 高端网站鉴赏设计公司logo需要多少钱
  • 湛江市城乡住房建设局网站宁波seo推广费用
  • 邢台123生活最新帖子网络推广seo是什么
  • 网站备案 拍照网点邢台网站制作地址
  • 网站建设业务需求文档php和python做网站
  • 那些网站可以做0首付分期手机网站建设asp文件怎么展现
  • 教外国人做中国菜网站网站前台登录模板
  • 茌平建设局网站wordpress 页面设置
  • 虚拟机iis网站建设安康网站制作公司
  • 大连做公司网站的公司下载班级优化大师并安装
  • 县级以下不允许建设网站sem推广托管公司
  • 网站收录变少广州一起做网站
  • 做纪录片卖给视频网站专门做恐怖的网站
  • 汕头网站建设推广平台微信网站设计分析
  • 网站的网站搭建北京 酒店 企业 网站建设
  • wms仓储管理系统seo关键词排名查询