链接数据库的步骤
1.加载驱动 2.链接数据库 3.获取sql语句执行器 4.执行sql语句 5.关闭相应资源
点击这里👉官网jar包下载
下载那个版本看自己的mysql装的什么版本
下载完成,解压之后
导入jar包
使用 IntelliJ IDEA
现在项目目录下创建一个文件夹 lib 右击jar包,点击Add as Library…链接数据库简单案例
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class HelloWorld { private static final String DRIVER = "com.mysql.cj.jdbc.Driver";//8.0使用这个 //private static final String DRIVER = "com.mysql.jdbc.Driver";//5.0使用这个 private static final String USER = "root";//自己数据库的用户名 private static final String PASSWORD = "666666";//自己数据库的密码 /*test是自己的数据库名*/ private static final String URL = "jdbc:mysql://127.0.0.1/lcb_test?useSSL=false&serverTimezone=UTC";//链接数据库的地址 public static void main(String[] args) throws Exception{ //加载驱动 Class.forName(DRIVER); //链接数据库 Connection conn = DriverManager.getConnection(URL,USER,PASSWORD); System.out.println("链接成功"); //获取sql语句执行器 Statement sta = conn.createStatement(); int id1 = 1;//可以把查询封装成一个方法 把id传进去 //编写sql语句 String sql = "select * from user where id="+id1; //执行sql语句 ResultSet rs = sta.executeQuery(sql); while (rs.next()){ int id = rs.getInt("id"); String username = rs.getString("username"); String password = rs.getString("password"); String sex = rs.getString("sex"); String phone = rs.getString("phone"); System.out.println(id+"\t"+username+"\t"+password+"\t"+sex+"\t"+phone); } conn.close(); sta.close(); rs.close(); } }增、删、改 使用 int executeUpdate(String sql) ,(返回值是影响了几行) 查询 使用的是 ResultSet executeQuery(String sql), (返回值是一个结果集)
PreparedStatement的使用(可以防止sql注入)
上面案例 查询使用的是Statement
import java.sql.*; public class { private static final String DRIVER = "com.mysql.cj.jdbc.Driver";//8.0使用这个 //final String DRIVER = "com.mysql.jdbc.Driver";//5.0使用这个 private static final String USER = "root";//自己数据库的用户名 private static final String PASSWORD = "666666";//自己数据库的密码 /*test是自己的数据库名*/ private static final String URL = "jdbc:mysql://127.0.0.1/lcb_test?useSSL=false&serverTimezone=UTC";//链接数据库的地址 public static void main(String[] args) throws Exception{ //加载驱动 Class.forName(DRIVER); //链接数据库 Connection conn = DriverManager.getConnection(URL,USER,PASSWORD); System.out.println("链接成功"); //编写sql语句 String sql = "select * from user where id = ?"; PreparedStatement psta = conn.prepareStatement(sql); psta.setObject(1,1);//第一个参数是第几个问号 ResultSet rs = psta.executeQuery(); while (rs.next()){ int id = rs.getInt("id"); String username = rs.getString("username"); String password = rs.getString("password"); String sex = rs.getString("sex"); String phone = rs.getString("phone"); System.out.println(id+"\t"+username+"\t"+password+"\t"+sex+"\t"+phone); } conn.close(); psta.close(); rs.close(); } }推荐大家使用 PreparedStatement ,不但可以防止sql注入,而且可以提高效率
可以把USER,PASSWORD,URL,DRIVER ,放进properties配置文件里,我之前发过properties的简单使用