java链java连接mysql数据库库错误,不知道问题在哪 ,大神帮忙看看 问题出在哪里了,应该怎样才能解决,

java用jxl把mysql数据库里的数据导出到Excel,但是excel里没有数据
不知道是哪里出错了,运行时也显示成功了,,但是打开excel,里边内容显示不出来,不知道是为什么?求大神帮忙!!谢谢!!
import&java.sql.*;
import&java.sql.C
import&java.sql.DriverM
import&java.sql.PreparedS
import&java.sql.ResultS
import&java.sql.SQLE
import&java.sql.S
public&class&DbManage&{
String&driver&=&"com.mysql.jdbc.Driver";
String&url&=&"jdbc:mysql://182.92.70.71:3306/data_sale";
Connection&connect&=&
ResultSet&rs&=&
public&void&DataBase(){
Class.forName(driver);
connect&=&DriverManager.getConnection(url,"lichao","q2w3e$lichao");
System.out.println("加载驱动成功");
System.out.println("连接数据库服务器成功");
catch(Exception&e){
System.out.println("加载驱动失败");
e.printStackTrace();
Statement&stmt&=&connect.createStatement();
ResultSet&rs&=&stmt.executeQuery("select&*&from&tb_sign_user");
while(rs.next()){
System.out.println("----------------------------------------");
System.out.println("编&&&&&号:"+"\t"+rs.getString("acid"));
System.out.println("姓&&&&&名:"+"\t"+rs.getString("name"));
System.out.println("电话号:"+"\t"+rs.getString("phone"));
System.out.println(rs.getString("openid"));
System.out.println("备&&&&&注:"+"\t"+rs.getString("info"));
System.out.println("登陆时间:"+"\t"+rs.getString("signtime"));
System.out.println("----------------------------------------");
//System.out.println("\n");
catch(Exception&e){
System.out.print("对不起,数据出错");
e.printStackTrace();
public&ResultSet&&Search(String&sql,&String&str[])&{
DataBase();
&&&&&&&&try&{
&&&&&&&&&&&&PreparedStatement&pst&=connect.prepareStatement(sql);
&&&&&&&&&&&&if&(str&!=&null)&{
&&&&&&&&&&&&&&&&for&(int&i&=&0;&i&&&str.&i++)&{
&&&&&&&&&&&&&&&&&&&&pst.setString(i&+&1,&str[i]);
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&}
&&&&&&&&&&&&rs&=&pst.executeQuery();
&&&&&&&&}&catch&(Exception&e)&{
&&&&&&&&&&&&//&TODO&Auto-generated&catch&block
&&&&&&&&&&&&e.printStackTrace();
&&&&&&&&return&
import&java.io.F
import&java.util.L
import&entity.TbSignU
import&service.DbS
import&jxl.W
import&jxl.write.L
import&jxl.write.WritableS
import&jxl.write.WritableW
public&class&MysqlToExcel&{
public&static&void&main(String[]&args){
WritableWorkbook&wwb&=&
String&fileName&=&"E:/boo.xls";
File&file&=&new&File(fileName);
if(!file.exists()){
file.createNewFile();
wwb&=&Workbook.createWorkbook(file);
WritableSheet&ws&=&wwb.createSheet("客户信息表",&0);
List&TbSignUser&&list&=&DbService.getAllByDatabase();
String&cmd[]={"explorer.exe",&"E:\\"};&&&
Process&p&=&Runtime.getRuntime().exec(cmd);
Label&labelAcid&=&new&Label(0,0,"编号(acid)");
Label&labelName&=&new&Label(0,0,"姓名(name)");
Label&labelPhone&=&new&Label(0,0,"电话号码(phone)");
Label&labelOpenid&=&new&Label(0,0,"Openid(Openid)");
Label&labelInfo&=&new&Label(0,0,"备注(info)");
Label&labelSigntime&=&new&Label(0,0,"登陆时间(signtime)");
ws.addCell(labelAcid);
ws.addCell(labelName);
ws.addCell(labelPhone);
ws.addCell(labelOpenid);
ws.addCell(labelInfo);
ws.addCell(labelSigntime);
for(int&i&=&0;&i&&&list.size();){
Label&labelAcid_i&=&new&Label(0,i+1,list.get(i).getAcid()+"");
Label&labelName_i&=&new&Label(1,i+1,list.get(i).getName()+"");
Label&labelPhone_i&=&new&Label(2,i+1,list.get(i).getPhone()+"");
Label&labelOpenid_i&=&new&Label(3,i+1,list.get(i).getOpenid()+"");
Label&labelInfo_i&=&new&Label(4,i+1,list.get(i).getInfo()+"");
Label&labelSigntime_i&=&new&Label(5,i+1,""+list.get(i).getSigntime());
ws.addCell(labelAcid_i);
ws.addCell(labelName_i);
ws.addCell(labelPhone_i);
ws.addCell(labelOpenid_i);
ws.addCell(labelInfo_i);
ws.addCell(labelSigntime_i);
wwb.write();
wwb.close();
}catch(Exception&e){
e.printStackTrace();
import&java.io.F
import&java.sql.ResultS
import&java.sql.SQLE
import&java.util.ArrayL
import&java.util.L
import&jxl.S
import&jxl.W
import&database.DbM
import&entity.TbSignU
public&class&DbService&{
public&static&List&TbSignUser&&getAllByDatabase(){
List&TbSignUser&&list&=&new&ArrayList&TbSignUser&();
DbManage&cmsl&=&new&DbManage();
String&sql&=&"select&*&from&tb_sign_user";
ResultSet&rs&=&cmsl.Search(sql,null);
while&(rs.next()){
String&acid&=&rs.getString("acid");
String&name&=&rs.getString("name");
String&phone&=&rs.getString("phone");
String&openid&=&rs.getString("openid");
String&info&=&rs.getString("info");
int&signtime&=&rs.getInt("signtime");
list.add(new&TbSignUser(acid,name,phone,openid,info,signtime));
}catch(SQLException&e){
e.printStackTrace();
public&static&List&TbSignUser&&getAllByExcel(String&file){
List&TbSignUser&&list&=&new&ArrayList&TbSignUser&();
Workbook&rwb&=&Workbook.getWorkbook(new&File(file));
Sheet&rs&=&rwb.getSheet("Test&Shee&1");
int&clos&=&rs.getColumns();
int&rows&=&rs.getRows();
System.out.println(clos+"rows:"+rows);
for(int&i&=&1;i&&&i++){
for(int&j&=&0;j&&&j++){
String&acid&=&rs.getCell(j++,i).getContents();
String&name&=&rs.getCell(j++,i).getContents();
String&phone&=&rs.getCell(j++,i).getContents();
String&openid&=&rs.getCell(j++,i).getContents();
String&info&=&rs.getCell(j++,i).getContents();
String&signtime&=&rs.getCell(j++,i).getContents();
System.out.println("编号:"+acid+"&姓名:"+name+"&电话号码:"+phone+"&登陆id:"+openid+"&备注:"+info+"登陆时间:"+signtime);
list.add(new&TbSignUser(acid,name,phone,openid,info,Integer.parseInt(signtime)));
}catch(Exception&e){
e.printStackTrace();
&public&static&boolean&isExist(String&acid){
&&&&&&&&try&{
&&&&&&&&&&&&DbManage&db=new&DbManage();
&&&&&&&&&&&&ResultSet&rs=db.Search("select&*&from&tb_sign_user&where&acid=?",&new&String[]{acid+""});
&&&&&&&&&&&&if&(rs.next())&{
&&&&&&&&&&&&&&&&return&
&&&&&&&&&&&&}
&&&&&&&&}&catch&(SQLException&e)&{
&&&&&&&&&&&&e.printStackTrace();
&&&&&&&&return&
&&&&public&static&void&main(String[]&args)&{
&&&&&&&&System.out.println(isExist("1"));
-------------------------------
没数据有标题没有,跟踪一下看数据库取到数据了没有
-------------------------------
引用&1&楼&qnmdcsdn&的回复:
没数据有标题没有,跟踪一下看数据库取到数据了没有
我看了下最后一个代码,已经修改了sql语句“select&*&from&tb_sign_user&order&by&acid&”但是运行还是有错误
-------------------------------
重新把SQL语句写了一下,,但是运行不成功,出现了
-------------------------------
&&List&TbSignUser&&list&=&DbService.getAllByDatabase();&&
看下上面这句有没有取到数据,并且数据对不对。
-------------------------------
MysqlToExcel.java&里面的24行.
-------------------------------
引用&4&楼&dcxy0&的回复:
&&List&TbSignUser&&list&=&DbService.getAllByDatabase();&&
看下上面这句有没有取到数据,并且数据对不对。
我的数据库是data_sale,表是tb_sign_user,,,
那我应该写成&List&TbSignUser&&list&=&DbService.getAllByDataSale()&;&&,对吗??&&
-------------------------------
第一个是java连接Mysql数据库的
import&java.sql.*;
import&java.sql.C
import&java.sql.DriverM
import&java.sql.PreparedS
import&java.sql.ResultS
import&java.sql.SQLE
import&java.sql.S
public&class&DbManage&{
String&driver&=&"com.mysql.jdbc.Driver";
String&url&=&"jdbc:mysql://182.92.70.71:3306/data_sale";
Connection&connect&=&
ResultSet&rs&=&
public&void&DataSale(){
Class.forName(driver);
connect&=&DriverManager.getConnection(url,"lichao","q2w3e$lichao");
System.out.println("加载驱动成功");
System.out.println("连接数据库服务器成功");
catch(Exception&e){
System.out.println("加载驱动失败");
e.printStackTrace();
Statement&stmt&=&connect.createStatement();
ResultSet&rs&=&stmt.executeQuery("select&*&from&tb_sign_user&order&by&acid&");
while(rs.next()){
System.out.println("----------------------------------------");
System.out.println("编&&&&&号:"+"\t"+rs.getString("acid"));
System.out.println("姓&&&&&名:"+"\t"+rs.getString("name"));
System.out.println("电话号:"+"\t"+rs.getString("phone"));
System.out.println(rs.getString("openid"));
System.out.println("备&&&&&注:"+"\t"+rs.getString("info"));
System.out.println("登陆时间:"+"\t"+rs.getString("signtime"));
System.out.println("----------------------------------------");
//System.out.println("\n");
catch(Exception&e){
System.out.print("对不起,数据出错");
e.printStackTrace();
public&ResultSet&&Search(String&sql,&String&str[])&{
DataSale();
&&&&&&&&try&{
&&&&&&&&&&&&PreparedStatement&pst&=connect.prepareStatement(sql);
&&&&&&&&&&&&if&(str&!=&null)&{
&&&&&&&&&&&&&&&&for&(int&i&=&0;&i&&&str.&i++)&{
&&&&&&&&&&&&&&&&&&&&pst.setString(i&+&1,&str[i]);
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&}
&&&&&&&&&&&&rs&=&pst.executeQuery();
&&&&&&&&}&catch&(Exception&e)&{
&&&&&&&&&&&&e.printStackTrace();
&&&&&&&&return&
第二个是&Java实现Excel导入数据
import&java.io.F
import&java.sql.ResultS
import&java.sql.SQLE
import&java.util.ArrayL
import&java.util.L
import&jxl.S
import&jxl.W
import&database.DbM
import&entity.TbSignU
public&class&DbService&{
public&static&List&TbSignUser&&getAllByDataSale(){
List&TbSignUser&&list&=&new&ArrayList&TbSignUser&();
DbManage&cmsl&=&new&DbManage();
String&sql&=&"select&*&from&tb_sign_user";
ResultSet&rs&=&cmsl.Search(sql,null);
while&(rs.next()){
String&acid&=&rs.getString("acid");
String&name&=&rs.getString("name");
String&phone&=&rs.getString("phone");
String&openid&=&rs.getString("openid");
String&info&=&rs.getString("info");
int&signtime&=&rs.getInt("signtime");
list.add(new&TbSignUser(acid,name,phone,openid,info,signtime));
}catch(SQLException&e){
e.printStackTrace();
public&static&List&TbSignUser&&getAllByExcel(String&file){
List&TbSignUser&&list&=&new&ArrayList&TbSignUser&();
Workbook&rwb&=&Workbook.getWorkbook(new&File(file));
Sheet&rs&=&rwb.getSheet("Test&Shee&1");
int&clos&=&rs.getColumns();
int&rows&=&rs.getRows();
System.out.println(clos+"rows:"+rows);
for(int&i&=&1;i&&&i++){
for(int&j&=&0;j&&&j++){
String&acid&=&rs.getCell(j++,i).getContents();
String&name&=&rs.getCell(j++,i).getContents();
String&phone&=&rs.getCell(j++,i).getContents();
String&openid&=&rs.getCell(j++,i).getContents();
String&info&=&rs.getCell(j++,i).getContents();
String&signtime&=&rs.getCell(j++,i).getContents();
System.out.println("编号:"+acid+"&姓名:"+name+"&电话号码:"+phone+"&登陆id:"+openid+"&备注:"+info+"登陆时间:"+signtime);
list.add(new&TbSignUser(acid,name,phone,openid,info,Integer.parseInt(signtime)));
}catch(Exception&e){
e.printStackTrace();
&public&static&boolean&isExist(String&acid){
&&&&&&&&try&{
&&&&&&&&&&&&DbManage&db=new&DbManage();
&&&&&&&&&&&&ResultSet&rs=db.Search("select&*&from&tb_sign_user&order&by&acid&",&new&String[]{acid+""});
&&&&&&&&&&&&if&(rs.next())&{
&&&&&&&&&&&&&&&&return&
&&&&&&&&&&&&}
&&&&&&&&}&catch&(SQLException&e)&{
&&&&&&&&&&&&e.printStackTrace();
&&&&&&&&return&
&&&&public&static&void&main(String[]&args)&{
&&&&&&&&System.out.println(isExist("1"));&&&
第三个是实现Mysql数据导出Excel表格
import&java.io.F
import&java.util.L
import&entity.TbSignU
import&service.DbS
import&jxl.W
import&jxl.write.L
import&jxl.write.WritableS
import&jxl.write.WritableW
public&class&MysqlToExcel&{
public&static&void&main(String[]&args){
WritableWorkbook&wwb&=&
String&fileName&=&"E:/客户信息表.xls";
File&file&=&new&File(fileName);
if(!file.exists()){
file.createNewFile();
wwb&=&Workbook.createWorkbook(file);
WritableSheet&ws&=&wwb.createSheet("客户信息表",&0);
List&TbSignUser&&list&=&DbService.getAllByDataSale();
String&cmd[]={"explorer.exe",&"E:\\"};&&&
Process&p&=&Runtime.getRuntime().exec(cmd);
Label&labelAcid&=&new&Label(0,0,"编号(acid)");
Label&labelName&=&new&Label(0,0,"姓名(name)");
Label&labelPhone&=&new&Label(0,0,"电话号码(phone)");
Label&labelOpenid&=&new&Label(0,0,"Openid(Openid)");
Label&labelInfo&=&new&Label(0,0,"备注(info)");
Label&labelSigntime&=&new&Label(0,0,"登陆时间(signtime)");
ws.addCell(labelAcid);
ws.addCell(labelName);
ws.addCell(labelPhone);
ws.addCell(labelOpenid);
ws.addCell(labelInfo);
ws.addCell(labelSigntime);
for(int&i&=&0;&i&&&list.size();){
Label&labelAcid_i&=&new&Label(0,i+1,list.get(i).getAcid()+"");
Label&labelName_i&=&new&Label(1,i+1,list.get(i).getName()+"");
Label&labelPhone_i&=&new&Label(2,i+1,list.get(i).getPhone()+"");
Label&labelOpenid_i&=&new&Label(3,i+1,list.get(i).getOpenid()+"");
Label&labelInfo_i&=&new&Label(4,i+1,list.get(i).getInfo()+"");
Label&labelSigntime_i&=&new&Label(5,i+1,""+list.get(i).getSigntime());
ws.addCell(labelAcid_i);
ws.addCell(labelName_i);
ws.addCell(labelPhone_i);
ws.addCell(labelOpenid_i);
ws.addCell(labelInfo_i);
ws.addCell(labelSigntime_i);
wwb.write();
wwb.close();
}catch(Exception&e){
e.printStackTrace();
运行出错,excel打开就这样:
-------------------------------
数据库结构:
-------------------------------
引用&2&楼&Cai_CaiD&的回复:
Quote: 引用&1&楼&qnmdcsdn&的回复:
没数据有标题没有,跟踪一下看数据库取到数据了没有
我看了下最后一个代码,已经修改了sql语句“select&*&from&tb_sign_user&order&by&acid&”但是运行还是有错误
&public&static&boolean&isExist(String&acid){
&&&&&&&&&&&&try&{
&&&&&&&&&&&&&&&&DbManage&db=new&DbManage();
&&&&&&&&&&&&&&&&ResultSet&rs=db.Search("select&*&from&tb_sign_user&where&acid=?",&new&String[]{acid+""});
&&&&&&&&&&&&&&&&if&(rs.next())&{
&&&&&&&&&&&&&&&&&&&&return&
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&}&catch&(SQLException&e)&{
&&&&&&&&&&&&&&&&e.printStackTrace();
&&&&&&&&&&&&}
&&&&&&&&&&&&return&
acid传空进来了吧
-------------------------------
引用&9&楼&qnmdcsdn&的回复:
Quote: 引用&2&楼&Cai_CaiD&的回复:
Quote: 引用&1&楼&qnmdcsdn&的回复:
没数据有标题没有,跟踪一下看数据库取到数据了没有
我看了下最后一个代码,已经修改了sql语句“select&*&from&tb_sign_user&order&by&acid&”但是运行还是有错误
&public&static&boolean&isExist(String&acid){
&&&&&&&&&&&&try&{
&&&&&&&&&&&&&&&&DbManage&db=new&DbManage();
&&&&&&&&&&&&&&&&ResultSet&rs=db.Search("select&*&from&tb_sign_user&where&acid=?",&new&String[]{acid+""});
&&&&&&&&&&&&&&&&if&(rs.next())&{
&&&&&&&&&&&&&&&&&&&&return&
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&}&catch&(SQLException&e)&{
&&&&&&&&&&&&&&&&e.printStackTrace();
&&&&&&&&&&&&}
&&&&&&&&&&&&return&
acid传空进来了吧
现在就是这个程序能运行成功,,就是excel是被锁住了,,打开没有数据
-------------------------------
是不是没有释放流
-------------------------------
引用&11&楼&huihuiyexing&的回复:
是不是没有释放流
这是什么意思?我应该怎么查看一下?
-------------------------------
&public&ResultSet&&Search(String&sql,&String&str[])&{
&&&&&&&&DataBase();
&&&&&&&&try&{
&&&&&&&&&&&&PreparedStatement&pst&=connect.prepareStatement(sql);
&&&&&&&&&&&&if&(str&!=&null)&{
&&&&&&&&&&&&&&&&for&(int&i&=&0;&i&&&str.&i++)&{
&&&&&&&&&&&&&&&&&&&&pst.setString(i&+&1,&str[i]);
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&}
&&&&&&&&&&&&rs&=&pst.executeQuery();
&&&&&&&&}&catch&(Exception&e)&{
&&&&&&&&&&&&//&TODO&Auto-generated&catch&block
&&&&&&&&&&&&e.printStackTrace();
&&&&&&&&return&
这段代码是准备干嘛?
查询数据库?
查询数据库用setString()方法又是干嘛?
这是你导致Parameter&index&out&of&range&(1&&&number&of&parameters,&which&is&0).&的原因
-------------------------------
引用&13&楼&ITjavaman&的回复:
&public&ResultSet&&Search(String&sql,&String&str[])&{
&&&&&&&&DataBase();
&&&&&&&&try&{
&&&&&&&&&&&&PreparedStatement&pst&=connect.prepareStatement(sql);
&&&&&&&&&&&&if&(str&!=&null)&{
&&&&&&&&&&&&&&&&for&(int&i&=&0;&i&&&str.&i++)&{
&&&&&&&&&&&&&&&&&&&&pst.setString(i&+&1,&str[i]);
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&}
&&&&&&&&&&&&rs&=&pst.executeQuery();
&&&&&&&&}&catch&(Exception&e)&{
&&&&&&&&&&&&//&TODO&Auto-generated&catch&block
&&&&&&&&&&&&e.printStackTrace();
&&&&&&&&return&
这段代码是准备干嘛?
查询数据库?
查询数据库用setString()方法又是干嘛?
这是你导致Parameter&index&out&of&range&(1&&&number&of&parameters,&which&is&0).&的原因
这个代码是跟另一个代码进行传参,
public&static&List&TbSignUser&&getAllByDataSale(){
List&TbSignUser&&list&=&new&ArrayList&TbSignUser&();
DbManage&db&=&new&DbManage();
String&sql&=&"select&*&from&tb_sign_user";
ResultSet&rs&=&db.Search(sql,null);
while&(rs.next()){
String&acid&=&rs.getString("acid");
String&name&=&rs.getString("name");
String&phone&=&rs.getString("phone");
String&openid&=&rs.getString("openid");
String&info&=&rs.getString("info");
int&signtime&=&rs.getInt("signtime");
list.add(new&TbSignUser(acid,name,phone,openid,info,signtime));
}catch(SQLException&e){
e.printStackTrace();
if判断str[]值死否为空,不为空进入for语句,pst.setString(i&+&1,&str[i]);是给第i个赋值,再把值传回&rs,进行while&(rs.next())读取数据,,我是怎么想的,,不知道对不对
-------------------------------
引用&14&楼&Cai_CaiD&的回复:
Quote: 引用&13&楼&ITjavaman&的回复:
&public&ResultSet&&Search(String&sql,&String&str[])&{
&&&&&&&&DataBase();
&&&&&&&&try&{
&&&&&&&&&&&&PreparedStatement&pst&=connect.prepareStatement(sql);
&&&&&&&&&&&&if&(str&!=&null)&{
&&&&&&&&&&&&&&&&for&(int&i&=&0;&i&&&str.&i++)&{
&&&&&&&&&&&&&&&&&&&&pst.setString(i&+&1,&str[i]);
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&}
&&&&&&&&&&&&rs&=&pst.executeQuery();
&&&&&&&&}&catch&(Exception&e)&{
&&&&&&&&&&&&//&TODO&Auto-generated&catch&block
&&&&&&&&&&&&e.printStackTrace();
&&&&&&&&return&
这段代码是准备干嘛?
查询数据库?
查询数据库用setString()方法又是干嘛?
这是你导致Parameter&index&out&of&range&(1&&&number&of&parameters,&which&is&0).&的原因
这个代码是跟另一个代码进行传参,
public&static&List&TbSignUser&&getAllByDataSale(){
List&TbSignUser&&list&=&new&ArrayList&TbSignUser&();
DbManage&db&=&new&DbManage();
String&sql&=&"select&*&from&tb_sign_user";
ResultSet&rs&=&db.Search(sql,null);
while&(rs.next()){
String&acid&=&rs.getString("acid");
String&name&=&rs.getString("name");
String&phone&=&rs.getString("phone");
String&openid&=&rs.getString("openid");
String&info&=&rs.getString("info");
int&signtime&=&rs.getInt("signtime");
list.add(new&TbSignUser(acid,name,phone,openid,info,signtime));
}catch(SQLException&e){
e.printStackTrace();
if判断str[]值死否为空,不为空进入for语句,pst.setString(i&+&1,&str[i]);是给第i个赋值,再把值传回&rs,进行while&(rs.next())读取数据,,我是怎么想的,,不知道对不对
哥,你的pst是&PreparedStatement&对象,&PreparedStatement&的setString()一般是插入数据的时候用的,
查询的时候是不能用的,我的意思是这个
-------------------------------
引用&15&楼&ITjavaman&的回复:
Quote: 引用&14&楼&Cai_CaiD&的回复:
Quote: 引用&13&楼&ITjavaman&的回复:
&public&ResultSet&&Search(String&sql,&String&str[])&{
&&&&&&&&DataBase();
&&&&&&&&try&{
&&&&&&&&&&&&PreparedStatement&pst&=connect.prepareStatement(sql);
&&&&&&&&&&&&if&(str&!=&null)&{
&&&&&&&&&&&&&&&&for&(int&i&=&0;&i&&&str.&i++)&{
&&&&&&&&&&&&&&&&&&&&pst.setString(i&+&1,&str[i]);
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&}
&&&&&&&&&&&&rs&=&pst.executeQuery();
&&&&&&&&}&catch&(Exception&e)&{
&&&&&&&&&&&&//&TODO&Auto-generated&catch&block
&&&&&&&&&&&&e.printStackTrace();
&&&&&&&&return&
这段代码是准备干嘛?
查询数据库?
查询数据库用setString()方法又是干嘛?
这是你导致Parameter&index&out&of&range&(1&&&number&of&parameters,&which&is&0).&的原因
这个代码是跟另一个代码进行传参,
public&static&List&TbSignUser&&getAllByDataSale(){
List&TbSignUser&&list&=&new&ArrayList&TbSignUser&();
DbManage&db&=&new&DbManage();
String&sql&=&"select&*&from&tb_sign_user";
ResultSet&rs&=&db.Search(sql,null);
while&(rs.next()){
String&acid&=&rs.getString("acid");
String&name&=&rs.getString("name");
String&phone&=&rs.getString("phone");
String&openid&=&rs.getString("openid");
String&info&=&rs.getString("info");
int&signtime&=&rs.getInt("signtime");
list.add(new&TbSignUser(acid,name,phone,openid,info,signtime));
}catch(SQLException&e){
e.printStackTrace();
if判断str[]值死否为空,不为空进入for语句,pst.setString(i&+&1,&str[i]);是给第i个赋值,再把值传回&rs,进行while&(rs.next())读取数据,,我是怎么想的,,不知道对不对
哥,你的pst是&PreparedStatement&对象,&PreparedStatement&的setString()一般是插入数据的时候用的,
查询的时候是不能用的,我的意思是这个
那我应该怎么弄?是把它注释掉吗,还是怎么做?
-------------------------------
引用&16&楼&Cai_CaiD&的回复:
Quote: 引用&15&楼&ITjavaman&的回复:
Quote: 引用&14&楼&Cai_CaiD&的回复:
Quote: 引用&13&楼&ITjavaman&的回复:
&public&ResultSet&&Search(String&sql,&String&str[])&{
&&&&&&&&DataBase();
&&&&&&&&try&{
&&&&&&&&&&&&PreparedStatement&pst&=connect.prepareStatement(sql);
&&&&&&&&&&&&if&(str&!=&null)&{
&&&&&&&&&&&&&&&&for&(int&i&=&0;&i&&&str.&i++)&{
&&&&&&&&&&&&&&&&&&&&pst.setString(i&+&1,&str[i]);
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&}
&&&&&&&&&&&&rs&=&pst.executeQuery();
&&&&&&&&}&catch&(Exception&e)&{
&&&&&&&&&&&&//&TODO&Auto-generated&catch&block
&&&&&&&&&&&&e.printStackTrace();
&&&&&&&&return&
这段代码是准备干嘛?
查询数据库?
查询数据库用setString()方法又是干嘛?
这是你导致Parameter&index&out&of&range&(1&&&number&of&parameters,&which&is&0).&的原因
这个代码是跟另一个代码进行传参,
public&static&List&TbSignUser&&getAllByDataSale(){
List&TbSignUser&&list&=&new&ArrayList&TbSignUser&();
DbManage&db&=&new&DbManage();
String&sql&=&"select&*&from&tb_sign_user";
ResultSet&rs&=&db.Search(sql,null);
while&(rs.next()){
String&acid&=&rs.getString("acid");
String&name&=&rs.getString("name");
String&phone&=&rs.getString("phone");
String&openid&=&rs.getString("openid");
String&info&=&rs.getString("info");
int&signtime&=&rs.getInt("signtime");
list.add(new&TbSignUser(acid,name,phone,openid,info,signtime));
}catch(SQLException&e){
e.printStackTrace();
if判断str[]值死否为空,不为空进入for语句,pst.setString(i&+&1,&str[i]);是给第i个赋值,再把值传回&rs,进行while&(rs.next())读取数据,,我是怎么想的,,不知道对不对
哥,你的pst是&PreparedStatement&对象,&PreparedStatement&的setString()一般是插入数据的时候用的,
查询的时候是不能用的,我的意思是这个
那我应该怎么弄?是把它注释掉吗,还是怎么做?
注释掉试试
-------------------------------
引用&17&楼&ITjavaman&的回复:
Quote: 引用&16&楼&Cai_CaiD&的回复:
Quote: 引用&15&楼&ITjavaman&的回复:
Quote: 引用&14&楼&Cai_CaiD&的回复:
Quote: 引用&13&楼&ITjavaman&的回复:
&public&ResultSet&&Search(String&sql,&String&str[])&{
&&&&&&&&DataBase();
&&&&&&&&try&{
&&&&&&&&&&&&PreparedStatement&pst&=connect.prepareStatement(sql);
&&&&&&&&&&&&if&(str&!=&null)&{
&&&&&&&&&&&&&&&&for&(int&i&=&0;&i&&&str.&i++)&{
&&&&&&&&&&&&&&&&&&&&pst.setString(i&+&1,&str[i]);
&&&&&&&&&&&&&&&&}
&&&&&&&&&&&&}
&&&&&&&&&&&&rs&=&pst.executeQuery();
&&&&&&&&}&catch&(Exception&e)&{
&&&&&&&&&&&&//&TODO&Auto-generated&catch&block
&&&&&&&&&&&&e.printStackTrace();
&&&&&&&&return&
这段代码是准备干嘛?
查询数据库?
查询数据库用setString()方法又是干嘛?
这是你导致Parameter&index&out&of&range&(1&&&number&of&parameters,&which&is&0).&的原因
这个代码是跟另一个代码进行传参,
public&static&List&TbSignUser&&getAllByDataSale(){
List&TbSignUser&&list&=&new&ArrayList&TbSignUser&();
DbManage&db&=&new&DbManage();
String&sql&=&"select&*&from&tb_sign_user";
ResultSet&rs&=&db.Search(sql,null);
while&(rs.next()){
String&acid&=&rs.getString("acid");
String&name&=&rs.getString("name");
String&phone&=&rs.getString("phone");
String&openid&=&rs.getString("openid");
String&info&=&rs.getString("info");
int&signtime&=&rs.getInt("signtime");
list.add(new&TbSignUser(acid,name,phone,openid,info,signtime));
}catch(SQLException&e){
e.printStackTrace();
if判断str[]值死否为空,不为空进入for语句,pst.setString(i&+&1,&str[i]);是给第i个赋值,再把值传回&rs,进行while&(rs.next())读取数据,,我是怎么想的,,不知道对不对
哥,你的pst是&PreparedStatement&对象,&PreparedStatement&的setString()一般是插入数据的时候用的,
查询的时候是不能用的,我的意思是这个
那我应该怎么弄?是把它注释掉吗,还是怎么做?
注释掉试试
注释之后,运行能成功,但是excel还是没有数据
-------------------------------
哥,你调用了导出的方法没。。。。。。。。。。
你只是启动了DbService的main方法吧!!!
-------------------------------
引用&19&楼&ITjavaman&的回复:
哥,你调用了导出的方法没。。。。。。。。。。
你只是启动了DbService的main方法吧!!!
额。。。好像没,,,这个要怎么启动?求指导
-------------------------------
引用&20&楼&Cai_CaiD&的回复:
Quote: 引用&19&楼&ITjavaman&的回复:
哥,你调用了导出的方法没。。。。。。。。。。
你只是启动了DbService的main方法吧!!!
额。。。好像没,,,这个要怎么启动?求指导
哥这个无能为力
-------------------------------
在excel&&中数据来源可以直接从数据库内导入用的
-------------------------------
解决了吗。。。。&我用C#&导出&也是你这个问题&&&excel&被锁定&&没数据
spring MVC security
c:if中test的问题
最近在学习ssm整合,就在练手方案中遇到
spring的@Autowired无法注
spring 和redis结合的实际项目
扫描不到jar包内的注解扫描不到jar包
servlet能否实现http post
系统出现异常,异常信息为 Could n
Netty到底是个什么东西,能处理高并发
java 3des加密解密,如何去设定3
Cacti有谁在有,怎么使用?都有哪些准
我是php,学java好学吗
ApplicationContextAw
写了本MyBatis的书,已经提交书稿,
怎样将爬虫伪装像浏览器怎样将爬虫伪装像浏
ssh做整合的时候可以只用log4j不用
求WIKI相关资料
正态分布的随机数生成算法
mcg-helper--《生成model
Clone 说好的浅复制呢? 难道是我懵
eclipse离线安装maven插件还是
ORACLE的ORA-02289: 序列
问:Spring+Struts2+MyB
请教一下线程相关问题
springmvc 返回json死循环问
一个5位数,判断它是不是回文数。即123
Integer的缓存和自动拆装箱
ajax请求一直返回error
servlet.class 打不开
createNewFile报错 open
网络socket编程空指针
服务器:客户端:服务器运行时无提示,客户...
Java新手求教
本帖最后由gounuoyu8028于20...
没有错误和警告,但控制台没反应
新人求问已导入jar包还是报错java.
各位,在导了spring-webmvc-...
Bootstrap表格数据不显示
大神们,能帮我看看bootstrap t...
初学者求帮助!谢谢
想通过ajax在用户输入框后面显示判断用...
关于java工厂方法设计模式
今天学习工厂设计模式的时候,看到他实现工...
URL中包含中文的编码问题
https://zh.wikipedia...
getWriter() has alre
getWrite() 不给用,我百度下,...
java用jxl把mysql数据库里的数
不知道是哪里出错了,运行时也显示成功了,...
服务器:客户端:服务器运行时无提示,客户端运行时又是空指针异常,20行。。---...
本帖最后由gounuoyu-07-编辑一直...
就是我在dat里面获取到日期和时间的格式是 18:51:23...
-------------------------------你项目的更目录名称...
import java.util.Has...
String.addBatch(sql1);报错这是 DAOTest类impor...
各位,在导了spring-webmvc-4.3.2.Release.jar包的情...
马上要写一个用累计积分判断vip等级的小模块,除了if一个个验证,有没有更好的方...
最近有一个项目使用到了netty框架,因为客户的并发量有点高,出现了一些问题,大...
大神们,能帮我看看bootstrap table为什么数据不出来吗?我后台已经返...
18:00:551010
[{"id":null,"code":"01","name1":null,"na...
import java.util.S...
GuihihUhihojFujfjChjxjj...
2个函数不知道哪里冲突了,一个会倒计时 ,第二个 直接点击后
不会倒计...
不多BB广州电信公众号老用户特权可以申请80分钟通话时间成功的回来加分。...
想通过ajax在用户输入框后面显示判断用户是否已经注册(使用onblur事件,鼠...
今天学习工厂设计模式的时候,看到他实现工厂方法设计模式的时候说这个东西的优点就是...
引文图上标示的123前面的特殊符号,造成simplexml_load_strin...
https://zh.wikipedia.org/wiki/%E6%B1%89%...}

我要回帖

更多关于 java连接mysql数据库 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信