SSM的开发步骤分析
完整开发步骤
- 导包
- spring的jar包
- mybatis的jar包
- mybatis-Spring的jar包
- aop的依赖jar包
- oracle等数据库连接的jar包
- DataSource的jar包
- 日志包
- 导入配置文件
- web.xml
- mvc.xml
- applicationContext.xml
- applicationContext.properties
- 初始化配置
web.xml
spring核心控制器
指定mvc配置文件的路径
指定编码的filter
`<servlet>
<servlet-name>mvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- 指定springMVC配置文件的路径 -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:mvc.xml</param-value>
</init-param>
<!-- 设置tomcat启动前去创建servlet对象 -->
<load-on-startup>1</load-on-startup>
</servlet>
<!-- 指定springMVC的所有控制器的访问路径都以*.do结尾 -->
<servlet-mapping>
<servlet-name>mvc</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>`spring工厂初始化的监听器
spring配置文件初始化
`
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener><!--3. 手动指定配置文件路径 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:/applicationContext.xml</param-value>
</context-param>`
mvc.xml
- 注解管理controlller
- 注解开发mvc
- `<context:component-scan base-package="com.baizhi"></context:component-scan>
<mvc:annotation-driven></mvc:annotation-driven>`
applicationContext.xml
- 引入外部的配置文件
- ` <context:property-placeholder location="classpath:/application.properties"></context:property-placeholder>`
- 开启注解管理除了Controller
- `<context:component-scan base-package="com.baizhi"></context:component-scan>`
- 连接池
- `<bean id="dataSour" class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="oracle.jdbc.OracleDriver"></property>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:xe"></property>
<property name="username" value="${database.username}"></property>
<property name="password" value="${database.password}"></property>
<property name="initialSize" value="${database.initialSize}"></property>
<property name="maxActive" value="${database.maxActive}"></property>
<property name="maxWait" value="${database.maxWait}"></property>
</bean>
` - 事务相关
- `<!-- 配置增强类所需要用到的事务管理器 -->
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSour"></property>
</bean>` - `<!-- 配置能自动生成事务先关的增强类的类 -->
<tx:advice id="txAdvice" transaction-manager="txManager">
<tx:attributes>
<tx:method name="get*" read-only="true" propagation="SUPPORTS" rollback-for="java.lang.RuntimeException"/>
<tx:method name="to*" read-only="false" propagation="REQUIRED" rollback-for="java.lang.RuntimeException"/>
<tx:method name="*" read-only="false" propagation="REQUIRED" rollback-for="java.lang.RuntimeException"/>
</tx:attributes>
</tx:advice>` - `<!-- aop动态代理选择切入点和组装 -->
<aop:config>
<aop:pointcut expression="execution(* com.baizhi.service.impl.*.*(..))" id="usercut"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="usercut"/>
</aop:config>` - Mybatis相关
- `<bean id='sqlSessionFactory' class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSour"></property>
<property name="mapperLocations" value="classpath:/com/baizhi/dao/impl/*.xml"></property>
<property name="typeAliasesPackage" value="com.baizhi.entity"></property>
</bean>
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
<property name="basePackage" value="com.baizhi.dao"></property>
</bean>`
SSM的开发步骤分析的更多相关文章
- 开发步骤Dubbo、spring mvc、springboot、SSM整合开发步骤
一.Dubbo开发步骤: 链接:https://pan.baidu.com/s/1pMPO1kf 密码:9zaa 第一: 1.创建consumer工程2.在pom.xml文件下添加配置3.添加appl ...
- 开发步骤Dubbo、spring mvc、springboot、SSM开发步骤
一.Dubbo开发步骤: 链接:https://pan.baidu.com/s/1pMPO1kf 密码:9zaa 第一: 1.创建consumer工程2.在pom.xml文件下添加配置3.添加appl ...
- 以DDD为开发模式的设计开发步骤可以是
以DDD为开发模式的设计开发步骤可以是:1)分析需求:2)画出用例图,系统中各个角色如何使用系统,也包括外部系统如何使用系统,也包括系统中到某个时间点自动启动的某些功能(此时角色就是时间):3)针对各 ...
- Android_app项目开发步骤总结
做了几个android企业应用项目后,总结了项目的基本开发步骤.希望可以交流. 一 应用规划: ※确定功能. ※必须的界面及界面跳转的流程. ※须要的数据及数据的来源及格 ...
- Web应用程序的开发步骤
Web应用程序的开发步骤 如今已进入了web2.0高速发展的互联网时代,各种互联网的Web应用程序如雨后春笋般出现.那么作为一名Web开发人员,怎样去开发一款优秀的Web应用程序呢?这个问题没有一个简 ...
- SSM框架开发web项目系列(二) MyBatis真正的力量
前言 上篇SSM框架环境搭建篇,演示了我们进行web开发必不可少的一些配置和准备工作,如果这方面还有疑问的地方,可以先参考上一篇“SSM框架开发web项目系列(一) 环境搭建篇”.本文主要介绍MyBa ...
- SSM框架开发web项目系列(五) Spring集成MyBatis
前言 在前面的MyBatis部分内容中,我们已经可以独立的基于MyBatis构建一个数据库访问层应用,但是在实际的项目开发中,我们的程序不会这么简单,层次也更加复杂,除了这里说到的持久层,还有业务逻辑 ...
- ssm基础搭建步骤
今天搭建新的项目环境,从网上找了些ssm的搭建步骤,终于找到了一位csdn的大佬,可以说写的特别详细,按照上面步骤搭建即可,为了方便日后参考,转载到本人博客,原文链接:https://blog.csd ...
- hadoop日志数据分析开发步骤及代码
日志数据分析:1.背景1.1 hm论坛日志,数据分为两部分组成,原来是一个大文件,是56GB:以后每天生成一个文件,大约是150-200MB之间:1.2 日志格式是apache common日志格式: ...
随机推荐
- 高性能mysql 第10章 复制
复制功能不仅能够构建高可用的应用,同时也是高可用性,可扩展性,灾难恢复,备份以及数据仓库等工作的基础. mysql支持两种复制方式:基于语句的复制和基于行的复制.基于语句的复制(也成为逻辑复制)是早期 ...
- 入门Leaflet之小Demo
入门Leaflet之小Demo 写在前面 ---- WebGIS开发基础之Leaflet GIS基本概念:GIS.Map.Layer.Feature.Geometry.Symbol.Data(Poin ...
- OSM全球地图MBTiles,非postgresql方式。
介绍: https://www.cnblogs.com/i-gps/p/3919475.html 下载和使用: https://openmaptiles.org/ OSM pbf转换: https:/ ...
- JAVA基础编程之打印99乘法表
需求:打印9*9乘法表 技术考核: 1.for嵌套循环 代码: // 打印99乘法表 public static void print99Table() { System.out.println(&q ...
- C#使用BinaryReader类读取二进制文件
Close():关闭BinaryReader对象: Read():从指定流读取数据,并将指针迁移,指向下一个字符. ReadDecimal():从指定流读取一个十进制数值,并将在流中的位置向前 ...
- JavaScript基础——JavaScript函数(笔记)
avaScript 函数(笔记) JavaScript 是函数式编程语言,在JavaScript脚本中可以随处看到函数,函数构成了JavaScript源代码的主体. 一.定义函数 定义函数的方法有两种 ...
- 剑指Offer-快速排序
剑指Offer上的快速排序的Partition函数与我在数据结构书上学到的不一样,因此就想要探索下这两种不同的处理方式. 1.基本思想 快速排序的基本思想是基于分治法.在待排序表L[1...n]中任取 ...
- Open Cascade 转化为OpenSceneGraph中的Mesh
#include <osgDB/ReadFile> #include <osgViewer/Viewer> #include <osgGA/StateSetManipul ...
- C# 5.0
序言 异步成员 但是 async 和 await 才是此版本真正的主角. C# 在 2012 年推出这些功能时,将异步引入语言作为最重要的组成部分,另现状大为改观. 如果你以前处理过冗长的运行操作以及 ...
- BZOJ 3784: 树上的路径 点分治+二分+set
很容易想出二分这个思路,但是要想办法去掉一个 $log$. 没错,空间换时间. 双指针的部分错了好几次~ Code: #include <set> #include <queue&g ...