1. 程式人生 > >day69_淘淘商城專案_02_dubbo介紹 + dubbo框架整合 + zookeeper + 商品列表查詢實現 + 分頁 + 逆向工程_匠心筆記

day69_淘淘商城專案_02_dubbo介紹 + dubbo框架整合 + zookeeper + 商品列表查詢實現 + 分頁 + 逆向工程_匠心筆記

淘淘商城專案_02

  • 課程計劃
    • 第二天:商品列表功能實現
  • 1、功能分析
  • 2、服務中介軟體Dubbo
  • 3、SSM框架整合+Zookeeper
  • 4、Dubbo的Admin管理平臺
  • 5、後臺商品列表查詢功能實現

1、功能分析

1.1、後臺系統所用的技術

  • 框架:Spring + SpringMVC + Mybatis + Dubbo
  • 前端:EasyUI
  • 資料庫:MySQL

1.2、建立資料庫

  • 1、安裝mysql資料庫,要求5.5以上版本。
  • 2、在mysql中建立一個taotao資料庫。
  • 3、將建立資料庫的指令碼taotao.sql匯入到taotao中。

1.3、Mybatis逆向工程

  • 使用mybatis官方提供的mybatis-generator生成pojo、mapper介面及對映檔案。
  • 並且將pojo放到toatao-manager-pojo工程中。
  • 將mapper介面及對映檔案放到taotao-manager-dao工程中。
    • 注意1:因為涉及到各個工程(系統)之間來回傳遞物件,所以使用時需要對涉及到的POJO實現序列化介面。
      • 我們發現mybatis的外掛,有一個可以自動給所有pojo實現序列化介面(example除外)
    • 注意2:如果生成的pojo能夠有toString()的重寫會給開發、除錯帶來很大的方便,所以我們也將生成的pojo重寫toString()方法。
      • 同樣使用mybatis的外掛。
    • 即我們在使用Mybatis逆向工程的時候,在其配置檔案generatorConfig.xml中配置下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
  PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
  "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">

<generatorConfiguration>
    <context id="testTables" targetRuntime="MyBatis3">
		<!-- 配置生成pojo的序列化的外掛,mybatis支援很多外掛,這些外掛都在 org.mybatis.generator.plugins包下  -->
		<plugin type="org.mybatis.generator.plugins.SerializablePlugin" />
				
		<!--配置生成pojo的toString()方法的外掛,mybatis支援很多外掛,這些外掛都在 org.mybatis.generator.plugins包下 -->
		<plugin type="org.mybatis.generator.plugins.ToStringPlugin" />
		
		<commentGenerator>
			<!-- 是否去除自動生成的註釋 true:是 : false:否 -->
			<property name="suppressAllComments" value="true" />
		</commentGenerator>
		<!--資料庫連線的資訊:驅動類、連線地址、使用者名稱、密碼 -->
		<jdbcConnection driverClass="com.mysql.jdbc.Driver"
			connectionURL="jdbc:mysql://localhost:3306/taotao" userId="root" password="root">
		</jdbcConnection>
		<!-- 預設false時,把JDBC DECIMAL 和 NUMERIC 型別解析為 Integer
			  當為 true時,把JDBC DECIMAL 和  NUMERIC 型別解析為java.math.BigDecimal -->
		<javaTypeResolver>
			<property name="forceBigDecimals" value="false" />
		</javaTypeResolver>

		<!-- targetProject:生成PO類的位置 -->
		<javaModelGenerator targetPackage="com.taotao.pojo" targetProject=".\src">
			<!-- enableSubPackages:是否讓schema作為包的字尾 -->
			<property name="enableSubPackages" value="false" />
			<!-- 從資料庫返回的值被清理前後的空格 -->
			<property name="trimStrings" value="true" />
		</javaModelGenerator>
        <!-- targetProject:mapper對映檔案生成的位置 -->
		<sqlMapGenerator targetPackage="com.taotao.mapper" targetProject=".\src">
			<!-- enableSubPackages:是否讓schema作為包的字尾 -->
			<property name="enableSubPackages" value="false" />
		</sqlMapGenerator>
		<!-- targetPackage:mapper介面生成的位置 -->
		<javaClientGenerator type="XMLMAPPER" targetPackage="com.taotao.mapper" targetProject=".\src">
			<!-- enableSubPackages:是否讓schema作為包的字尾 -->
			<property name="enableSubPackages" value="false" />
		</javaClientGenerator>
		<!-- 指定資料庫表 -->
		<table schema="" tableName="tb_content"></table>
		<table schema="" tableName="tb_content_category"></table>
		<table schema="" tableName="tb_item"></table>
		<table schema="" tableName="tb_item_cat"></table>
		<table schema="" tableName="tb_item_desc"></table>
		<table schema="" tableName="tb_item_param"></table>
		<table schema="" tableName="tb_item_param_item"></table>
		<table schema="" tableName="tb_order"></table>
		<table schema="" tableName="tb_order_item"></table>
		<table schema="" tableName="tb_order_shipping"></table>
		<table schema="" tableName="tb_user"></table>
	</context>
