当前位置: 首页> 汽车> 新车 > 建网站的要求_网络营销模式不是孤立存在的_网站备案信息查询_企业网络营销策划

建网站的要求_网络营销模式不是孤立存在的_网站备案信息查询_企业网络营销策划

时间:2025/7/9 23:54:38来源:https://blog.csdn.net/zeijiershuai/article/details/147104064 浏览次数: 1次
建网站的要求_网络营销模式不是孤立存在的_网站备案信息查询_企业网络营销策划

一. 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) 性能更高

关键字:建网站的要求_网络营销模式不是孤立存在的_网站备案信息查询_企业网络营销策划

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: