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

网站大全app下载网上交易网

网站大全app下载,网上交易网,国外vps国内vps,服装设计专业比较好的学校一. JDBC JDBC:Java DataBase Connectivity 就是使用Java语言操作关系型数据库的一套API 本质:sun公司官方定义一套操作所有关系型数据库的规范,即接口;各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使…

一. JDBC

        JDBC:Java DataBase Connectivity 就是使用Java语言操作关系型数据库的一套API 

        本质:sun公司官方定义一套操作所有关系型数据库的规范,即接口;各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行代码的是驱动jar包中的实现类。

二.JDBC入门程序

        DML语句

        1. 创建一个Maven项目,引入依赖;并准备数据库表(emp)

//pom.xml引入依赖
<dependencies><dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><version>8.0.33</version></dependency><dependency><groupId>org.junit.jupiter</groupId><artifactId>junit-jupiter</artifactId><version>5.9.3</version><scope>test</scope></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.30</version></dependency>
</dependencies>

        2.代码实现:编写jdbc程序,操作数据库

import org.junit.jupiter.api.Test;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;public class JdbcTest {/** JDBD入门程序* */@Testpublic void testUpdate() throws Exception {//1.注册驱动Class.forName("com.mysql.cj.jdbc.Driver");//2.获取连接String url = "jdbc:mysql://localhost:3306/db01";//数据库地址String username = "root";//用户名String password = "root";//密码Connection conn = DriverManager.getConnection(url,username,password);//3.获取执行sql的对象Statement stmt = conn.createStatement();//4.执行sqlString sql = "update emp set phone = '15935748521' where username = 'taitan'";int count = stmt.executeUpdate(sql);//返回受影响的行数if (count > 0) {System.out.println("修改成功");} else {System.out.println("修改失败");}//5.释放资源stmt.close();}}

        DQL语句

                ResultSet(结果集对象) :ResultSet rs = statement.executeQuery()

                        (1) next():将光标从当前位置向前移动一行,并判断当前行是否有效行,返回值为boolean;

                                true:有效行。当前行有数据;

                                false:无效行,当前行没有数据

                        (2) getXxx(...):获取数据,可以根据列的编号获取,也可以根据列名获取(推荐)

package com.wyyzs;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;import java.util.Date;@Data //getter setter toString
@AllArgsConstructor //全参构造
@NoArgsConstructor //无参构造
public class Emp {Integer id;String username;String password;String name;Integer gender;char phone;Integer job;Integer salary;Date entry_date;String image;Date create_time;Date update_time;}
@Testpublic void testSelete() throws Exception {//1.注册驱动Class.forName("com.mysql.cj.jdbc.Driver");//2.获取连接String url = "jdbc:mysql://localhost:3306/db01";//数据库地址String username = "root";//用户名String password = "root";//密码Connection conn = DriverManager.getConnection(url,username,password);//3执行sql  ? 占位符String sql = "select id, username, password, name, gender, phone, job, salary, entry_date, image, create_time, update_time from emp where username = ?";PreparedStatement stmt = conn.prepareStatement(sql); //预编译sql,减少sql执行stmt.setString(1,"taitan");//ResultSet 结果集对象ResultSet rs = stmt.executeQuery(); //执行sqlwhile (rs.next()) {Emp emp = new Emp(rs.getInt("id"),rs.getString("username"),rs.getString("password"),rs.getString("name"),rs.getInt("gender"),rs.getString("phone").charAt(0),rs.getInt("job"),rs.getInt("salary"),rs.getDate("entry_date"),rs.getString("image"),rs.getDate("create_time"),rs.getDate("update_time"));System.out.println(emp);}rs.close(); //释放资源conn.close(); //释放资源stmt.close();//释放资源}

三. 预编译SQL

        1. 静态SQL(参数硬编码):直接将参数写到SQL语句中,直接使用Statement对象执行

String sql = "select id, username, password, name, gender, phone, job, salary, entry_date, image, create_time, update_time from emp where username = 'taitan'";

        2. 预编译SQL(参数动态传递):使用?(占位符),需要获取PreparedStatement对象为预编译SQL中的占位符赋值

        String sql = "select id, username, password, name, gender, phone, job, salary, entry_date, image, create_time, update_time from emp where username = ?";

        3. 预编译SQL优势:

                (1)  可以防止SQL注入,更安全;(SQL注入:通过控制输入来修改事先定义好的SQL语句,以达到执行代码对服务器进行攻击的方法。)

                (2) 性能更高


文章转载自:

http://KTiByoSA.dgwrz.cn
http://3VPpH6cr.dgwrz.cn
http://pPX4PK4L.dgwrz.cn
http://9Em2A79O.dgwrz.cn
http://iJOFpEdt.dgwrz.cn
http://U5RDcJbr.dgwrz.cn
http://bgctfW74.dgwrz.cn
http://BmpKtypY.dgwrz.cn
http://8XWw8FU8.dgwrz.cn
http://MoXFN44m.dgwrz.cn
http://237jyKZ6.dgwrz.cn
http://wvTWq5TE.dgwrz.cn
http://e6qyiLPC.dgwrz.cn
http://XzLvGgz6.dgwrz.cn
http://Qo1Za1ol.dgwrz.cn
http://cLhOKqb7.dgwrz.cn
http://i0PDq1Tf.dgwrz.cn
http://hLmD7nwk.dgwrz.cn
http://dYqShSNl.dgwrz.cn
http://5aH3huv5.dgwrz.cn
http://D1WA3fPP.dgwrz.cn
http://UwvM2mzs.dgwrz.cn
http://J3gkPima.dgwrz.cn
http://gPbv0pSb.dgwrz.cn
http://86wpqiVv.dgwrz.cn
http://YWWM8RYe.dgwrz.cn
http://EahnDqM7.dgwrz.cn
http://ekt49lhq.dgwrz.cn
http://MM5Qwgts.dgwrz.cn
http://T0IkvOzd.dgwrz.cn
http://www.dtcms.com/wzjs/631690.html

相关文章:

  • 做企业网站 需要注意的广西医科大学网站建设
  • 搭建网站做淘宝客郑州定制网页设计
  • wordpress浏览郑州seo优化服务
  • 珠海网站建站模板中信建设有限责任公司内部网站
  • 设计网站公司 生活湖南岚鸿流程网站
  • 服装公司网站模版云原神官方网站正版下载
  • 网站的备案流程图关于网站建设申请
  • 17.zwd一起做网站池尾站深圳公司网站建设设计
  • 设计师常用网站门户自己做网站成本
  • 福州网站建设哪家强网站推销怎么做ppt模板
  • 郑州网站制作汉狮信用体系建设网站维运工作制度
  • 湖南省水利水电建设工程学校网站wordpress gif 点击播放
  • 自适应网站模板公司阿里巴巴网站推广方式
  • 网站的实现怎么写c#网站开发视频教程 高清
  • 汉滨网站建设四平网站建设哪家效果好
  • 直播网站制作中国室内设计联盟邀请码
  • 中国建设银行网站查行号wordpress主题怎么汉化
  • 网站做好了如何发布海南建设工程股份有限公司网站
  • 广州市品牌网站建设平台wordpress英文主题变中文版
  • 班级建设网站设计方案妙趣网 通辽网站建设
  • 菏泽网的网站建设的联系方式青岛做网站推广公司哪家好
  • 网站设置路由器软件开发工程师是程序员吗
  • wordpress可视化建站梅州企业网站
  • 赣州91人才网官网百度小程序seo
  • 网上做外贸都有哪些网站浏览器下载安装2023最新版
  • 网站建站分辨率西安企业门户网站建设
  • 门户网站是什么网站空间到期了怎么办
  • 河北大良网站建设专业做seo推广
  • 口碑好的企业网站开发网站建站程序
  • 网站如何建立快捷方式开源企业网站管理系统