连接数据库
程序员文章站
2022-06-19 11:33:27
...
只能拿结果或者遍历
提升作用域
package jdbcdemo.util;
import java.io.IOException;
import java.io.InputStream;
import java.sql.*;
import java.util.Properties;
public class jdbcutils {
//提升作用域
private static String driver =null;
private static String url =null;
private static String username =null;
private static String password =null;
static{
try{
InputStream in = jdbcutils.class.getClassLoader().getResourceAsStream("db.properties");
Properties properties = new Properties();
properties.load(in);
driver = properties.getProperty("driver");
url = properties.getProperty("url");
username = properties.getProperty("username");
password = properties.getProperty("password");
//加载驱动
Class.forName(driver);
} catch (IOException | ClassNotFoundException e) {
e.printStackTrace();
}
}
//获取连接
public static Connection getConnection() throws SQLException {
DriverManager.getConnection(url,username,password);
return null;
}
//释放资源
public static void release(Connection conn, Statement st, ResultSet rs) throws SQLException {
if(rs!=null){
rs.close();
}
if(st!=null){
st.close();
}
if(conn!=null){
conn.close();
}
}
}
//db.properties
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/ssm?useUnicode=true&characterEncoding=utf8&useSSL=false
username=root
password=123
//增
package jdbcdemo;
import jdbcdemo.util.jdbcutils;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class testinsert {
public static void main(String[] args) throws SQLException {
Connection conn=null;
Statement st=null;
ResultSet rs =null;
try {
conn = jdbcutils.getConnection();
st=conn.createStatement();
String sql="INSERT INTO `ssm`.`t-customer`" +
" (`id`," +
" `NAME`," +
" `gender`," +
" `telephone`," +
" `address`)" +
"VALUES ('3'," +
" '徐源'," +
" '男'," +
" '123456789'," +
" '蓝田');";
int i = st.executeUpdate(sql);
if(i>0){
System.out.println("插入成功");
}
} catch (SQLException e) {
e.printStackTrace();
}finally {
jdbcutils.release(conn,st,rs);
}
}
}
//改
package jdbcdemo;
import jdbcdemo.util.jdbcutils;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class updata {
public static void main(String[] args) {
Connection conn=null;
Statement st=null;
ResultSet rs=null;
try {
conn= jdbcutils.getConnection();
st=conn.createStatement();
String sql="UPDATE `t-customer` SET `NAME`=\"李四\",`gender`=\"男\" WHERE id=1";
int i = st.executeUpdate(sql);
if(i>0){
System.out.println("修改成功");
}
} catch (SQLException throwables) {
throwables.printStackTrace();
}finally{
try {
jdbcutils.release(conn,st,rs);
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
}
}
//查
package jdbcdemo.util;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class testselect {
public static void main(String[] args) throws SQLException {
Connection conn=null;
Statement st =null;
ResultSet rs =null;
try {
conn = jdbcutils.getConnection();
st= conn.createStatement();
//sql
String sql="SELECT *FROM `t-customer`";
rs = st.executeQuery(sql);
while(rs.next()){
System.out.println(rs.getString("NAME"));
}
} catch (SQLException throwables) {
throwables.printStackTrace();
}finally {rs.close();
st.close();
conn.close();
}
}
}
sql注入问题
preparedStatement
删除操作
IDEr连接
找到databatis然后添加,找到
如果失败就是jar包的版本问题
上一篇: Guava Cache实现本地缓存
下一篇: linux stat