天天看點

Mybatis 三劍客

1.Mybatis-plugin插件

• 要 查找某一個 方法,在 dao 接口中某一個方法中 按住 Ctrl 鍵 滑鼠指到方法名稱上 選擇 open xml 就會自動跳轉 • 編輯 XML 檔案時自動補全,自動生成 resultMap     安裝鍵盤 alt + / 會彈出提示 框 <resultMap type="com.zq.model.User" id="userMap">

<result property="id" column="id"/>

<result property="username" column="user_name"/>

<result property="pwd" column="user_pwd"/>

<result property="realname" column="realname"/>

<result property="grade" column="grade"/>

<result property="total" column="total"/>

<result property="account" column="account"/>

</resultMap> • 自動 檢查 Mapper XML 檔案中 ID 沖突 • 自動檢查 Mapper XML 檔案中錯誤的屬性 值 • 引用 resultMap <select id="findById" parameterType="integer" resultMap="userMap">

        select * from user where id = #{id}

    </select> 2.MybatisPageHelper分頁 • 中文文檔: https :// github.com/pagehelper/Mybatis-PageHelper/blob/master/wikis/zh/HowToUse.md  

1)、引入jar包:pageHelper分頁插件;jsqlparser分頁插件依賴的sql解析jar包

Mybatis 三劍客

2)、配置:mybatis.config.xml

    <plugins>

        <plugin interceptor="com.github.pagehelper.PageInterceptor">

        </plugin>

    </plugins>

3)、修改controller和service的list方法

@RequestMapping("/list.do")

    public String list(User user,Model model,

            @RequestParam(required=true,value="pageNum",defaultValue="1")Integer pageNum,

            @RequestParam(required=true,value="pageSize",defaultValue="3")Integer pageSize

            ){

        //跳轉user.jsp的頁面,model參數是用來往前台傳參數的

        List<User> users  = userService.list(user);

        //也可以用傳回值類型是ModelAndView:這個裡面可帶傳回的頁面,傳回的資料

        model.addAttribute("pageInfo", users);

        return "user";

    }

Mybatis 三劍客

4)、将user.jsp引入boostrap的分頁插件<script src="${ctx }/js/bootstrap-paginator.min.js"></script>

或者用jquery的分頁也可以:前台參考這個 https://blog.csdn.net/qq_22860341/article/details/82893487

寫分頁标簽代碼

<div style="text-align:right;"> 

                <ul id="pageLimit"></ul> 

            </div>

            <script>              

                $('#pageLimit').bootstrapPaginator({

                    currentPage: "${pageInfo.pageNum }",//目前的請求頁面。

                    totalPages: "${pageInfo.pages }",//一共多少頁。

                  //  size:"small",//應該是頁眉的大小。

                    bootstrapMajorVersion: 3,//bootstrap的版本要求。

                    numberOfPages:"${pageInfo.pageSize }",//一頁列出多少資料。

                    itemTexts: function (type, page, current) {//如下的代碼是将頁眉顯示的中文顯示我們自定義的中文。

                        switch (type) {

                            case "first": return "首頁";

                            case "prev": return "上一頁";

                            case "next": return "下一頁";

                            case "last": return "末頁";

                            case "page": return page;

                        }

                    },

                    onPageClicked:function(event,originalEvent,type,page){//分頁按鈕點選事件

                       // var zhanghao = $("#searchrole").val();   //這是搜尋時的參數,根據實際情況加或者不要

                        var url = '${ctx}/user/list.do?pageNum=' + page;

                        //如果查詢條件不為空,

                        //url = url + '&username=' + 'zq';

                        window.location.href = encodeURI(url);

                    }

                });

            </script> 

3.Mybatis-generator代碼自動生成

• 下載下傳位址: https:// github.com/mybatis/generator/releases • 1) 、将 mybatis-generator-core-1.3.7.zip 中的 jar 包 、 generatorConfig.xml 放到項目 lib 中, • 2) 、在 lib 下面添加 temp 目錄 • 打開 dos 視窗,執行下面指令:

Mybatis 三劍客

    • 然後就可在 temp 中看到生成的 3 個檔案 •

Mybatis 三劍客

• • 将其複制到項目對應目錄,編寫 controller 測試

轉載于:https://my.oschina.net/u/4092026/blog/3037681