<4>reposiory层
也被称为Dao层,主要负责对的操纵,当继承了JpaRepository后,便含有findAll,save,delete等各种自带方法,如果没有也可以使用findByxxx复写方法,程序会自动进行识别查找相应的列,当然也可以加@Query注解完全自写语句。
import com.zhang.Demo.entity.User;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
public interface MyRepository extends JpaRepository<User,Integer>{
User findById(int id);
List<User> findByName(String name);
}
至此,后台的业务逻辑处理就基本完成了,源码中还有其他的一些代码,那个是处理前台传输过来的dataTable封装好的json格式数据的,想看完整的功能还是建议参照源码一起看。spring aop 配置文件注:每层的类都需要注明属性,诸如实体层@Entity。
<1>前端datatable的固定定义代码
<script>
$(document).ready( function () {
var table = $('#myTable').DataTable({
language: {
url: "scripts/zh_CN.txt"
},
info: true,
paging: true,
bServerSide: true, //是否启动服务器端数据导入
sAjaxSource: "/demo/tableDemoAjax", //请求的地址
fnServerData: retrieveData, // 获取数据的处理函数
autoWidth: false, //禁用自动调整列宽
stripeClasses: ["odd", "even"], //为奇偶行加上样式,兼容不支持CSS伪类的场合
processing: true, //隐藏加载提示,自行处理
serverSide: true, //启用服务器端分页
searching: false, //禁用原生搜索
// orderMulti: true, //启用多列排序
order: [], //取消默认排序查询,否则复选框一列会出现小箭头
renderer: "bootstrap", //渲染样式:Bootstrap和jquery-ui
pagingType: "simple_numbers", //分页样式:simple,simple_numbers,full,full_numbers
columnDefs: [{
"targets": 'nosort', //列的样式名
"orderable": false //包含上样式名‘nosort’的禁止排序
}],
columns: [
{data: 'id'},
{data: 'name'},
{data: 'job'},
{data: 'phone'},
{data: function (obj) {
op = "<div id='toolbar' class='btn-group'>";
op1 = "<button id='btn_edit' type='button' class='btn btn-default' onclick='show_detail(" + obj.id + ");'><span class='glyphicon glyphicon-list' aria-hidden='true'></span>详情</button>";
op2 = "<button id='btn_edit' type='button' class='btn btn-default' onclick='show_modify(" + obj.id + ");'><span class='glyphicon glyphicon-pencil' aria-hidden='true'></span>修改</button>";
op3 = "<button id='btn_edit' type='button' class='btn btn-default' onclick='show_delete(" + obj.id + ");'><span class='glyphicon glyphicon-remove' aria-hidden='true'></span>删除</button>";
op_ = "</div>";
return op + op1 + op2 + op3 +op_;
}
}
]
});
function retrieveData(sSource, aoData, fnCallback) {
$.ajax({
url: sSource, //这个就是请求地址对应sAjaxSource
data: {"aoData": JSON.stringify(aoData)}, //这个是把datatable的一些基本数据传给后台,比如起始位置,每页显示的行数 ,分页,排序,查询等的值
type: 'GET',
dataType: 'json',
async: false,
success: function (result) {
fnCallback(result); //把返回的数据传给这个方法就可以了,datatable会自动绑定数据的
},
error: function (msg) {
}
});
}
});
</script>
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-70155-6.html
quot
中国人不打中国人