</generatorConfiguration>

使用方法:將Java工程generatorSqlmapCustom匯入到eclipse中,執行/generatorSqlmapCustom/src/下的GeneratorSqlmap.java檔案生成我們所需的程式碼。

1.4、系統間通訊問題

1.4.1、分析

  由於淘淘商城是基於soa的架構,表現層和服務層是不同的工程。所以要實現商品列表查詢需要兩個系統之間進行通訊。
  如何實現遠端通訊?

  • 1、使用Webservice:效率不高,它是基於soap協議(html+xml)。專案中不推薦使用。優點是:跨語言、跨平臺。適用於兩個公司之間。
  • 2、使用Restful形式的服務:http+json。很多專案中應用。如果服務越來越多,服務與服務之間的呼叫關係複雜,呼叫服務的URL管理複雜,什麼時候新增機器難以確定。 需要治療服務。適用於中小型企業。
  • 3、使用Dubbo:使用RPC協議進行遠端呼叫,直接使用socket通訊傳輸效率高,並且可以統計出系統之間的呼叫關係、呼叫次數,管理服務。適用於大型企業。缺點:不能跨語言。只能java語言。

2、Dubbo

2.1、什麼是dubbo

  最新中文網址:https://dubbo.incubator.apache.org/zh-cn/index.html
  DUBBO是一個分散式服務框架,致力於提供高效能和透明化的RPC遠端服務呼叫方案,是阿里巴巴SOA服務化治理方案的核心框架,每天為2,000+個服務提供3,000,000,000+次訪問量支援,並被廣泛應用於阿里巴巴集團的各成員站點。
  隨著網際網路的發展,網站應用的規模不斷擴大,常規的垂直應用架構已無法應對,分散式服務架構以及流動計算架構勢在必行,亟需一個治理系統確保架構有條不紊的演進。

  • 單一應用架構
    當網站流量很小時,只需一個應用,將所有功能都部署在一起,以減少部署節點和成本。
    此時,用於簡化增刪改查工作量的資料訪問框架(ORM)是關鍵。
  • 垂直應用架構
    當訪問量逐漸增大,單一應用增加機器帶來的加速度越來越小,將應用拆成互不相干的幾個應用,以提升效率。
    此時,用於加速前端頁面開發的Web框架(MVC)是關鍵。
  • 分散式服務架構
    當垂直應用越來越多,應用之間互動不可避免,將核心業務抽取出來,作為獨立的服務,逐漸形成穩定的服務中心,使前端應用能更快速的響應多變的市場需求。
    此時,用於提高業務複用及整合的分散式服務框架(RPC)是關鍵。
  • 流動計算架構
    當服務越來越多,容量的評估,小服務資源的浪費等問題逐漸顯現,此時需增加一個排程中心基於訪問壓力實時管理叢集容量,提高叢集利用率。
    此時,用於提高機器利用率的資源排程和治理中心(SOA)是關鍵。
  • Dubbo就是資源排程和治理中心的管理工具
  • Dubbo 就是類似於webservice的關於系統之間通訊的框架,並可以統計管理服務直接的呼叫情況(包括服務被誰呼叫了,呼叫的次數是如何,以及服務的使用狀況)。

