showimageaction.java

来自「一个购房管理系统,JSF+Hibernate+Mssql2」· Java 代码 · 共 178 行

JAVA
178
字号
package com.housesale.struts.action;

import java.io.OutputStream;

import javax.faces.context.FacesContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;

import com.housesale.hibernate.Building;
import com.housesale.hibernate.Community;
import com.housesale.jsfbean.BuildingController;
import com.housesale.jsfbean.CommunityController;
import com.housesale.jsfbean.HouseController;
import com.housesale.jsfbean.HouseStyleController;

public class ShowImageAction extends DispatchAction {

	private static final String IMAGE_Type = "image/jpg";
	
	public ActionForward getCommunityImages(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		CommunityController controller = getCommunityController();
				
		response.setContentType(IMAGE_Type);		
		Integer i=Integer.valueOf(request.getParameter("id"));
		
		OutputStream toClient = response.getOutputStream();				
		toClient.write(getCommunityImageDetail(controller.getCommunity(),i));		
		toClient.close();
		
		return mapping.findForward("");
	}

	public ActionForward getBuildingImages(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		BuildingController controller = getBuildingController();
				
		response.setContentType(IMAGE_Type);		
		Integer i=Integer.valueOf(request.getParameter("id"));
		
		OutputStream toClient = response.getOutputStream();				
		toClient.write(getBuildingImageDetail(controller.getBuilding(),i));		
		toClient.close();
		
		return mapping.findForward("");
	}
	
	public ActionForward getHouseStyleImages(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		HouseStyleController controller = getHouseStyleController();
				
		response.setContentType(IMAGE_Type);		
		OutputStream toClient = response.getOutputStream();				
		toClient.write(controller.getHousestyle().getImage());		
		toClient.close();
		
		return mapping.findForward("");
	}
	
	public ActionForward getHouseStyleImages_vh(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		HouseController controller = getHouseController();
				
		response.setContentType(IMAGE_Type);		
		OutputStream toClient = response.getOutputStream();				
		toClient.write(controller.getHouse().getHouseStyle().getImage());		
		toClient.close();
		
		return mapping.findForward("");
	}
	
	public ActionForward getBuildingImages_vh(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		HouseController controller = getHouseController();
		Integer id=Integer.valueOf(request.getParameter("id"));		
		response.setContentType(IMAGE_Type);		
		OutputStream toClient = response.getOutputStream();				
		toClient.write(getBuildingImageDetail(controller.getHouse().getHouseStyle().getBuilding(),id));		
		toClient.close();
		
		return mapping.findForward("");
	}
	
	public ActionForward getCommunityImages_vh(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		HouseController controller = getHouseController();
		Integer id=Integer.valueOf(request.getParameter("id"));		
		response.setContentType(IMAGE_Type);		
		OutputStream toClient = response.getOutputStream();				
		toClient.write(getCommunityImageDetail(controller.getHouse().getHouseStyle().getBuilding().getCommunity(),id));		
		toClient.close();
		
		return mapping.findForward("");
	}
	
	private byte[] getCommunityImageDetail(Community community,Integer i){
		switch(i){
		case 1:
			return community.getImage1();
		case 2:
			return community.getImage2();
		case 3:
			return community.getImage3();
		case 4:
			return community.getImage4();
		case 5:
			return community.getImage5();
		case 6:
			return community.getImage6();
		default:
			return null;
		
		}
	}	

	private byte[] getBuildingImageDetail(Building building,Integer i){
		switch(i){
		case 1:
			return building.getImage1();
		case 2:
			return building.getImage2();		
		default:
			return null;
		
		}
	}
	
	private CommunityController getCommunityController() {
		
		FacesContext facesContext=FacesContext.getCurrentInstance();
		CommunityController controller = (CommunityController) facesContext
		.getApplication().createValueBinding("#{community}").getValue(
				facesContext);
		return controller;
	}
	
	private BuildingController getBuildingController() {
		FacesContext facesContext=FacesContext.getCurrentInstance();
		BuildingController controller = (BuildingController) facesContext
		.getApplication().createValueBinding("#{building}").getValue(
				facesContext);
		return controller;
	}
	
	private HouseStyleController getHouseStyleController() {
		FacesContext facesContext=FacesContext.getCurrentInstance();
		HouseStyleController controller = (HouseStyleController) facesContext
		.getApplication().createValueBinding("#{housestyle}").getValue(
				facesContext);
		return controller;
	}
	
	private HouseController getHouseController() {
		FacesContext facesContext=FacesContext.getCurrentInstance();
		HouseController controller = (HouseController) facesContext
		.getApplication().createValueBinding("#{house}").getValue(
				facesContext);
		return controller;
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?