* 根据传入的类名和值,动态构造该类的实例
*
* @param _sClassName
*要构造的类名 如:java.lang.String
* @param _sRealValue
*要创建的对象的值,比如“wuguowei”
* @return 返回String对象,即值为“wuguowei”的字符串
* @throws Exception
*/
private Object getAttributeObject(String _sClassName, String _sRealValue)
throws Exception {
//1.加载类对象
Class attrObjClass = Class.forName(_sClassName)
//2.如果是Long类
if (attrObjClass.isInstance(new Long(0))) {
return new Long(_sRealValue)
}
//3.如果是Integer类
if (attrObjClass.isInstance(new Integer(0))) {
return new Integer(_sRealValue)
}
//4.其他类型……
//5.返回当前类的实例对象
return attrObjClass
}
首先,程序开发中,变量、方法名应该尽可能的定义做到顾名思义,即让人看到你的名称就大概的知道其的含义了。其次,by with for三个都是英语中的介词,他们在上面的定义中跟在英语的意思是一样的,即是"以...、用....、通过...."的意思,就比如你题目中方法,意思就是通过卡号获取卡片信息。
现在大体明白了吧。
有问题欢迎提问,满意请采纳!
//首先,先用SQL查询出来,因为不止一条记录,所以用Lis在去存放//这里是数据层的代码(参考就行)
public List<Inventory>getByCode() {
List<Inventory>list = new ArrayList()
try {
conn = this.db.getConnection()
String sql = "select cInvCode,cInvName,cInvStd,cInvAddCode,cInvABC,dSDate," +
"cComUnitCode,cGroupCode ,iSupplyType,bInTotalCost " +
"from Inventory "
ps = conn.prepareStatement(sql)
rs = ps.executeQuery()
while (rs.next()) {
Inventory ic = new Inventory()
ic.setCInvCode(rs.getString("cInvCode"))
ic.setCInvName(rs.getString("cInvName"))
ic.setCInvStd(rs.getString("cInvStd"))
ic.setCInvABC(rs.getString("cInvABC"))
ic.setCInvAddCode(rs.getString("cInvAddCode"))
ic.setDSDate(rs.getDate("dSDate"))
ic.setCComUnitCode(rs.getString("cComUnitCode"))
ic.setCGroupCode(rs.getString("cGroupCode"))
ic.setISupplyType(rs.getInt("iSupplyType"))
ic.setBInTotalCost(rs.getInt("bInTotalCost"))
list.add(ic)
}
} catch (Exception e) {
e.printStackTrace()
} finally {
try {
rs.close()
this.db.closeAll(conn, ps)
} catch (SQLException e) {
e.printStackTrace()
}
}
return list
}
//然后在业务层里调用这个方法
list.size();//这样你就能取到数据库表有多少条记录了