2.2、Dubbo的架構

  • Apache Dubbo (incubating) |ˈdʌbəʊ| 是一款高效能、輕量級的開源Java RPC框架,它提供了三大核心能力:面向介面的遠端方法呼叫,智慧容錯和負載均衡,以及服務自動註冊和發現。
  • 節點角色說明:
    • Provider: 暴露服務的服務提供方。
    • Consumer: 呼叫遠端服務的服務消費方。
    • Registry: 服務註冊與發現的註冊中心。
    • Monitor: 統計服務的呼叫次調和呼叫時間的監控中心。
    • Container: 服務執行容器。
  • 呼叫關係說明:
    • 0、服務容器負責啟動,載入,執行服務提供者。
    • 1、服務提供者在啟動時,向註冊中心註冊自己提供的服務。
    • 2、服務消費者在啟動時,向註冊中心訂閱自己所需的服務。
    • 3、註冊中心返回服務提供者地址列表給消費者,如果有變更,註冊中心將基於長連線推送變更資料給消費者。
    • 4、服務消費者,從提供者地址列表中,基於軟負載均衡演算法,選一臺提供者進行呼叫,如果呼叫失敗,再選另一臺呼叫。
    • 5、服務消費者和提供者,在記憶體中累計呼叫次數和呼叫時間,定時每分鐘傳送一次統計資料到監控中心。

2.3、Dubbo的使用方法

  • spring配置
    • Dubbo採用全Spring配置方式,透明化接入應用,對應用沒有任何API侵入,只需用Spring載入Dubbo的配置即可,Dubbo基於Spring的Schema擴充套件進行載入。
  • 單一工程中spring的配置local.xml(沒有使用dubbo時):
    <bean id="xxxService" class="com.xxx.XxxServiceImpl" />
    <bean id="xxxAction" class="com.xxx.XxxAction">
    	<property name="xxxService" ref="xxxService" />
    </bean>
  • 遠端服務(使用dubbo時):
    在本地服務的基礎上,只需做簡單配置,即可完成遠端化:
    將上面的local.xml配置拆分成兩份,將服務定義部分放在服務提供方remote-provider.xml,將服務引用部分放在服務消費方remote-consumer.xml。
    並在服務提供方增加暴露服務配置<dubbo:service>,在服務消費方增加引用服務配置<dubbo:reference>

服務層釋出服務:

    <!-- 和本地服務一樣實現遠端服務 -->
    <bean id="xxxService" class="com.xxx.XxxServiceImpl" />
    <!-- 增加暴露遠端服務配置 -->
    <dubbo:service interface="com.xxx.XxxService" ref="xxxService" />

表現層呼叫服務:

    <!-- 增加引用遠端服務配置 -->
    <dubbo:reference id="xxxService" interface="com.xxx.XxxService" />
    <!-- 和本地服務一樣使用遠端服務 -->
    <bean id="xxxAction" class="com.xxx.XxxAction">
    	<property name="xxxService" ref="xxxService" />
    </bean>

2.4、註冊中心–zookeeper

