public class Deal
{
public ArrayList selClientByAddress(String address) {
Connection connection = getConn.getCon();//数据库连接
PreparedStatement st = null;
Statement stmt;
ResultSet rs = null;
Client client = new Client();//是一个bean
ArrayList list = new ArrayList();//用来保存client对象
String sql = "select * from client where address like '%?%'";
sql=sql.replaceFirst("\\?", address);
try {
stmt=connection.createStatement();
rs = stmt.executeQuery(sql);
while (rs.next()) {
client.setClientid(rs.getInt("clientid"));
client.setClientname(rs.getString("clientname"));
client.setPhone(rs.getString("phone"));
client.setMobile(rs.getString("mobile"));
client.setEmail(rs.getString("email"));
client.setHobby(rs.getString("hobby"));
client.setAddress(rs.getString("address"));
client.setCdescription(rs.getString("cdescription"));
list.add(client);
}
} catch (Exception e) {
}
return list;
} public static void main(String[] args) throws SQLException {
Deal deal=new Deal();
ArrayList list=deal.selClientByAddress("nt");
for(int i=0;i<list.size();i++)
{
Client client=(Client)list.get(i);
System.out.println(client.getAddress());
}
}}client (address列)表数据如下
江苏南通nt海门
江苏南通nt海安
江苏南通nt启东 问题
查询得到三条同样的记录 江苏南通nt启东 ****江苏南通nt启东****江苏南通nt启东***是什么原因?
{
public ArrayList selClientByAddress(String address) {
Connection connection = getConn.getCon();//数据库连接
PreparedStatement st = null;
Statement stmt;
ResultSet rs = null;
Client client = new Client();//是一个bean
ArrayList list = new ArrayList();//用来保存client对象
String sql = "select * from client where address like '%?%'";
sql=sql.replaceFirst("\\?", address);
try {
stmt=connection.createStatement();
rs = stmt.executeQuery(sql);
while (rs.next()) {
client.setClientid(rs.getInt("clientid"));
client.setClientname(rs.getString("clientname"));
client.setPhone(rs.getString("phone"));
client.setMobile(rs.getString("mobile"));
client.setEmail(rs.getString("email"));
client.setHobby(rs.getString("hobby"));
client.setAddress(rs.getString("address"));
client.setCdescription(rs.getString("cdescription"));
list.add(client);
}
} catch (Exception e) {
}
return list;
} public static void main(String[] args) throws SQLException {
Deal deal=new Deal();
ArrayList list=deal.selClientByAddress("nt");
for(int i=0;i<list.size();i++)
{
Client client=(Client)list.get(i);
System.out.println(client.getAddress());
}
}}client (address列)表数据如下
江苏南通nt海门
江苏南通nt海安
江苏南通nt启东 问题
查询得到三条同样的记录 江苏南通nt启东 ****江苏南通nt启东****江苏南通nt启东***是什么原因?
解决方案 »
- 求助~关于netbeans的异常对话框
- 请问:List 和 Vector的区别
- 求助,java程序 如何通过读取xml文件来对软件重新配置
- 为什么我的程序编译是就报错呢?
- 一个菜鸟的困惑
- 求core java2第二卷的源代码
- table可以在dialog中使用么?
- 抛出java.security.InvalidKeyException: Illegal key size or default parameters 怎么修改
- 求助关于【位运算】的问题
- 网页视频播放如何一边缓冲一边播放
- 谁用applet做过arcims呀? 其中有个悬浮在地图上的信息,我现在想让它换行?高手来看看了。。。。。
- 紧急求助jspsmartupload的问题!
你放到循环里面来,在这个地方当成总是指向的最后一条记录
我觉的还是 Statement的问题
Client client = new Client();//是一个bean 放到while循环里while (rs.next()) {
Client client = new Client();//放在这
client.setClientid(rs.getInt("clientid"));
client.setClientname(rs.getString("clientname"));
client.setPhone(rs.getString("phone"));
client.setMobile(rs.getString("mobile"));
client.setEmail(rs.getString("email"));
client.setHobby(rs.getString("hobby"));
client.setAddress(rs.getString("address"));
client.setCdescription(rs.getString("cdescription"));
list.add(client);
}