2、框架整合天通、后臺(tái)系統(tǒng)的搭建

在互聯(lián)網(wǎng)行業(yè)的項(xiàng)目中盡可能減少表的關(guān)聯(lián)查詢,使用冗余解決表的關(guān)聯(lián)問題。有利于分庫分表

sku:最小庫存單位豪嗽。就是商品 id。就是商品最細(xì)力度的劃分豌骏。每個(gè) sku 都對(duì)應(yīng)一款商品(如:iphone6 16G 白色龟梦、iphone6 16G 黑色)。

mybatis的逆向工程肯适。根據(jù)數(shù)據(jù)庫表生成 java 代碼变秦。

SSM框架整合

1、Dao層
使用mybatis框架框舔,創(chuàng)建SqlMapConfig.xml蹦玫。
創(chuàng)建一個(gè)applicationContext-dao.xml
(1)配置數(shù)據(jù)源
(2)讓spring容易管理SqlSessionFactory,單例存在
(3)把mapper的代理對(duì)象放到spring容器中刘绣。使用掃描包的方式加載mapper的代理對(duì)象
2樱溉、Service層
(1)事務(wù)管理
(2)需要把service實(shí)現(xiàn)類對(duì)象放到spring容器中管理
3、表現(xiàn)層
(1)配置注解驅(qū)動(dòng)
(2)配置視圖解析器
(3)需要掃描controller
4纬凤、web.xml
(1)spring容器的配置
(2)springmvc前端控制器的配置
(3)Post亂碼過濾器

整合思路

需要把配置文件放到 taotao-manager-web 工程下福贞。因?yàn)榇斯こ虨?war 工程,其他的工程只是 jar 包停士。(配置文件是tomcat進(jìn)行讀取挖帘,而jar包中的配置文件tomcat讀取不到完丽,所以不能放在jar包中)

spring 與 springmvc 父子容器的關(guān)系

我們通常使用 spring 與 springmvc 時(shí),都是在 spring 容器中掃描 service拇舀、dao逻族,在 springvc 中掃描 controller,controller依賴service骄崩,但是springmvc本聲明沒有掃描service拿到service對(duì)象聘鳞,通過子父容器管理所以可以訪問父容器的service。

假設(shè)我們將controller的掃描放在spring容器而不是springmvc容器即spring中做全局掃描而springmvc中不做掃描要拂,這樣會(huì)出現(xiàn)404的錯(cuò)誤抠璃,controller必須要放在controller中。

還有一種情況脱惰,當(dāng)我們不考慮系統(tǒng)構(gòu)架的延展性搏嗡,我們可以不使用spring容器,將包的全局掃描放在springmvc中枪芒,即 <context:component-scan base-package="com.taotao" />這樣也能實(shí)現(xiàn)容器對(duì)象管理彻况。

父子容器.jpg

修改taotao-manager-mapper的pom文件

如果不添加此節(jié)點(diǎn)mybatis的mapper.xml文件都會(huì)被漏掉。

找不到mapper映射文件.png

在taotao-manager-mapper的pom文件中添加如下內(nèi)容:

<build>
    <resources>
        <resource>
            <directory>src/main/java</directory>
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
            <filtering>false</filtering>
        </resource>
    </resources>
</build>
使用maven的tomcat插件時(shí)Debug
問題.png

解決方案:

1.png
2.png
3.png
4.png

下次啟動(dòng)Debug生效

分頁插件PageHelper

使用方法
1舅踪、引入pageHelper的jar包纽甘,在taotao-manager-mapper的pom文件中添加。

<dependency>
  <groupId>com.github.pagehelper</groupId>
  <artifactId>pagehelper</artifactId>
</dependency>

2抽碌、需要在SqlMapConfig.xml文件中配置插件悍赢。

<!-- 配置分頁插件 -->
<plugins>
  <plugin interceptor="com.github.pagehelper.PageHelper">
    <!-- 設(shè)置數(shù)據(jù)庫類型 Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六種數(shù)據(jù)庫-->        
    <property name="dialect" value="mysql"/>
  </plugin>
</plugins>

3、在查詢的sql語句執(zhí)行之前货徙,添加一行代碼:

PageHelper.startPage(1, 10);

第一個(gè)參數(shù)是page左权,要顯示第幾頁。
第二個(gè)參數(shù)是rows痴颊,沒頁顯示的記錄數(shù)赏迟。

4、取查詢結(jié)果的總數(shù)量蠢棱。
創(chuàng)建一個(gè)PageInfo類的對(duì)象锌杀,從對(duì)象中取分頁信息。

