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

四川建设网站/百度推广的定义

四川建设网站,百度推广的定义,大型门户网站多少钱,php和java哪个做网站浩java提供了一系列用于数据库编程的API--JDBC;实际上,是通过接口定义了一套访问数据库的规范,而实现这些规范的是各数据库厂商,并且将接口实现封装成.jar包;而我们程序员只需要得到数据库厂商封装的.jar包,调用JDBC API就可以连接对应的数据库.其中调用调用JDBC API这个动作是统…

java提供了一系列用于数据库编程的API--JDBC;实际上,是通过接口定义了一套访问数据库的规范,而实现这些规范的是各数据库厂商,并且将接口实现封装成.jar包;而我们程序员只需要得到数据库厂商封装的.jar包,调用JDBC API就可以连接对应的数据库.其中调用调用JDBC API这个动作是统一的.

JDBC中常见的API :

1.DriverManager类 - 驱动管理器

2.Connection类 - 连接程序与数据库

3.Statement类 - SQL语句类

4.PrepareStatement类 - 此类是Statement类的子类

5.ResultSet类 - 结果集,Result是结果的意思,Set是集合

具体操作如下:

//1、加载驱动---JDK1.8可以省略这个代码

try {

Class.forName("com.mysql.jdbc.Driver");//反射代码---类加载

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

//2、获取连接

Connection con = null;

String url = "jdbc:mysql://localhost:3306/test129?useSSL=true&useUnicode=true&characterEncoding=utf8";//协议://ip地址:端口号/数据库名

String username = "root";

String password = "root";

try {

con = DriverManager.getConnection(url,username,password);//连接数据库需要三个参数:url/帐号/密码

//3、构建语句对象

String sql = "";//书写sql语句

Statement state = con.createStatement();//通过连接获取语句对象

//4、语句对象执行SQL

int r = state.executeUpdate(sql);//所有的DML语句都调用这个方法,该方法默认返回影响了多少行

/*

* 新增数据时,有时候会需要得到自动生成的主键值.

int r = state.executeUpdate(sql, Statement.RETURN_GENERATED_KEYS);

ResultSet rs = state.getGeneratedKeys();

if(rs.next()){

int id = rs.getInt(1);

}

*/

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} finally{

//5、关闭连接

if(con != null){

try {

con.close();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

以上是连接MySQL数据库以及对其中表格进行增/删/改(DML)操作,而要进行查询(DQL)操作只需对代码进行如下改动:

String sql = "select * from t_group";

Statement state = con.createStatement();

ResultSet rs = state.executeQuery(sql);//DQL语句通用这个方法

while(rs.next()){

GroupBean gb = new GroupBean();

gb.setId( rs.getInt("pk_groupid"));

gb.setGroupName(rs.getString("f_groupName"));

gb.setGroupAddress(rs.getString("f_groupAddress"));

gb.setGroupNum(rs.getInt("f_groupNum"));

allGroup.add(gb);

}

连接和关闭不变,变的是sql语句,查询语句返回的数据也是不同的,是以结果集ResultSet 的形式返回ResultSet 有一个.next()方法--探查是否还有下一条信息,返回boolean值,可以利用循环将查询结果装入与数据表格对应的JavaBean对象中.

从设计上数据库中表与表的关系和java中bean对象与bean的关系是相对应的.最常见的有三种关系:

Bean

一对一

两张表的关系是其中一张表的外键关联另一张表,外键必须有唯一约束;也可以是两张表互相外键关联,加唯一约束

两个类,其中一个类has a另一个类;或者互相has

一对多

一张主表,多张从表,所有的外键都是在多的那一方的

单一的一方has a多方的集合,多方has a一个单方

多对多

两张(或多张)主表,一张关系表所有的外键都在关系表上

两个类互相has a 对方类型的集合

具体的关系要视业务而定;

很多时候需要用用户输入内容来构建sql语句,这时就会遇到sql注入的风险,可以在此事使用PrepareStatement类代替Statement类来装sql语句,假如有一个用户表格:

String sql = "select * from t_user where f_username = ? and f_password = ?";//PrepareStatement的特点,将标准的sql模版提前书写好,将未知的部分用?号代替

PreparedStatement ps = con.prepareStatement(sql);//先将模版传入PrepareStatement构造方法产生对象

ps.setString(1, inputUsername);//传入问号的位置,和取代?的语句,在这里第一个?的位置是1,而不是0

ps.setString(2, inputPassword);

ResultSet rs = ps.executeQuery();//将完整的sql语句提交

UserBean user = null;

while(rs.next()){

user = new UserBean();

user.setId(rs.getInt("pk_id"));

user.setUsername(rs.getString("f_username"));

user.setPassword(rs.getString("f_password"));

}

事务 -- 由于某一业务,需要同时执行多条DML语句,一起成功,一起失败:

try {

con = DriverManager.getConnection(url,username,password);

//1、将连接对象的自动提交设置为假

con.setAutoCommit(false);

//在此编写sql语句

con.commit();//2、手动提交

}catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

try {

con.rollback();//3、回滚,如果有一条失败,就好全部回到修改前的样子

} catch (SQLException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

}

} finally{

//5、关闭连接

if(con != null){

try {

con.close();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

http://www.lbrq.cn/news/946099.html

相关文章:

  • 做网站文字编辑工作好不好/如何优化企业网站
  • 阿里云建立网站备案/唯尚广告联盟app下载
  • 政府网站建设绩效评估指标/收录平台
  • 陕西建设网站官网/佛山全市核酸检测
  • 做美女图片网站犯法吗/想做推广哪个平台好
  • 长沙网站开发湖南微联讯点靠谱/什么是百度竞价
  • 怎样做一个企业的网站建站/seo优化的主要任务包括
  • 二维码制作方法/怎么样优化关键词排名
  • 中小学网站建设探讨/新闻头条最新消息今天发布
  • 贵池网站建设/新网站百度收录要几天
  • 龙岗网站建设服务/seo公司系统
  • 哪些香港网站不能访问/郑州seo技术培训班
  • 东莞市建设公共交易中心网站/seo关键词推广怎么做
  • 个人做众筹网站合法吗/网页设计制作
  • 厦门网站建设公司哪个好/定制建站网站建设
  • 嘉兴网站建设哪家好/seo体系百科
  • 网站空间指的是什么/怎样建立自己网站
  • 怎样优化网站排名靠前/百度引擎提交入口
  • 网站做微信支付/百度竞价返点开户
  • 制作网站的方法/网址搜索域名查询
  • 鄂尔多斯做网站/免费线上培训平台
  • 运城做网站/网络推广的优势
  • 注册公司名称查询/广州网站优化费用
  • 公司网站开发项目外包方案/网络营销的含义的理解
  • 一家公司做网站需要什么资料/关键词优化排名查询
  • 做网站公司简介模版/网站目录
  • 易捷商城小程序/杭州新站整站seo
  • 石家庄网站建设电话/网拍外宣怎么推广
  • 做淘宝客网站的流程/怎么自己做网站
  • 网站怎么做才可以做评价/seoyoon
  • 【NLP舆情分析】基于python微博舆情分析可视化系统(flask+pandas+echarts) 视频教程 - 热词评论查询功能实现
  • 扒网站工具 HTTrack Website Copier
  • 渗透高级-----测试复现(第三次作业)
  • Leetcode力扣解题记录--第21题(合并链表)
  • AI小智源码分析——音频部分(一)
  • 从数据孤岛到融合共生:KES V9 2025 构建 AI 时代数据基础设施