背景:
先交代下背景吧,上周写一个查询的时候,用sql直接在数据库查询显示的是一个数值,但经过代码之后,postman调用接口得到的是一种乱码,于是乎就想到了用jdbc直接访问数据库,查看返回的数据是否是乱码的。
jdbc访问数据库的demo:
将jdbc访问数据库的demo贴到这里,以便后期使用方面。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class demo {
public static void main(String[] args) throws Exception {
//要连接的数据库URL
String url = "jdbc:mysql://。。。";
//连接的数据库时使用的用户名
String username = "root";
//连接的数据库时使用的密码
String password = "root";
//1.加载驱动
Class.forName("com.mysql.jdbc.Driver");
//2.获取与数据库的链接
Connection conn = DriverManager.getConnection(url, username, password);
//3.获取用于向数据库发送sql语句的statement
Statement st = conn.createStatement();
String sql = "";
//4.向数据库发sql,并获取代表结果集的resultset
ResultSet rs = st.executeQuery(sql);
//5.取出结果集的数据
while(rs.next()){
System.out.println("id=" + rs.getObject("id").toString());
System.out.println("name=" + rs.getObject("name").toString());
System.out.println("per_capita=" + rs.getBigDecimal("per_capita"));//因为这个数据是大数据类型的,getObject后就乱码了,用getBigDecimal不乱码
}
//6.关闭链接,释放资源
rs.close();
st.close();
conn.close();
}
}
这种访问数据库的方式虽然原始,但是可以根据这种简单直接的方式查询到一些问题所在。