实现AMF3与Java之间数组的传递(动态创建数组)...
首先,AMF3似乎并不支持List.ArrayList等数组的解析...Java客户端传递List对象,AMF3无法解析为Array...
原因是:AMF3只支持基础数据类型...
故,需要将List等数据转换为Object[] !这样AMF3才能将Java传递的数组解析为Array...
由于数组的创建,即便一开始不赋值,也需要设置数组的length,如:String[] myString = new String[5];
故,需要动态创建Object[]数组.但往往,length一开始是并不知道,比如JDBC中ResultSet...
@SuppressWarnings("unchecked")
public Seed_Warehouse[] findSeedWarehouseByUserID(int userID)
throws SQLException {
String sql = "SELECT * from LESOGO_SEED_WAREHOUSE WHERE USER_ID = ?";
db.doPstm(sql, new Object[] { userID });
ResultSet rs = db.getRs();
if (rs != null) {
int i = 0; // 获得数据库表的行数!
while (rs.next()) {
i++;
}
Seed_Warehouse[] sws = new Seed_Warehouse[i];
rs.beforeFirst(); // 光标指向起始位置!
int j = 0;
while (rs.next()) {
Seed_Warehouse sw = new Seed_Warehouse();
sw.setId(rs.getInt(1));
sw.setCrop_class_name(rs.getString(2));
sw.setCrop_count(rs.getInt(3));
sw.setUser_id(rs.getInt(4));
sws[j++] = sw; // 为数据具体位置下的对象赋值!
}
return sws;
}
return null;
}
总结:
是要认真学习下AMF3协议了...
相关文档:
刚刚运行java HelloWorld.class,老是说:
Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld/class
Caused by: java.lang.ClassNotFoundException: HelloWorld.class
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
  ......
语法:
for ( type 变量名:集合变量名 ) { … }
注意事项:
迭代变量必须在( )中定义!
集合变量可以是数组或实现了Iterable接口的集合类
举例:
public class AdvancedFor {
public static void main(String[] arg ......
第一章:java对象持久化技术概述
1:持久化:persistence;对象持久化包含两方面的内容:将内存数据存入长期记忆介质并能从这些介质上无差错地复原到内存。
2:通过实现java.io包中的Serializable接口(即对象序列化和饭序列化技术)实现,这种技术很重要,虽然在执行持久化时有极大的限制,如:效率低下、不支持事务等 ......
通过 DAOFactory 的泛型写法来演示Java泛型的特殊用法
小型项目中常常都没有用三方持久化框架,而大都是用公司或自行依据DAO模式封装的一些组件来完成数据库持久化动作,并且,通常为了更具可扩展性,常常使用抽象工厂模式来解耦合。
一、先看代码
1、简单工厂代码
/************************************************* ......