首先是controller层
/**
* 查询
* @return
*/
@RequestMapping("queryRes")
public List<RecBean> queryRes(RecBean recBean){
return recService.queryRes(recBean);
}
/**
* 分页查询
* @param recBean
* @param page
* @param rows
* @return
*/
@RequestMapping("paginationRes")
public HashMap<String,Object> paginationRes(
RecBean recBean,@RequestParam(name = "page",defaultValue = "1")Integer page,@RequestParam(name = "rows",defaultValue = "10")Integer rows){
return recService.paginationRes(recBean,page,rows);
}
/**
* 删除
* @param
*/
@RequestMapping("deletionRes")
public void deletionRes(Integer recId){
recService.deletionRes(recId);
}
/**
* 新增
* @param recBean
*/
@RequestMapping("addRes")
public void addRes(RecBean recBean){
recService.addRes(recBean);
}
/**
* 回显
* @param
* @return
*/
@RequestMapping("echoRes")
public RecBean echoRes(Integer recId){
return recService.echoRes(recId);
}
/**
* 修改
* @param recBean
*/
@RequestMapping("updateRes")
public void updateRes(RecBean recBean){
recService.updateRes(recBean);
}
/**
* 批量删除
* @param ids
*/
@RequestMapping("deletionAssRes")
public void deletionAssRes(String[] ids){
recService.deletionAssRes(ids);
}
接下来是实现类
@Override
public List<RecBean> queryRes(RecBean recBean) {
String key="order_doc";
String key2 ="aa";
List<RecBean> list = new ArrayList<>();
Boolean hkey=redisTemplate.opsForHash().hasKey(key,key2);
if (hkey){
List<Object> list2 = redisTemplate.opsForHash().values(key);
for (Object object:list2){
list= JSONArray.parseArray(JSONArray.toJSONString(object),RecBean.class);
}
}else {
recDao.selectList(null);
redisTemplate.opsForHash().put(key,key2,list);
}
return list;
}
@Override
public void deletionRes(Integer recId) {
String key = "order_doc";
String key2 ="aa";
redisTemplate.opsForHash().delete(key, key2);
recDao.deleteById(recId);
}
@Override
public void addRes(RecBean recBean) {
String key="order_doc";
String key2="aa";
Boolean hkey=redisTemplate.opsForHash().hasKey(key,key2);
if (hkey) {
List<RecBean> list=(List<RecBean>)redisTemplate.opsForHash().get(key,key2);
list.add(recBean);
redisTemplate.opsForHash().put(key,key2,list);
}else {
List<RecBean> list= new ArrayList<>();
list.add(recBean);
redisTemplate.opsForHash().put(key,key2,list);
}
recDao.insert(recBean);
}
@Override
public RecBean echoRes(Integer recId) {
/*String key="myString";
Boolean key1 = redisTemplate.hasKey(key);
RecBean recBean=null;
if (key1) {
recBean = (RecBean) redisTemplate.opsForValue().get(key);
}else {
recBean = recDao.selectById(recId);
redisTemplate.opsForValue().set(key,recBean);
}
return recBean;*/
return recDao.selectById(recId);
}
@Override
public void updateRes(RecBean recBean) {
String key = "order_doc";
String key2 ="aa";
redisTemplate.opsForHash().delete(key, key2);
List<RecBean> list= new ArrayList<>();
list.add(recBean);
redisTemplate.opsForHash().put(key,key2,list);
recDao.updateById(recBean);
}
@Override
public void deletionAssRes(String[] ids) {
for (String id:ids) {
recDao.deleteById(id);
}
}
接下来是前端:
function delOne(recId) {
bootbox.confirm({
size: "small",
title: "提示",
message: "是否确认删除??",
//普通弹框
buttons: {
cancel: {
label: "取消",
className: "btn-danger glyphicon glyphicon-remove"
},
confirm: {
label: "确定",
className: "btn-success glyphicon glyphicon-ok"
}
},
callback: function (r) {
if (r) {
$.ajax({
url: "../rec/deletionRes",
type: "post",
data: {recId: recId},
success: function () {
bootbox.alert({
size: "small",
title: "提示",
message: "删除成功!",
buttons: {
ok: {
label: "确定",
className: "btn-success glyphicon glyphicon-ok"
}
}
});
//刷新表格:【如果有条查直接调条查方法,没有条查自己写个refresh】
searchData();
}
});
}
}
});
}
function deleteAll(){
//获取选中的复选框【方法:getSelections】
var arr = $("#myTable").bootstrapTable("getSelections");
if(arr==null || arr.length<=0){
//alert("请至少选中一条数据!!");
bootbox.alert({
size:"small",
title:"提示",
message:"请至少选中一条数据!!",
buttons:{
ok:{
label:"确定",
className:"btn-success glyphicon glyphicon-ok"
}
}
});
return;
}
//拼接ids
var ids = "";
for(var i=0;i<arr.length;i++){
//alert(arr[i].name);
ids+= ids==""?arr[i].recId : (","+arr[i].recId);
}
$.ajax({
url:"../rec/deletionAssRes",
type:"post",
data:{ids:ids},
success:function(){
bootbox.alert({
size:"small",
title:"提示",
message:"删除成功!",
buttons:{
ok:{
label:"确定",
className:"btn-success glyphicon glyphicon-ok"
}
}
});
//刷新表格:【如果有条查直接调条查方法,没有条查自己写个refresh】
searchData();
}
});
}
function openAdd(){
bootbox.dialog({
title:"新增简历",
message:openPage("addShow"),
buttons:{
cancel:{
label:"取消",
className:"btn-danger glyphicon glyphicon-remove"
},
success:{
label:"保存",
className:"btn-success glyphicon glyphicon-ok",
callback:function(){
//提交表单
$.ajax({
url:"../rec/addRes",
type:"post",
data:$("#addForm").serialize(),
success:function(){
bootbox.alert({
size:"small",
title:"提示",
message:"新增成功!",
buttons:{
ok:{
label:"确定",
className:"btn-success glyphicon glyphicon-ok"
}
}
});
//刷新表格:【如果有条查直接调条查方法,没有条查自己写个refresh】
searchData();
}
});
}
}
}
});
uploadImg();
}
function updateRes(recId){
bootbox.dialog({
title:"修改简历",
message:openPage("addShow"),
buttons:{
cancel:{
label:"取消",
className:"btn-danger glyphicon glyphicon-remove"
},
success:{
label:"保存",
className:"btn-success glyphicon glyphicon-ok",
callback:function(){
//提交表单
$.ajax({
url:"../rec/updateRes",
type:"post",
data:$("#addForm").serialize(),
success:function(){
bootbox.alert({
size:"small",
title:"提示",
message:"修改成功!",
buttons:{
ok:{
label:"确定",
className:"btn-success glyphicon glyphicon-ok"
}
}
});
//刷新表格:【如果有条查直接调条查方法,没有条查自己写个refresh】
searchData();
}
});
}
}
}
});
$.ajax({
url:"../rec/echoRes",
type:"get",
data:{recId:recId},
success:function(data){
//data:学生对象
$("#recId2").val(data.recId);
$("#recName2").val(data.recName);
$("#recDemand2").val(data.recDemand);
$("#recAddress2").val(data.recAddress);
$("#recSeniority2").val(data.recSeniority);
$("#recLow2").val(data.recLow);
$("#recHight2").val(data.recHight);
$("#recEducation2").val(data.recEducation);
$("#recPicture2").val(data.recPicture);
uploadImg(data.recPicture);
$("#testimg").val(data.recPicture);
}
});
}
function initTable(){
$("#myTable").bootstrapTable({
pagination:true,//开启分页
sidePagination:"client",//分页方式 前端分页 "client" 后端分页 "server"
pageSize:5,//每页条数,默认10
pageList:[1,2,4,10,20],//每页条数的列表
pageNumber:1,//默认页
url:"../rec/queryRes",
columns:[
{checkbox:true},
{title:"id",field:"recId"},//title:列头、标题 field:域、实体类中的属性名 formatter:格式化 处理特殊值
{title:"公司名称",field:"recName"},
{title:"招聘需求",field:"recDemand"},
{title:"地址",field:"recAddress"},
{title:"工作年限",field:"recSeniority"},
{title:"最低薪资",field:"recLow"},
{title:"最高薪资",field:"recHight"},
{title:"学历",field:"recEducation"},
{title:"头像",field:"recPicture",formatter:function(value,row,index){
return "<img onclick='downloadImg(\""+value+"\")' width='50px' height='50px' src='"+value+"'>";
}},
{title:"操作",formatter:function(value,row,index){
var str="";
str+='<button type="button"class="btn btn-primary glyphicon glyphicon-trash" onclick="delOne('+row.recId+')">删除</button>';
str+='<button type="button"class="btn btn-primary glyphicon glyphicon-trash" onclick="updateRes('+row.recId+')">修改</button>';
return str;
}},
],
queryParams:function(param){
return {
page:param.pageNumber, //开始位置
rows:param.pageSize //每页条数
};
}//往后台传值:条查、分页
});
到此为止,springbootpuls增删改查以及批量删全部实现