SSM框架整合-分層式開發架構

SSM:Spring+SPringMVC+Mybaits

Spring官網:https://spring.io/

SSM框架整合:SM整合+SpringMVC

分層式開發架構:

  • 視圖層(JSP)

  • 業務控制層(Controller)

  • 業務邏輯層(Service)

  • 數據持久層(Dao-Mapper)

    在這裏插入圖片描述

SM整合(Spring - MyBatis) :將MyBatis的SqlSessionFactory 交給Spring
1.導jar:
	spring-core.jar		spring-beans.jar		spring-context.jar		spring-aop.jar		spring-expression.jar
	spring-web.jar		spring-context-support.jar
	spring-tx.jar			spring-jdbc.jar
	mybatis.jar				log4j.jar			commons-logging.jar		commons-pool.jar		commons-dbcp.jar		mysql-connector-java.jar
	mybatis-spring-1.3.1.jar
	spring-webmvc-4.3.9.RELEASE.jar
	
2.類-表-DB

3.通過xxx-mapper.xml將 類-表建立映射關係

4.配置Spring配置文件(applicationContext.xml , web.xml)
		<!-- 加載db.properties文件 -->
		<bean id="config" class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
			<property name="locations">
				<array><value>classpath:db.properties</value></array>
			</property>
		</bean>
		<!-- 配置配置數據庫信息(替代mybatis的配置文件conf.xml) -->
		<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
			<property name="driverClassName" value="${driver}"></property>
			<property name="url" value="${url}"></property>
			<property name="username" value="${username}"></property>
			<property name="password" value="${password}"></property>
		</bean>
		<!-- 在SpringIoc容器中 創建MyBatis的核心類 SqlSesionFactory -->
		<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
			<property name="dataSource" ref="dataSource"></property>
		   <!-- 加載mapper.xml路徑 -->
			<property name="mapperLocations" value="classpath:com/demo/mapper/*.xml"></property>
		</bean>
	
	db.properties:
		driver=com.mysql.jdbc.Driver
		url=jdbc:mysql://localhost:3306/數據庫名
		username=數據庫賬號
		password=數據庫密碼
		maxIdle=1000
		maxActive=500
		
	web.xml
	  <!-- Web項目中,引入Spring ,程序的入口-->
	  <context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>classpath:applicationContext.xml</param-value>
	  </context-param>
	  <!-- 配置監聽器 -->
	  <listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	  </listener>

5.使用Spring-MyBatis整合產物開發程序
		通過spring產生mybatis最終操作需要的 動態mapper對象(xxxMapper對象)
	<!-- 將MyBatis的SqlSessionFactory 交給Spring -->
	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
		<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
	   <!-- 批量產生多個mapper對象-在SpringIOC中的 id值 默認就是首字母小寫接口名 (首字母小寫的接口名=id值)-->
		<property name="basePackage" value="com.demo.mapper"></property>
	</bean>		
整合SpringMVC(Spring - SpringMVC):各自配置一遍
6.給項目加入SpringMVC支持web.xml: DispatcherServlet
	<!-- 整合SPringMVC -->
	<servlet>
		<servlet-name>springDispatcherServlet</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>classpath:applicationContext-controller.xml</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>springDispatcherServlet</servlet-name>
		<url-pattern>/</url-pattern>
	</servlet-mapping>

7.編寫springmvc配置文件:applicationContext-controller.xml:視圖解析器、基礎配置
	<!-- 將控制器所在包 加入IOC容器 -->
	<context:component-scan base-package="com.demo.controller"></context:component-scan>

	<!-- 配置視圖解析器 -->
	<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="prefix" value="/views/"></property>
		<property name="suffix" value=".jsp"></property>
	</bean>
	<!-- SPringMVC基礎配置、標配 -->
	<mvc:annotation-driven></mvc:annotation-driven>

測試優化:

  • Jmeter壓力測試:https://www.cnblogs.com/monjeo/p/9330464.html
  • Jvisual-JVM
  • mysqldumpslow-DB
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章