2.4.1、zookeeper的介紹

  Zookeeper(叢集管理工具:動物管理員)適用於大資料裡面的生態系統。比如:大資料中的hadoop(大象)、Hive(蜂巢)等等動物需要動物管理員來管理哈!
  Dubbo中使用Zookeeper是作為註冊中心使用的,註冊中心負責服務地址的註冊與查詢,相當於目錄服務,服務提供者和消費者只在啟動時與註冊中心互動,註冊中心不轉發請求,壓力較小。使用dubbo-2.3.3以上版本,建議使用Zookeeper註冊中心。
  Zookeeper是Apacahe Hadoop的子專案,是一個樹型的目錄服務,支援變更推送,適合作為Dubbo服務的註冊中心,工業強度較高(穩定性好),可用於生產環境,並推薦使用。

2.4.2、環境準備

  • 虛擬機器軟體環境:VMware 14 PRO
  • linux環境:CentOS 7.5
  • 環境我已經裝備好了,我們使用VMWare開啟虛擬機器。

2.4.3、使用SecureCRT連線Linux系統

  • 清除所有檔案,我們先要有一個乾乾淨淨的Linux系統。如下圖:

2.4.4、zookeeper的安裝

  • 第一步:linux上安裝jdk,參考連結:https://www.cnblogs.com/chenmingjun/p/9931593.html
  • 第二步:上傳linux版本的zookeeper壓縮包至linux系統下的/user/local/zookeeper目錄下,解壓縮zookeeper壓縮包
  • 第三步:進入zookeeper解壓目錄,將conf資料夾下zoo_sample.cfg改名為zoo.cfg,命令:mv zoo_sample.cfg zoo.cfg
  • 第四步:編輯zoo.cfg檔案,修改配置dataDir屬性,指定一個真實目錄(進入zookeeper解壓目錄,建立data目錄:mkdir data)
  • 第五步:
    • 啟動zookeeper:bin/zkServer.sh start
    • 關閉zookeeper:bin/zkServer.sh stop
    • 檢視zookeeper狀態:bin/zkServer.sh status
    • 注意:如果出現問題,需要關閉linux的防火牆。否則不建議關閉防火牆,而是配置防火牆。

3、SSM框架整合+Zookeeper

3.1、需求

  • 根據商品id查詢商品資訊,並將商品資訊使用json資料返回。
  • 分析:
    • 請求的url:/item/{itemId}  注意:(把引數放在了請求的裡面,使用Restfull軟體架構設計模式)
    • 引數:商品id,從請求的url中獲得
    • 返回值:TbItem物件,逆向工程生成的pojo(響應json資料)

3.2、配置對dubbo的依賴

  • 加入dubbo相關的jar包。服務層、表現層都要配置。在服務層、表現層的pom.xml檔案中新增依賴。

服務層:taotao-manager-service/pom.xml

    <!-- 配置對dubbo的依賴 -->
    <!-- dubbo相關 -->
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>dubbo</artifactId>
        <version>${dubbo.version}</version>
    </dependency>
    <dependency>
        <groupId>org.apache.zookeeper</groupId>
        <artifactId>zookeeper</artifactId>
        <version>${zookeeper.version}</version>
    </dependency>
    <dependency>
        <groupId>com.github.sgroschupf</groupId>
        <artifactId>zkclient</artifactId>
        <version>${zkclient.version}</version>
    </dependency>

**注意:**當我們配置對dubbo的依賴後,要檢視dubbo的依賴關係,排除掉dubbo依賴的低版本的jar,比如:spring-2.5.6.SEC03.jar和netty-3.2.5.Final.jar(這同樣也是程式設計的好習慣)!
排除方法:
方法一:在taotao-manager-service/pom.xml中手動編寫程式碼,所以最終pom.xml中要新增的內容如下:

    <!-- 配置對dubbo的依賴 -->
    <!-- dubbo相關 -->
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>dubbo</artifactId>
        <!-- 排除對低版本jar包的依賴 -->
        <exclusions>
        	<exclusion>
        		<artifactId>spring</artifactId>
        		<groupId>org.springframework</groupId>
        	</exclusion>
        	<exclusion>
        		<artifactId>netty</artifactId>
        		<groupId>org.jboss.netty</groupId>
        	</exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.apache.zookeeper</groupId>
        <artifactId>zookeeper</artifactId>
    </dependency>
    <dependency>
        <groupId>com.github.sgroschupf</groupId>
        <artifactId>zkclient</artifactId>
    </dependency>

