aisell总结1

1.springdatajpa的扩展–抽取(难点)

代码直接拷贝过来使用 – 架构师

抽取一个BaseRepository – 写三个方法

//根据Query拿到分页对象(分页)
    Page findPageByQuery(BaseQuery baseQuery);

    //根据Query拿到对应的所有数据(不分页)
    List<T> findByQuery(BaseQuery baseQuery);

    //根据jpql与对应的参数拿到数据
    List findByJpql(String jpql,Object... values);

抽取的实现BaseRepositoryImpl实现

让Spring启动的时候,找BaseRepositoryImpl的实现 —>BaseRepositoryFactoryBean可以让spring去找

BaseRepositoryImpl这个实现

2. 抽取Service层(掌握)

IBaseService --> 完成crud 以及三个公共的方法

BaseServiceImpl -->实现IBaseService --》实现对应的方法

EmployeeServiceImpl 继承BaseServiceImpl(具备CRUD 以及公共的查询方法)

3. 集成SpringMVC(掌握)

和之前集成SSJ一模一样的

4. 加入Easyui(掌握)

5 easyui的tree加载(掌握)

easyui树型插件

 $("#menuTree").tree({
                url:'/json/menu.json',
                onClick:function(node){
                    //添加页签
                    addTabs(node.text,node.url);
                }
            });

tab选项卡

 function addTabs(text,url){

                if(!$("#dataTab").tabs('exists',text)){
                    //内容
                    var content = '<iframe scrolling="auto" frameborder="0"  src="'+url+'" style="width:100%;height:100%;"></iframe>';
                   //新增
                    $('#dataTab').tabs('add',{
                        method:'get',
                        title: text,
                        content:content,
                        closable:true
                    });
                }else{
                    //选中面板
                    $("#dataTab").tabs('select',text);
                }
            }

6完成分页(掌握)

UiPage --》total和rows 总的记录数 页面的数据

EmployeeQuery–>接收前台传递过来数据 page (当前页)/rows(每页条数)

​ setPage

​ setRows

7 高级查询(掌握)

页面准备form表单 点击搜索的时候

加载数据

var itsource = {
        search:function(){
          //怎么完成高级查询 jquery.jdirk.js 这个方法 这是jquery扩展方法
            //该方法返回一个 JSON Object,返回对象中的每个数据都表示一个表单控件值。
            var param = searchForm.serializeObject();
            //发送查询数据库 --加载表格 发送请求 /employee/page
            employeeGrid.datagrid('load',param);
        },
        add:function(){
            alert(1);
        }
    }

在EmployeeQuery里面 写上:

public Specification createSpecification() {
        Specification<Employee> spe = Specifications.<Employee>and().
                like(StringUtils.isNotBlank(username), "username", "%" + username + "%")
                .like(StringUtils.isNotBlank(email), "email", "%" + email + "%")
                .eq(departmentId!=null,"department.id",departmentId)
                .gt(age != null, "age", age)
                .build();

        return spe;
    }

猜你喜欢

转载自blog.csdn.net/weixin_44671176/article/details/98398624