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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章