Spring Interceptor Example Interceptor Class for my Spring Hibernate Solution

June 15th, 2011
Comments Off

Content about : Spring Interceptor Example
Advertisements


My Solution Provide Base Class for all inherit Interceptor Class . Base Class mapping Model to use when interceptor need to use resource.
All Interceptor Class need to Inherit to MasterInterceptor

Example Code for MasterInterceptor
package com.en.interceptor;
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
import com.en.model.MasterModel;

public class MasterInterceptor extends HandlerInterceptorAdapter{
private String errorURL;
private MasterModel model;

public String getErrorURL() {
return errorURL;
}
public void setErrorURL(String errorURL) {
this.errorURL = errorURL;
}
public MasterModel getModel() {
return model;
}
public void setModel(MasterModel model) {
this.model = model;
}

}

Example Code for Interceptor Class
package com.en.interceptor;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.Logger;

public class ExampleInterceptor extends MasterInterceptor{
private static Logger logger = Logger.getLogger(ExampleInterceptor.class);
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
//request.getRequestDispatcher(errorURL).forward(request, response);
//return false;
logger.info(”Interceptor running”);
return true;
}

}

Note: Interceptor calling before Controller working
* preHandle method if return false Container will end of work and not send request to Controller

admin Development , , ,

Spring MVC Controller Example Controller Class for my Spring Hibernate Solution

June 15th, 2011
Comments Off

Content about : Spring Controller Example
Advertisements


My Solution Provide Base Class for MultiActionController with mapping MasterModel Inherit to all Controller Class
This Example Class Guide for Simple Method for Call and send parameter to Model Class and Mapping Data to View

Base Class for Controler

package com.en.controller;
import org.springframework.web.servlet.mvc.multiaction.MultiActionController;
import com.en.model.MasterModel;

public class MasterController extends MultiActionController{
protected MasterModel model;
protected String defaultScreen;
public MasterModel getModel() {
return model;
}

public void setModel(MasterModel model) {
this.model = model;
}

public String getDefaultScreen() {
return defaultScreen;
}

public void setDefaultScreen(String defaultScreen) {
this.defaultScreen = defaultScreen;
}
}

Example Controller Class

package com.en.controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import com.en.dto.ExampleDto;
import com.en.model.ExampleModel;

public class ExampleController extends MasterController{
public ModelAndView loadMethod(HttpServletRequest request, HttpServletResponse response) {
ModelAndView mv = new ModelAndView(this.getDefaultScreen());
String pk=request.getParameter(”code_id”);
ExampleDto dto=(ExampleDto)this.getModel().getDataObj(new Integer(pk));
mv.addObject(”dto”, dto);
mv.addObject(”action”,”load”);
return mv;
}

public ModelAndView insertMethod(HttpServletRequest request, HttpServletResponse response) {
ModelAndView mv=null;
try {
mv = new ModelAndView(this.getDefaultScreen());
String pk=”0″;
String tdesc=request.getParameter(”tdesc”);
String edesc=request.getParameter(”edesc”);
ExampleDto dto=new ExampleDto();
dto.setCodeId(new Integer(pk));
dto.setTdesc(tdesc);
dto.setEdesc(edesc);
this.getModel().insertData(dto);
mv.addObject(”dto”, dto);
mv.addObject(”action”,”insert”);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return mv;
}

public ModelAndView deleteMethod(HttpServletRequest request, HttpServletResponse response) {
ModelAndView mv = new ModelAndView(this.getDefaultScreen());
String pk=request.getParameter(”code_id”);
ExampleDto dto=new ExampleDto();
dto.setCodeId(new Integer(pk));
this.getModel().deleteData(dto);
mv.addObject(”action”,”delete”);
return mv;
}

public ModelAndView callWS(HttpServletRequest request, HttpServletResponse response) {
ModelAndView mv = new ModelAndView(this.getDefaultScreen());
String pk=request.getParameter(”code_id”);
ExampleModel model=(ExampleModel)this.model;
ExampleDto dto=(ExampleDto)model.getDataWS(pk);
mv.addObject(”dto”,dto);
mv.addObject(”action”,”ws”);
return mv;
}

public ModelAndView callSAP(HttpServletRequest request, HttpServletResponse response) {
ModelAndView mv = new ModelAndView(this.getDefaultScreen());
ExampleModel model=(ExampleModel)this.model;
model.callSAPDummy1();
mv.addObject(”action”,”sap”);
return mv;
}
}

admin Development

HibernateDaoSupport Model Class for my Spring Hibernate Solution

June 15th, 2011
Comments Off

Content about : Model with HibernateDaoSupport
Advertisements


Concept MVC is Model and view Controller my solution use Model to provide all Business Logic get Requestparam from Controller
and Collect data send back to controller.  My Solution provide Base Class for all Model Class for Example

Example Master MasterModel
package com.en.model;
import java.io.Serializable;
import java.util.List;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import com.en.dto.MasterDto;
import com.en.sap.MasterSAP;
import com.en.ws.client.WebServiceClientMaster;

public class MasterModel  extends HibernateDaoSupport implements Serializable{
private static final long serialVersionUID = 1L;
protected WebServiceClientMaster wsClient;
protected MasterSAP sap;
public void insertData(MasterDto dto){}
public void deleteData(MasterDto dto){}
public void updateData(MasterDto dto){}
public MasterDto getDataObj(Serializable pk){return null;}
public List<MasterDto> getDataList(){return null;}

public WebServiceClientMaster getWsClient() {
return wsClient;
}
public void setWsClient(WebServiceClientMaster wsClient) {
this.wsClient = wsClient;
}
public MasterSAP getSap() {
return sap;
}
public void setSap(MasterSAP sap) {
this.sap = sap;
}

}

Example Model Class

package com.en.model;
import java.io.Serializable;
import org.hibernate.LockMode;
import com.en.dto.ExampleDto;
import com.en.dto.MasterDto;
import com.en.hibernate.Example;
import com.en.ws.client.ExampleWSClient;

public class ExampleModel extends MasterModel{
private static final long serialVersionUID = 1L;

@Override
public void insertData(MasterDto dto) {
Example example =new Example();
this.transferData(dto,example);
this.getHibernateTemplate().save(example);
}

@Override
public void deleteData(MasterDto dto) {
Example example =new Example();
this.transferData(dto,example);
this.getHibernateTemplate().delete(example);
}

@Override
public MasterDto getDataObj(Serializable pk) {

Example example=(Example)this.getHibernateTemplate().load(Example.class, pk,LockMode.READ);
ExampleDto dto=new ExampleDto();
dto.setCodeId(example.getCodeId());
dto.setTdesc(example.getTdesc());
dto.setEdesc(example.getEdesc());
return dto;
}
public MasterDto getDataWS(Serializable pk){
ExampleWSClient client=(ExampleWSClient)this.wsClient;
client.process();
MasterDto dto= client.getData((String)pk);
return dto;
}
public void callSAPDummy1(){
this.sap.dummyMethod1(null);
}
private void transferData(MasterDto dto,Example example){
ExampleDto dtoObj=(ExampleDto)dto;
example.setCodeId(dtoObj.getCodeId());
example.setTdesc(dtoObj.getTdesc());
example.setEdesc(dtoObj.getEdesc());
}
}

Note: Example Model Class is  an example for using Hibernate with HibernateDaoSupport

admin Development