SSM到Spring Boot从零开发校园商铺平台--- 1、环境搭建及测试
根据慕课网项目深入学习SSM和SpringBoot,练手中,将学习笔记做记录,后期会继续更新。慕课网地址:[SSM到Spring Boot-从零开发校园商铺平台
根据慕课网项目深入学习SSM和SpringBoot,练手中,将学习笔记做记录,后期会继续更新。慕课网地址:SSM到Spring Boot-从零开发校园商铺平台-慕课网实战,文末会附上免费视频地址!
先上效果图(此文讲述中最后要完成的结果):效果图
项目图
项目介绍
慕课网中关于项目有详细的介绍,就不做过多的说明了。
项目结构及配置文件说明
如题,项目初期采用SSM(Spring+SpringMVC+MyBatis)框架,按照项目加载过程逐一讲解配置文件:
pom.xml
项目使用Maven管理项目相关依赖,配置有Spring、mybatis、数据库、junit等依赖;
web.xml
web项目的核心配置文件,主要配置了SSM的前置控制器DispatcherServlet,主要负责流程的控制;
<servlet> <servlet-name>spring-dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- 配置springMVC需要加载的配置文件 spring-dao.xml,spring-service.xml,spring-web.xml Mybatis - > spring -> springmvc --> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/spring-*.xml</param-value> </init-param></servlet><servlet-mapping> <servlet-name>spring-dispatcher</servlet-name> <!-- 默认匹配所有的请求 --> <url-pattern>/</url-pattern></servlet-mapping>
spring-web.xml
主要配置SpringMVC:1)启用注解驱动;2)静态资源处理;3)配置视图解析器;4)扫描web相关的bean;5、后续权限拦截器的配置;
<!-- 两个标准配置 --><!-- 1、启用注解驱动--> <mvc:annotation-driven/><!-- 2、 可以正常访问静态文件,springmvc静态资源处理--><mvc:default-servlet-handler/><!-- 3.定义视图解析器 --><bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/html/"></property> <property name="suffix" value=".html"></property></bean><!-- 4.扫描web相关的bean --><context:component-scan base-package="com.tyron.o2o.web" />
spring-service.xml
业务相关配置:1)扫描service相关的bean;2)配置事务管理器;3)配置基于注解的声明式事务;
<!--1、 扫描service包下所有使用注解的类型 --><context:component-scan base-package="com.tyron.o2o.service" /><!-- 2、 配置事务管理器 --><bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <!-- 注入数据库连接池 --> <property name="dataSource" ref="dataSource" /></bean><!-- 3、配置基于注解的声明式事务 --><tx:annotation-driven transaction-manager="transactionManager" />
spring-dao.xml
配置整合mybatis过程:1)配置数据库相关参数;2)配置数据库连接池;3)配置SqlSessionFactory对象;4)配置扫描Dao接口包,并注入;
<!-- 1.配置数据库相关参数properties的属性:${url} --><context:property-placeholder location="classpath:jdbc.properties"/><!-- 2.数据库连接池 --><bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <!-- 配置连接池属性 --> <property name="driverClass" value="${jdbc.driver}" /> <property name="jdbcUrl" value="${jdbc.url}" /> <property name="user" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" /> <!-- c3p0连接池的私有属性 --> <property name="maxPoolSize" value="30" /> <property name="minPoolSize" value="10" /> <!-- 关闭连接后不自动commit --> <property name="autoCommitOnClose" value="false" /> <!-- 获取连接超时时间 --> <property name="checkoutTimeout" value="10000" /> <!-- 当获取连接失败重试次数 --> <property name="acquireRetryAttempts" value="2" /></bean><!-- 3.配置SqlSessionFactory对象 --><bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <!-- 注入数据库连接池 --> <property name="dataSource" ref="dataSource" /> <!-- 配置MyBaties全局配置文件:mybatis-config.xml --> <property name="configLocation" value="classpath:mybatis-config.xml" /> <!-- 扫描entity包 使用别名 --> <property name="typeAliasesPackage" value="com.tyron.o2o.entity" /> <!-- 扫描sql配置文件:mapper需要的xml文件 --> <property name="mapperLocations" value="classpath:mapper/*.xml" /></bean><!-- 4.配置扫描Dao接口包,动态实现Dao接口,注入到spring容器中 --><bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <!-- 注入sqlSessionFactory --> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" /> <!-- 给出需要扫描Dao接口包 --> <property name="basePackage" value="com.tyron.o2o.dao" /></bean>
mybatis-config.xml
配置mybatis的属性:1)驼峰命名转换;2)列别名替换列名;3)自增主键
<settings> <!-- 开启驼峰命名转换:Table{create_time} -> Entity{createTime} --> <setting name="mapUnderscoreToCamelCase" value="true" /> <!-- 使用列别名替换列名 默认:true --> <setting name="useColumnLabel" value="true" /> <!-- 使用jdbc的getGeneratedKeys获取数据库自增主键值 --> <setting name="useGeneratedKeys" value="true" /></settings>
jdbc.properties
设置数据库相关参数,并将username和password设置为密文;
BaseTest.java
测试类的基类:
/** * 配置spring和junit整合,junit启动时加载springIOC容器 spring-test,junit */@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration({ "classpath:spring/spring-dao.xml", "classpath:spring/spring-service.xml" })public class BaseTest {}
附上免费网盘地址:
链接: https://pan.baidu.com/s/1htuUYqw 密码: j1am如失效,可关注我的公众号,回复“校园商铺”获取最新链接
版权声明:本文采用 CC BY-NC-SA 3.0 许可协议,转载请注明出处。