public class TestPageHelper {
    @Test
    public void testPageHelper() {
        //創(chuàng)建一個(gè)spring容器
        ApplicationContext applicationContext = new ClassPathXmlApplicationContext("classpath:spring/applicationContext-*.xml");
        //從spring容器中獲得Mapper的代理對(duì)象
        TbItemMapper mapper = applicationContext.getBean(TbItemMapper.class);
        //執(zhí)行查詢泻仙,并分頁
        TbItemExample example = new TbItemExample();
        //分頁處理
        PageHelper.startPage(2, 10);
        List<TbItem> list = mapper.selectByExample(example);
        //取商品列表
        for (TbItem tbItem : list) {
            System.out.println(tbItem.getTitle());
        }
        //取分頁信息
        PageInfo<TbItem> pageInfo = new PageInfo<>(list);
        long total = pageInfo.getTotal();
        System.out.println("共有商品:"+ total);
    }
}

原版本對(duì)逆向工程生成的代碼支持不好糕再,不能對(duì)有查詢條件的查詢進(jìn)行分頁,會(huì)拋異常玉转。這個(gè)版本是修改版(黑馬版)突想。

PageHelper.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子猾担,更是在濱河造成了極大的恐慌袭灯,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,820評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件绑嘹,死亡現(xiàn)場離奇詭異妓蛮,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)圾叼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來捺癞,“玉大人夷蚊,你說我怎么就攤上這事∷杞椋” “怎么了惕鼓?”我有些...
    開封第一講書人閱讀 168,324評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長唐础。 經(jīng)常有香客問我箱歧,道長,這世上最難降的妖魔是什么一膨? 我笑而不...
    開封第一講書人閱讀 59,714評(píng)論 1 297
  • 正文 為了忘掉前任呀邢,我火速辦了婚禮,結(jié)果婚禮上豹绪,老公的妹妹穿的比我還像新娘价淌。我一直安慰自己,他們只是感情好瞒津,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,724評(píng)論 6 397
  • 文/花漫 我一把揭開白布蝉衣。 她就那樣靜靜地躺著,像睡著了一般巷蚪。 火紅的嫁衣襯著肌膚如雪病毡。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,328評(píng)論 1 310
  • 那天屁柏,我揣著相機(jī)與錄音啦膜,去河邊找鬼。 笑死前联,一個(gè)胖子當(dāng)著我的面吹牛功戚,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播似嗤,決...
    沈念sama閱讀 40,897評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼啸臀,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起乘粒,我...
    開封第一講書人閱讀 39,804評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤豌注,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后灯萍,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體轧铁,經(jīng)...
    沈念sama閱讀 46,345評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,431評(píng)論 3 340
  • 正文 我和宋清朗相戀三年旦棉,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了齿风。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,561評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡绑洛,死狀恐怖救斑,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情真屯,我是刑警寧澤脸候,帶...
    沈念sama閱讀 36,238評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站绑蔫,受9級(jí)特大地震影響运沦,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜配深,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,928評(píng)論 3 334
  • 文/蒙蒙 一携添、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧凉馆,春花似錦薪寓、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,417評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至嗦董,卻和暖如春母谎,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背京革。 一陣腳步聲響...
    開封第一講書人閱讀 33,528評(píng)論 1 272
  • 我被黑心中介騙來泰國打工奇唤, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人匹摇。 一個(gè)月前我還...
    沈念sama閱讀 48,983評(píng)論 3 376
  • 正文 我出身青樓咬扇,卻偏偏與公主長得像,于是被迫代替她去往敵國和親廊勃。 傳聞我的和親對(duì)象是個(gè)殘疾皇子懈贺,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,573評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理经窖,服務(wù)發(fā)現(xiàn),斷路器梭灿,智...
    卡卡羅2017閱讀 134,702評(píng)論 18 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,856評(píng)論 6 342
  • 從三月份找實(shí)習(xí)到現(xiàn)在画侣,面了一些公司,掛了不少堡妒,但最終還是拿到小米配乱、百度、阿里皮迟、京東搬泥、新浪、CVTE伏尼、樂視家的研發(fā)崗...
    時(shí)芥藍(lán)閱讀 42,277評(píng)論 11 349
  • SSM框架整合理解 把IntelliJ IDEA+Maven+Spring + SpringMVC + MyBat...
    青年馬土豆閱讀 9,462評(píng)論 0 21
  • “旅行的樂趣烦粒,就是沉浸在他人故鄉(xiāng),然后又完好無缺地走出來代赁,心中充滿快樂扰她,任憑他人承受自己的命運(yùn)。沒有哪種幸福能勝過...
    晚婉o閱讀 754評(píng)論 6 3