方法二:使用圖形化介面,如下圖所示:

二種方式本質是一樣的!
表現層:taotao-manager-web/pom.xml

    <!-- 配置對dubbo的依賴 -->
    <!-- dubbo相關 -->
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>dubbo</artifactId>
        <!-- 排除對低版本jar包的依賴 -->
        <exclusions>
        	<exclusion>
        		<artifactId>spring</artifactId>
        		<groupId>org.springframework</groupId>
        	</exclusion>
        	<exclusion>
        		<artifactId>netty</artifactId>
        		<groupId>org.jboss.netty</groupId>
        	</exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.apache.zookeeper</groupId>
        <artifactId>zookeeper</artifactId>
    </dependency>
    <dependency>
        <groupId>com.github.sgroschupf</groupId>
        <artifactId>zkclient</artifactId>
    </dependency>

3.3、整合思路

  • 1、Dao層:
    mybatis整合spring,通過spring管理SqlSessionFactory、Mapper代理物件。需要mybatis和spring的整合包。由spring建立資料庫連線池。
    下圖所示為檔案所對應的工程:
  • 2、Service層:
    所有的service實現類都放到spring容器中管理,並由spring管理事務。釋出dubbo服務
    下圖所示為檔案所對應的工程:

    web.xml中:配置載入spring容器
  • 3、表現層:
    springmvc框架,由springmvc管理Controller。引用dubbo服務
    下圖所示為檔案所對應的工程:

    web.xml中:配置前端控制器,配置URL攔截形式。

3.4、Dao整合

  • 整合後的目錄結構如下:後面的配置檔案可以參考此圖片建立目錄(這樣的目錄結構賞心悅目啊!)

3.4.1、建立SqlMapConfig.xml配置檔案

SqlMapConfig.xml(由於和spring進行整合了,裡面空空如也,但是該檔案必須要有!)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
		PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
		"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>

</configuration>

3.4.2、spring整合mybatis

建立applicationContext-dao.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:context="http://www.springframework.org/schema/context" 
	xmlns:p="http://www.springframework.org/schema/p"
	xmlns:aop="http://www.springframework.org/schema/aop" 
	xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans 
	http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
	http://www.springframework.org/schema/context 
	http://www.springframework.org/schema/context/spring-context-4.2.xsd
	http://www.springframework.org/schema/aop 
	http://www.springframework.org/schema/aop/spring-aop-4.2.xsd 
	http://www.springframework.org/schema/tx 
	http://www.springframework.org/schema/tx/spring-tx-4.2.xsd
	http://www.springframework.org/schema/util 
	http://www.springframework.org/schema/util/spring-util-4.2.xsd">
	<!-- 配置資料庫連線池 -->
	<!-- 載入配置檔案 -->
	<context:property-placeholder location="classpath:properties/-*.properties" />
	<!-- 資料庫連線池 -->
	<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
		destroy-method="close"
            
           

相關推薦

day69_商城專案_02_dubbo介紹 + dubbo框架整合 + zookeeper + 商品列表查詢實現 + + 逆向工程_匠心筆記

淘淘商城專案_02 1、功能分析 1.1、後臺系統所用的技術 1.2、建立資料庫 1.3、Mybatis逆向工程 1.4、系統間通訊問題 1.4.1、分析

day81_商城專案_14_專案釋出 + Linux下安裝mysql + tomcat熱部署 + 資料庫分庫表 + Mycat學習_匠心筆記

第十四天: 1、Linux上mysql的安裝 2、系統的部署 3、mycat的介紹 4、專案總結 5、面試中的問題 1、開發流程淺解 2、專案釋出前的準備 1、測試  a) 本地單元測試  b) 測試環境測試(1,2,3,4,5)  c) 使用

