java 获取SQL查询语句返回的结果

如题所述

step1:构造连接
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/db","root","123");

step2:构造语句
String sql = "select username,password from t_user where username=?";
PreparedStatement stmt = con.prepareStatement(sql);
stmt.setString(1, "zhangshan"); //给SQL的"?"(问号)传值。

step3:执行查询
ResultSet rs = stmt.executeQuery(); //rs就是SQL查询语句返回的结果集

step4:处理结果(java 获取SQL查询语句返回的结果)
List list = new ArrayList();
//遍历结果集,这样写就可以了,就是一个循环,有多少条记录,这里就会循环多少次,
//一次就是一条记录,想像一下就像一个表的一条记录
//在这里可以做查询出来的数据处理,可以封装成对象之类的(就是把值给它)
if(rs.next()) { //遍历结果集,这样写就可以了
User u = new User();
String username = rs.getString("username");
String address = rs.getString("password ");
u.setUsername(username);
u.setAddress(address);
list.add(u);
}
//上面这个例子意思是,把每一条记录封装成了一个User对象,然后这些User对象都放存入到了一个list

step4:关闭连接等
温馨提示:内容为网友见解,仅供参考
第1个回答  2017-08-22
在Java中,获得ResultSet的总行数的方法有以下几种。
第一种:利用ResultSet的getRow方法来获得ResultSet的总行数
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet rset = stmt.executeQuery("select * from yourTableName");
rset.last();
int rowCount = rset.getRow(); //获得ResultSet的总行数
第二种:利用循环ResultSet的元素来获得ResultSet的总行数
ResultSet rset = stmt.executeQuery("select * from yourTableName");
int rowCount = 0;
while(rset.next()) {
rowCount++;}rowCount就是ResultSet的总行数。
第三种:利用sql语句中的count函数获得ResultSet的总行数
ResultSet rset = stmt.executeQuery("select count(*) totalCount from yourTableName");
int rowCount = 0;
if(rset.next()) {
rowCount=rset .getInt("totalCount ");}rowCount就是ResultSet的总行数。
middot;*****************************************************************************************************************
middot;Java中获得ResultSet的总列数是非常简单事情,因为Java中ResultSet提供了ResultSetMetaData工具类,ResultSetMetaData是ResultSet的元数据的集合说明。
java获得ResultSet总列数的代码如下:
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet rset = stmt.executeQuery("select * from yourtable");
ResultSetMetaData rsmd = rset.getMetaData() ;
columnCount就是ResultSet的总列数。
第2个回答  2013-03-29
您好,提问者:
使用占位符的JDBC增删改查:http://hanchaohan.blog.51cto.com/2996417/925308

java 获取SQL查询语句返回的结果?
"(问号)传值。\\x0d\\x0a\\x0d\\x0astep3:执行查询\\x0d\\x0aResultSet rs = stmt.executeQuery(); \/\/rs就是SQL查询语句返回的结果集\\x0d\\x0a\\x0d\\x0astep4:处理结果(java 获取SQL查询语句返回的结果)\\x0d\\x0a List list = new ArrayList();...

java 获取SQL查询语句返回的结果
stmt.setString(1, "zhangshan"); \/\/给SQL的"?"(问号)传值。step3:执行查询 ResultSet rs = stmt.executeQuery(); \/\/rs就是SQL查询语句返回的结果集 step4:处理结果(java 获取SQL查询语句返回的结果)List list = new ArrayList();\/\/遍历结果集,这样写就可以了,就是一个循环,有多少条记...

如何在java中获得sql查询结果数量
(1)首先使用last()方法,将数据库游标定位到记录集的最后一行。(2)使用getRow()方法,返回记录集最后一行的行索引。该索引就等于记录集所包含记录的个数,也就是记录集的行数。getRow()方法是在JDBC API 2.0中才定义的,在JDBC API 1.0中没有这个方法。--- SELECT count(*) FROM table 的...

在java中如何获得SQL语句查询结果的字符串
首先你要学会jdbc连接数据库。其次是sql语句的问题,你要回写更新语句。所以你的业务流程是这样的。从文本框取值到后端,jdbc连接数据库,sql语句写入。

使用Java反射获取MyBatis中的SQL语句?
使用反射API,从映射器接口获取SQL语句。下面的示例代码展示了如何从UserMapper接口获取名为selectUser的SQL语句:import org.apache.ibatis.io.Resources;import org.apache.ibatis.session.SqlSessionFactory;import org.apache.ibatis.session.SqlSessionFactoryBuilder;import java.io.InputStream;public class My...

java中怎么把sql查询出的结果赋值给一个变量?
Money=rst.getString("Money");\/\/将得到第一个值\\x0d\\x0a}\\x0d\\x0a如果使用下面语句\\x0d\\x0awhile(rst.next()){ \/\/有下一个值存在,while循环将继续,那么User_Money连续被赋值\\x0d\\x0aUser_Money=rst.getString("Money");\/\/将得到第三个值\\x0d\\x0a} ...

java如何用正则表达式获取sql报错内容
其基本功能是在x中查找pattern,如果能找到返回true否则返回false,这里的可选参数match_option可以有如下几种形式:‘c’ 表明进行匹配时区分大小写(这也是默认选项)。‘i’ 表明在匹配时不区分大小写。‘n’ 表明允许使用匹配任何字符串的元数据,即’.'。‘m’将x作为一个包含多行的字符串。以下...

java如何获取SQL查询结果集中的行数和列数
0;while(rset.next()) {rowCount++;}rowCount就是ResultSet的总行数。第三种:利用sql语句中的count函数获得ResultSet的总行数ResultSet rset = stmt.executeQuery("select count(*) totalCount from yourTableName");int rowCount = 0;if(rset.next()) {rowCount=rset .getInt("totalCount ");...

java sql select 语句得到的结果为什么总是无。。?
哥们 你方法用错啦 api原话。getRow int getRow()throws SQLException检索当前行编号。第一行为 1 号,第二行为 2 号,依此类推。返回:当前行的编号;如果不存在当前行,则返回 0 抛出:SQLException - 如果发生数据库访问错误 从以下版本开始:1.2 ...

java 执行一条sql语句返回多个字段
stmt.setstring(1,"男");这句是将第一个占位符,也就是查询语句中的“?”,设置为“男”resultset rs = stmt.executequery();这句定义一个结果集,这个结果集合就是执行了sql以后得到的内容

相似回答