Map<Integer,List> scaleLatMap = new LinkedHashMap<Integer,List>();
while(it4.hasNext()){
TdScalelatRel tdScalelatRel = it4.next();
Integer latId = tdScalelatRel.getTdLat().getLatid();
Integer scaleId = tdScalelatRel.getAssScale().getScaleid();
String latName = tdScalelatRel.getTdLat().getName();
latMap.put(latId, latName);
//得到纬度的名字
List<Integer> scaleLatList = scaleLatMap.get(scaleId);
if(scaleLatList == null){
scaleLatList = new ArrayList<Integer>();
scaleLatMap.put(scaleId, scaleLatList);}
scaleLatList.add(latId);
}
while(it4.hasNext()){
TdScalelatRel tdScalelatRel = it4.next();
Integer latId = tdScalelatRel.getTdLat().getLatid();
Integer scaleId = tdScalelatRel.getAssScale().getScaleid();
String latName = tdScalelatRel.getTdLat().getName();
latMap.put(latId, latName);
//得到纬度的名字
List<Integer> scaleLatList = scaleLatMap.get(scaleId);
if(scaleLatList == null){
scaleLatList = new ArrayList<Integer>();
scaleLatMap.put(scaleId, scaleLatList);}
scaleLatList.add(latId);
}
解决方案 »
- 请教jbpm对于业务数据处理的解决方案?欢迎一起讨论下
- birt 标签在JSP页面的使用
- 关于SSH中OpenSessionInViewFilter不起作用的问题
- Struts2返回json报错,求解
- 问一个hibernate的统计问题?
- spring的事务管理,折腾了很长时间,帮忙呀
- 如何在easystruts视图中选择easy datasource进行数据源的配置
- 刚学EJB,求一简单在Jbuider环境下开发的例子,客户端是一jsp文件,有方法调用
- elipse 单步调试是什么?
- 我在hastable中放了LOng,又放了String,取出来时如何得知是哪种类型啊
- STRUTS2.1.6 get方式传参中文乱码问题
- jsp页面动态加载树形结构
scaleLatMap、it4怎么来的?
就是一个scaleLatMap 的过程吗。
* 创建日期 2007-4-24
*
* 更改所生成文件模板为
* 窗口 > 首选项 > Java > 代码生成 > 代码和注释
*/
package com.comstars.ass.corp.action;import java.util.*;
import org.apache.struts.action.Action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
//import com.comstars.hibernate.util.*;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;import com.comstars.hibernate.databean.CorpBase;
import com.comstars.hibernate.databean.TdCorpsacleRel;
import com.comstars.hibernate.databean.TdGci2Option;
import com.comstars.hibernate.databean.TdScalelatRel;
import com.comstars.ass.corp.form.AssForm;
import com.comstars.hibernate.databean.AssScale;
import net.sf.hibernate.*;import com.comstars.hibernate.util.DBHandle;/**
* @author admin
* @时间 17:00:44
* 更改所生成类型注释的模板为
* 窗口 > 首选项 > Java > 代码生成 > 代码和注释
*/
public class AssAddAction extends Action {
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {
Session session = DBHandle.currentSession();
// Criteria criteria = session.createCriteria(TdCorpsacleRel.class);
//取得corpId
HttpSession httpSession = request.getSession();
Integer corpId = (Integer)httpSession.getAttribute("CORPID");
CorpBase corpBase = (CorpBase)session.load(CorpBase.class,corpId);
String hql ="select c.assScale from TdCorpsacleRel as c where c.corpBase.corpid=? and c.assScale.type=?";
Query query = session.createQuery(hql);
query.setInteger(0,corpId.intValue());
//公司id
query.setInteger(1,0);
//类型 哪一个纬度比如留学
List list1 = query.list();
String hql3 =" from TdGci2Option ";
Query query3 = session.createQuery(hql3);
Iterator<TdGci2Option> it3= query3.iterate();
Map<Integer,String> descriptionMap = new LinkedHashMap<Integer,String>();
while(it3.hasNext()){
TdGci2Option option = it3.next();
descriptionMap.put(option.getTdLat().getLatid(), option.getDescription());
//对应的维度描述
}
request.setAttribute("descriptionMap", descriptionMap);
Map<Integer,String> latMap = new LinkedHashMap<Integer,String>();
String hql4 =" from TdScalelatRel a where a.assScale.scaleid <= 25 and a.assScale.scaleid >= 16 ";
Query query4 = session.createQuery(hql4);
Iterator<TdScalelatRel> it4= query4.iterate();
Map<Integer,List> scaleLatMap = new LinkedHashMap<Integer,List>();
while(it4.hasNext()){
TdScalelatRel tdScalelatRel = it4.next();
Integer latId = tdScalelatRel.getTdLat().getLatid();
Integer scaleId = tdScalelatRel.getAssScale().getScaleid();
String latName = tdScalelatRel.getTdLat().getName();
latMap.put(latId, latName);
//得到纬度的名字
List<Integer> scaleLatList = scaleLatMap.get(scaleId);
if(scaleLatList == null){
scaleLatList = new ArrayList<Integer>();
scaleLatMap.put(scaleId, scaleLatList);}
scaleLatList.add(latId);
}
request.setAttribute("latMap", latMap);
request.setAttribute("scaleLatMap", scaleLatMap);
query.setInteger(1,1);
List list2 = query.list();
query.setInteger(1,2);
List list3 = query.list();
query.setInteger(1,3);
List list4 = query.list();
//招聘组手
System.out.println(list2.size()+"list2.size()list2.size()list2.size()list2.size()");
DBHandle.closeSession();
AssForm assForm = (AssForm)form;
assForm.reset();
assForm.setIswatch(new Integer(0));
httpSession.setAttribute("CORPCLICKNUMBER", new Integer(1));
request.setAttribute("scaleList1",list1);
request.setAttribute("scaleList2",list2);
request.setAttribute("scaleList3",list3);
request.setAttribute("scaleList4",list4);
/**
*
*/
return mapping.findForward("assUserAdd");
}
}
但是你要看下文
if (scaleLatList == null) {
scaleLatList = new ArrayList < Integer >();
scaleLatMap.put(scaleId, scaleLatList);
}
这是有判断的,也就是说这是一个先从这个scaleLatMap中获取,如果有了就不填加,如果没有就填加的过程
TdScalelatRel tdScalelatRel = it4.next();
不需要第一条?
第一次的时候是没有,但是后面new了一个list,加入了map
最后给list添加了当前值
source正常
你需要了解下地址传递与值传递的问题了。