【SSH網上商城專案實戰05】完成資料庫的級聯查詢

  轉自:https://blog.csdn.net/eson_15/article/details/51320212 上一節我們完成了EasyUI選單的實現。這一節我們主要來寫一下CategoryServiceImpl實現類,完成資料庫的級聯查詢。一般專案從後往前做,先做se

分散式電商專案(04)--商品列表查詢

前言:前面寫了後天管理系統工程搭建以及框架的整合測試,今天寫一下商品列表的分頁查詢 1 需求分析 前臺使用easyui的分頁工具,後臺則使用mybatis分頁外掛pagehelper 如上圖所示,開啟後臺首頁,點選查詢商品,按下F12,可以看到easyui的分頁介面會向controller傳送兩個資

day81_商城專案_14_專案釋出 + Linux下安裝mysql + tomcat熱部署 + 反向代理的配置 + 資料庫分庫表 + Mycat學習_匠心筆記

淘淘商城專案_14 1、開發流程淺解 2、專案釋出前的準備 3、專案部署 3.1、Linux下安裝mysql 3.2、專案架構講解 3.3、系統功能介紹 3.4、網路拓撲圖 3.5

【SSH網上商城專案實戰12】新增和更新商品功能的實現

  新增商品部分原理和新增商品類別是一樣的,不過要比商品類別複雜,因為商品的屬性有很多,對應的資料庫中的欄位也就多了,新增商品還有個選項是上傳圖片,這一小塊內容會在下一篇部落格中單獨說明,因為這涉及到一個知識點,就是Struts2實現檔案上傳功能。其他廢話不多說了,現在開始完善新增

商城專案_同步索引庫問題分析 + ActiveMQ介紹/安裝/使用 + ActiveMQ整合spring + 使用ActiveMQ實現新增商品後同步索引庫_匠心筆記

文章目錄 1、同步索引庫問題分析 2、ActiveM的介紹 2.1、什麼是ActiveMQ 2.2、ActiveMQ的訊息形式 3、ActiveMQ的安裝 3.1、安裝環境 3.2、安裝步驟

day75_商城專案_08_同步索引庫問題分析 + ActiveMQ介紹/安裝/使用 + ActiveMQ整合spring + 使用ActiveMQ實現新增商品後同步索引庫_匠心筆記

淘淘商城專案_08 1、同步索引庫問題分析 2、ActiveM的介紹 2.1、什麼是ActiveMQ 2.2、ActiveMQ的訊息形式 3、ActiveMQ的安裝 3.1、安裝環

day71_商城專案_04_入口網站介紹 + 商城搭建 + CMS內容管理系統的建立 + CMS內容管理系統的實現_匠心筆記

淘淘商城專案_04 1、門戶(前臺)系統的搭建 1.1、什麼是門戶系統 1.2、系統架構 1.3、搭建taotao-portal-web工程 1.3.1、建立Maven工程 1.3

day68_商城專案_01_電商介紹 + 網際網路術語 + SOA + 分散式 + 叢集介紹 + 環境配置 + 框架搭建_匠心筆記

淘淘商城專案_01 1、電商行業的背景介紹--電子商務 1.1、11.11 1.2、電商行業技術特點 2、淘淘商城的系統架構 2.1、淘淘商城介紹 2.2、功能介紹 2

day74_商城專案_07_solrcloud搭建 + zookeeper叢集搭建 + 搜尋功能切換到叢集版 + httpclient學習 + 全域性異常處理器 + 附錄_匠心筆記

課程計劃 1、solr叢集的搭建 2、使用solrJ管理solr叢集 3、把搜尋功能切換到solr叢集版 4、httpclient 5、全域性異常處理 1、什麼是SolrCloud   SolrCloud(solr 雲)是Solr提供的分散式搜尋

