怎么把MVC中 service层的对象输出到action中?
service 层:public class OwnerServiceImp implements OwnerService {
private EntityDao entityDao;
//业主登陆
public String owner_Login(Owner owner) {
// TODO Auto-generated method stub
System.out.println("进入登录.....");
String view="Tourists";
String hql="from Owner where ownerName='"+owner.getOwnerName()+"' and ownerTel='"+owner.getOwnerTel()+"'";
//强制类型转换
List<Owner> list= find(hql);
if(list.size()>0)
{
view="Owner";
owner=list.get(0);
System.out.println(owner.getOwnerGender()+owner.getOwnerIdcard()+owner.getOwnerRoom()+owner.getOwnerWork());
}
else{
view = "error";
}
return view;
}
action层:
public class OwnerAction extends ActionSupport {
/**
*
*/
private static final long serialVersionUID = 1L;
private Owner owner;
private OwnerService ownerService;
//业主登陆
public String owner_Login(){
// System.out.println("进入登录.....");
// String view="Tourists";
// String hql="from Owner where ownerName='"+owner.getOwnerName()+"' and ownerTel='"+owner.getOwnerTel()+"'";
// //强制类型转换
// List<Owner> list= ownerService.findo(hql);
// if(list.size()>0)
// {
// view="Owner";
// owner=list.get(0);
// System.out.println(owner.getOwnerGender()+owner.getOwnerIdcard()+owner.getOwnerRoom()+owner.getOwnerWork());
// ActionContext ac=ActionContext.getContext();//保存session,相当于request.getSession().setAttribute("listMessage",listMessage);
// System.out.println(owner);
// ac.getSession().put("Owner", owner);
// }
// else{
// view = "error";
// ActionContext ac=ActionContext.getContext();
// ac.getSession().put("errorinfo","业主不存在!");
// }
//
// return view;
return ownerService.owner_Login(owner);
}
jsp页面:
<div id="SecondUp">
<div id="ThirdLeft">
<div align="center">业主个人信息<br/>. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .</div>
<div id="ThirdLeft0">
<div id="ThirdLeft1"><img src="image/6.png" width="98" height="118"/></div>
<div id="ThirdLeft2"><br/>姓名:${Owner.ownerName}</div>
<div id="ThirdLeft3"><br/>门牌号:${Owner.ownerRoom}</div> </div>
<div id="ThirdLeft4" align="center">联系电话:${Owner.ownerTel}</div>
<div id="ThirdLeft5"><input style="width: 90px; height: 35px" type="button" value="修改密码"/></div>
</div>
<div id="ThirdRight">This is ThirdRight</div>
</div>
<div id="SecondMid">身份证号:${Owner.ownerIdcard }</div>
<div id="SecondDown">工作地点:${Owner.ownerWork }</div> </div>
为什么红色标注的信息打印不出来?
MVC 对象 hql String --------------------编程问答-------------------- ac.getSession().put("Owner", owner);你都注释了 怎么显示。。。
除了表色标注的都可以显示??那就是查询的问题 或者数据库表中本身没有数据 --------------------编程问答-------------------- 查询没有问题,那个是在service里面写的
public class OwnerServiceImp implements OwnerService {
private EntityDao entityDao;
//业主登陆
public String owner_Login(Owner owner) {
// TODO Auto-generated method stub
System.out.println("进入登录.....");
String view="Tourists";
String hql="from Owner where ownerName='"+owner.getOwnerName()+"' and ownerTel='"+owner.getOwnerTel()+"'";
//强制类型转换
List<Owner> list= find(hql);
if(list.size()>0)
{
view="Owner";
owner=list.get(0);
System.out.println(owner.getOwnerGender()+owner.getOwnerIdcard()+owner.getOwnerRoom()+owner.getOwnerWork());
ActionContext ac=ActionContext.getContext();//保存session,相当于request.getSession().setAttribute("listMessage",listMessage);
System.out.println(owner);
ac.getSession().put("Owner", owner);
}
else{
view = "error";
ActionContext ac=ActionContext.getContext();
ac.getSession().put("errorinfo","业主不存在!");
}
return view;
}
//把查找的结果进行强制类型转换
public List<Owner> find(String hql) {
// TODO Auto-generated method stub
List<Owner> list = new ArrayList<Owner>();
for(Object o:entityDao.find(hql)){
list.add((Owner)o);
}
return list;
}
public EntityDao getEntityDao() {
return entityDao;
}
public void setEntityDao(EntityDao entityDao) {
this.entityDao = entityDao;
}
public List<Owner> findo(String hql) {
// TODO Auto-generated method stub
List<Owner> list= new ArrayList<Owner>();;
for(Object o:entityDao.find(hql))
{
list.add((Owner)o);
}
return list;
}
}
补充:Java , Java EE