请高手指点,从下面程序中怎么看出如果建库\建表\表有哪些列\记录的值(秘码是多少),谢谢 package co

ackagecom.lzw.dao;importinternalFrame.guanli.Item;importjava.sql.Connection;importjav... ackage com.lzw.dao;
import internalFrame.guanli.Item;
import java.sql.Connection;
import java.sql.Date;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import model.TbGysinfo;
import model.TbKhinfo;
import model.TbKucun;
import model.TbRkthDetail;
import model.TbRkthMain;
import model.TbRukuDetail;
import model.TbRukuMain;
import model.TbSellDetail;
import model.TbSellMain;
import model.TbSpinfo;
import model.TbXsthDetail;
import model.TbXsthMain;
import model.TbUserlist;
public class Dao {
protected static String dbClassName = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
protected static String dbUrl = "jdbc:microsoft:sqlserver://localhost:1433;"
+ "DatabaseName=db_JXC;SelectMethod=Cursor";
protected static String dbUser = "sa";
protected static String dbPwd = "sa";
protected static String second = null;
public static Connection conn = null;
static {
try {
if (conn == null) {
Class.forName(dbClassName).newInstance();
conn = DriverManager.getConnection(dbUrl, dbUser, dbPwd);
}
} catch (Exception ee) {
ee.printStackTrace();
}
}
private Dao() {
}
// 读取所有客户信息
public static List getKhInfos() {
List list = findForList("select id,khname from tb_khinfo");
return list;
}
// 读取所有供应商信息
public static List getGysInfos() {
List list = findForList("select id,name from tb_gysinfo");
return list;
}
// 读取客户信息
public static TbKhinfo getKhInfo(Item item) {
String where = "khname='" + item.getName() + "'";
if (item.getId() != null)
where = "id='" + item.getId() + "'";
TbKhinfo info = new TbKhinfo();
ResultSet set = findForResultSet("select * from tb_khinfo where "
+ where);
try {
if (set.next()) {
info.setId(set.getString("id").trim());
info.setKhname(set.getString("khname").trim());
info.setJian(set.getString("jian").trim());
info.setAddress(set.getString("address").trim());
info.setBianma(set.getString("bianma").trim());
info.setFax(set.getString("fax").trim());
info.setHao(set.getString("hao").trim());
info.setLian(set.getString("lian").trim());
info.setLtel(set.getString("ltel").trim());
info.setMail(set.getString("mail").trim());
info.setTel(set.getString("tel").trim());
info.setXinhang(set.getString("xinhang").trim());
}
} catch (SQLException e) {
e.printStackTrace();
}
return info;
}
// 读取指定供应商信息
public static TbGysinfo getGysInfo(Item item) {
String where = "name='" + item.getName() + "'";
if (item.getId() != null)
where = "id='" + item.getId() + "'";
TbGysinfo info = new TbGysinfo();
ResultSet set = findForResultSet("select * from tb_gysinfo where "
+ where);
try {
try {
if (set.next()) {
info.setId(set.getString("id").trim());
info.setKhname(set.getString("khname").trim());
info.setJian(set.getString("jian").trim());
info.setAddress(set.getString("address").trim());
info.setBianma(set.getString("bianma").trim());
info.setFax(set.getString("fax").trim());
info.setHao(set.getString("hao").trim());
info.setLian(set.getString("lian").trim());
info.setLtel(set.getString("ltel").trim());
info.setMail(set.getString("mail").trim());
info.setTel(set.getString("tel").trim());
info.setXinhang(set.getString("xinhang").trim());
}
} catch (SQLException e) {
e.printStackTrace();
}
return info;
}
// 读取指定供应商信息
public static TbGysinfo getGysInfo(Item item) {
String where = "name='" + item.getName() + "'";
if (item.getId() != null)
where = "id='" + item.getId() + "'";
展开
 我来答
佳Wei
2010-08-30 · 超过12用户采纳过TA的回答
知道答主
回答量:35
采纳率:0%
帮助的人:33.7万
展开全部
1.先整体看一下程序。
从上到下=>从整体到局部:
这个类包含:包(所在包(package)+导入包(import)),变量,
静态块(static{}),一个构造器,五个方法
2.分析变量(正规代码定义变量时,都会根据其作用定义),静态块和方法(如果 构造器中有代码,也要分析)。
2.1: 变量:
dbClassName:数据库驱动类名,dbUrl:数据库地址
DatabaseName:数据库名称 SelectMethod:连接方式(可省略)
dbUser:用户登录名 dbPwd:数据库密码 conn:获取连接
读懂变量之后,你会发现其实数据库名,用户登录名,密码已经出来了。再看一下static块中,去除try,catch之后,你会发现剩余的只是连接。
2.2:方法:
构造器里没内容,跳过!
getKhInfos():从注释得知,是获取所有客户信息。根据下面的查询语句:select id,khname from tb_khinfo(select列名from表名) 即得到客户表:tb_khinfo,下面方法不做解释:供应商表:tb_gysinfo
getKhInfo(Item item):客户详细信息。我们直奔查询语句即可:
select * from tb_gysinfo where(select所有列from表名where查询条件)
set.next():即把所有列详细输出一遍。
info.setId(set.getString("id").trim()):由此我们可以看出set后面的有变动,即为表中的列名,用数据库的常用语,即字段(记录)
参数即为字段的值。

3.斩头去尾,直接寻找你想要的信息!
经过分析,结果已经很明了。你可以换个程序剖析下,看看是否理解了!
lizhen860316
2010-08-26 · 超过26用户采纳过TA的回答
知道答主
回答量:118
采纳率:0%
帮助的人:90.1万
展开全部
用户名密码都是sa
数据库名db_JX
表tb_khinfo中字段 id,khname
下面这些双引号中的全是客户表tb_khinfo中字段
info.setId(set.getString("id").trim());
info.setKhname(set.getString("khname").trim());
info.setJian(set.getString("jian").trim());
info.setAddress(set.getString("address").trim());
info.setBianma(set.getString("bianma").trim());
info.setFax(set.getString("fax").trim());
info.setHao(set.getString("hao").trim());
info.setLian(set.getString("lian").trim());
info.setLtel(set.getString("ltel").trim());
info.setMail(set.getString("mail").trim());
info.setTel(set.getString("tel").trim());
info.setXinhang(set.getString("xinhang").trim());
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式