day79_商城專案_12_購物車流程 + 商城購物車系統的搭建 + 商城購物車系統的實現分析 + 購物車實現增刪改查_匠心筆記

課程計劃 1、購物車的流程 2、購物車的實現 a) 登入狀態下的購物車實現 b) 未登入狀態下的購物車實現 1、購物車流程 1.1、以前的購物車流程 使用者將商品新增到購物車時,判斷使用者是否登入,如果已經登入將購物車放入se

day82_商城_15_專案的總結 + 專案中的問題_匠心筆記

專案的總結 第一天: 學習電商行業的背景,電商模式:B2B、B2C、B2B2C、O2O。分散式,叢集的理解,系統的架構,基於SSO的架構。使用Maven搭建後臺工程,及SVN的使用。 第二天: dubbo的學習和使用,系統和系統之間通訊的中介軟體。webservice :系統之間通訊。應

day73_商城專案_06_solr索引庫搭建 + solr搜尋功能實現 + 圖片顯示等問題解決_匠心筆記

課程計劃 第六天: 1、搜尋工程的搭建 2、linux下solr服務的搭建 3、測試使用solrJ管理索引庫 4、把商品資料匯入到索引庫中(後臺功能) 5、商品搜尋功能實現(前臺功能) 1、搜尋工程的搭建 要實現搜尋功能,需要搭建solr服務、搜尋服務工程、搜尋系統(表

day82_商城專案_15_專案總結 + 專案中的問題_匠心筆記

專案總結 第一天 1、電商行業的背景,b2b、b2c、b2b2c、c2c、o2o2。 2、系統的架構。基於SOA的架構。 3、工程搭建。使用maven管理工程。 4、svn的使用。 第二天 1、ssm框架整合。 2、使用dubbo進行通訊   1)服務提供者   2)服務消費者

day80_商城專案_13_訂單系統搭建 + 展示訂單確認頁面 + 使用者身份認證(SpringMVC攔截器) + 實現提交訂單功能_匠心筆記

淘淘商城專案_13 1、訂單系統搭建 1.1、功能分析 1.2、工程搭建 1.2.1、建立訂單服務層工程 1.2.2、建立訂單表現層工程 2、展示訂單確認頁面

day79_商城專案_12_購物車流程 + 商城購物車系統的搭建 + 商城購物車系統的實現分析(cookie+redis方案) + 購物車實現增刪改查_匠心筆記

淘淘商城專案_12 1、購物車流程 1.1、以前的購物車流程 1.2、現在的購物車流程 2、商城購物車系統的搭建 2.1、購物車系統的架構 2.2、服務層工程搭建

day78_商城專案_11_實現SSO系統的登入註冊功能 + 門戶首展示使用者名稱 + ajax請求跨域問題詳解_匠心筆記

淘淘商城專案_11 1、服務介面實現 1.1、檢查資料是否可用介面開發 1.1.1、功能分析 1.1.2、Dao 1.1.3、Service 1.1.4、釋出服務

day77_商城專案_10_ Linux下的Nginx代理詳解(配置虛擬主機+實現反向代理+實現負載均衡+高可用) + 單點登入系統工程搭建 + SSO系統介面文件講解_匠心筆記

淘淘商城專案_10 1、目前訪問系統使用的方式存在的問題 2、什麼是nginx 3、nginx的應用場景 4、nginx的安裝 4.1、要求的安裝環境 4.2、安裝步驟 4.3、啟動nginx

day76_商城專案_09_商品詳情動態展示實現(jsp+redis) + FreeMarker模板引擎入門 + 商品詳情靜態化實現(Win版本的nginx作http伺服器)_匠心筆記

淘淘商城專案_09 1、商品詳情頁面展示,動態展示(jsp + redis) 1.1、工程搭建 1.1.1、pom檔案 1.1.2、框架整合 1.1.3、springmvc.xml