前端请求://保存函比抖朋要插支一圈不者地数
function tmpSave(){
if(!checkInput()) //先做必输项校验,具体函数没写出
{
return;
}
//服务器校验(判断companyName在数据库是否存在)
var companyName = $("#COMPANY_NAME").val();
$.ajax({
type: "POST",
url: 'customer/isRepeat', //请求到controller地址
data: {KEYDATA:companyName,tm:new Date().getTime()}, //请求参数
dataType:'json', //返回JSon数据
cache: false,
success: function(data){ //成功请求的回调函数
if("success" == data.result){
$("#saveType").val("tmpSave");
$("#Form").submit(); //表单提交,即数据库没有重复的companyName
}else{
$("#COMPANY_NAME").tips({
side : 3,
msg : "供应商已存在",
bg : '#AE81FF',
time : 15
});
$("#COMPANY_NAME").focus();
}
}
});
}
controller:(前面的@controller注解及@RequestMapping未写出)
/**
* 新增时判断供应商是否存在
*
*/
@RequestMapping(value = "/isRepeat")
@ResponseBody
public Object isRepeat() throws Exception {
String errorinfo = "";
Map map = new HashMap();
PageData pd = new PageData(); //PageData类用map封装了页面参数
pd = this.getPageData();
String companyName = pd.getString("KEYDATA");
CompanyInfo com = companyService.getCompanyByCompanyName(companyName); //调用service层方法通过companyName去查找对应的bean~CompanyInfo
if (com != null) {
errorinfo = "companyNameError";
} else {
errorinfo = "success";
}
map.put("result", errorinfo);
return AppUtil.returnObject(new PageData(), map);
}
service层方法:
@Service
public class CompanyService {
@Resource(name = "daoSupport")
private DaoSupport dao;
public CompanyInfo getCompanyByCompanyName(String companyName)
throws Exception {
PageData data = (PageData)dao.findForObject(
"CompanyMapper.getCompanyByCompanyName", companyName);
return BeanConvertUtils.transPageData2Bean(data, CompanyInfo.class);
}
}
DaoSupport类封装方法如下:
@Repository("daoSupport")
public class DaoSupport implements BaseDAO {
@Resource(name = "sqlSessionTemplate")
private SqlSessionTemplate sqlSessionTemplate;
/**
* 保存对象
* @param str
* @param obj
* @return
* @throws Exception
*/
public Object save(String str, Object obj){
return sqlSessionTemplate.insert(str, obj);
}
/**
* 批量更新
* @param str
* @param obj
* @return
* @throws Exception
*/
public Object batchSave(String str, List objs){
return sqlSessionTemplate.insert(str, objs);
}
/**
* 修改对象
* @param str
* @param obj
* @return
* @throws Exception
*/
public Object update(String str, Object obj){
Integer count=sqlSessionTemplate.update(str, obj);
/*if(count<=0){
throw new PersistanceException("更新记录失败,该笔记录可能被其他用户修改,请刷新后操作.");
}*/
return count;
}
/**
* 批量更新
* @param str
* @param obj
* @return
* @throws Exception
*/
public void batchUpdate(String str, List objs ){
SqlSessionFactory sqlSessionFactory = sqlSessionTemplate.getSqlSessionFactory();
//批量执行器
SqlSession sqlSession = sqlSessionFactory.openSession(ExecutorType.BATCH,false);
try{
if(objs!=null){
for(int i=0,size=objs.size();i
sqlSession.update(str, objs.get(i));
}
sqlSession.flushStatements();
sqlSession.commit();
sqlSession.clearCache();
}
}finally{
sqlSession.close();
}
}
/**
* 批量更新
* @param str
* @param obj
* @return
* @throws Exception
*/
public Object batchDelete(String str, List objs ){
return sqlSessionTemplate.delete(str, objs);
}
/**
* 删除对象
* @param str
* @param obj
* @return
* @throws Exception
*/
public Object delete(String str, Object obj) {
return sqlSessionTemplate.delete(str, obj);
}
/**
* 查找对象
* @param str
* @param obj
* @return
* @throws Exception
*/
public Object findForObject(String str, Object obj){
return sqlSessionTemplate.selectOne(str, obj);
}
/**
* 查找对象
* @param str
* @param obj
* @return
* @throws Exception
*/
public Object findForList(String str, Object obj){
return sqlSessionTemplate.selectList(str, obj);
}
/**
* 查找所有记录
* @param str
* @return
*/
public Object findAllList(String str){
return sqlSessionTemplate.selectList(str);
}
public Object findForMap(String str, Object obj, String key, String value) {
return sqlSessionTemplate.selectMap(str, obj, key);
}
public SqlSession getSession(){
SqlSessionFactory sqlSessionFactory = sqlSessionTemplate.getSqlSessionFactory();
return sqlSessionFactory.openSession();
}
public SqlSessionFactory getSessionFactory(){
return sqlSessionTemplate.getSqlSessionFactory();
}
}
Mybat大享上。是发了概开程态间些告人屏果会区。is的Mapper.xml文件写对应的sql语微和二第说,班。都年很过过事发工开宗定据发指互数个遍前互就句