IDEA上快速搭建基于maven的Spring MVC项目步骤[补充]

因为篇幅问题,《IDEA上快速搭建基于maven的Spring MVC项目步骤》到具体框架配置部分后面内容转到这篇下继续。

具体的配置信息基本上都放了截图和引用。

这里先给出demo项目的基本结构截图,实际项目结构目录可能会有所不同,但基本的结构关系应该大同小异。末尾还放了服务器启动后的项目目录结构。



这里再贴一下mybaits的配置文件和数据源配置,都是基本的配置。


1、spring-datasource.xml的DEMO详情


spring-datasource.xml


spring-datasource.xml


spring-datasource.xml


spring-datasource.xml


<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.3.xsd">

<!-- 一. 创建DataSource对象 --> <

!--1.1 引入外部的一些资源文件 location 资源文件的路径 -->

<context:property-placeholder location="/WEB-INF/configs/spring/jdbc.properties"/>

<!-- 1.2 创建DataSource对象 -->

<bean id="mysqlDataSource" class="org.apache.commons.dbcp2.BasicDataSource"> <property name="driverClassName" value="${jdbc.mysql.driver}"></property> <property name="url" value="${jdbc.mysql.url}"></property> <property name="username" value="${jdbc.mysql.username}"></property> <property name="password" value="${jdbc.mysql.password}"></property> </bean>


<!-- 二. 创建SqlSessionFactory对象 -->

<bean id="sqlsessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">

<!-- 设置数据源属性 --> <property name="dataSource" ref="mysqlDataSource"></property>

<!-- 配置mybatis的配置文件的路径 可选 --> <property name="configLocation" value="/WEB-INF/configs/spring/mybatis_config.xml"></property>

<!-- 配置myabtis的mapper文件的路径 可选 默认 mapper.xml文件的路径为 和mapper接口同包同名的 -->

<property name="mapperLocations"> <list> <value>classpath:/mybaits/**/**/*Mapper.xml</value> </list> </property>

</bean>


<!-- 三.创建mapper对象 会自动根据配置 将指定包下的mapper对象创建出来 mapper对象的bean的名字 默认为mapper接口的名字首字母变成小写 -->

<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.demo.dao"></property>

<!-- 以下配置 不要添加 但是要保证ioc容器中SqlSessionFactory对象的bean 的名字为 sqlSessionFactory-->

<!-- <property name="sqlSessionFactory" ref="sqlsessionFactory"></property> -->

</bean>


<!-- 四. 做事务处理 --> <!-- 4.1 创建事务管理的对象 负责 事务的开启 提交 回滚 关闭等等操作 -->

<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager" >

<property name="dataSource" ref="mysqlDataSource"></property>

</bean>


<!-- 添加事务的注解驱动 -->

<tx:annotation-driven transaction-manager="transactionManager"/>


</beans>


2、mybatis_config.xml的DEMO详情


mybatis_config.xml

<?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>

<settings>

<setting name="logImpl" value="LOG4J"/>

</settings>


<plugins>

<!-- com.github.pagehelper为PageHelper类所在包名 -->

<plugin interceptor="com.github.pagehelper.PageInterceptor">

<!-- 设置数据库分页插件 --> <property name="helperDialect" value="mysql"/>

<!-- 合理化分页 --> <property name="reasonable" value="true"/>

</plugin>

</plugins>


</configuration>


到这里实际上基本都配好了,接下来就是写写具体的代码测一下实际情况了。

因为我已经跑通了,所以这里就直接给出demo的简单截图


controller



service接口


service实现类


dao接口


mapper.xml


model


首页jsp页面


测试的jsp页面


这是之前配置的错误页面,直接用了html静态页面




demo项目基本完工了,接下来就是配置启动服务器,因为不是boot没有内置,不能直接跑

按截图逐步配置即可,可按自己的需求调整相关设置。




完成以后就可以选择自己配置的tomcat直接启动或者debug启动项目啦。


最后我们看一下实际效果,三个不同页面都ok了,请求转发页面跳转都没有问题。




总结:

到这里spring mvc的demo就基本完工了,当然,这只是一个很基础的demo,很多东西没有用到,作为一个基础spring mvc demo,但它已经五脏俱全了,剩下的就是根据实际需要添加、调整和使用了。

实际上在pom中添加的json转化、分页插件、参数校验、单元测试等依赖都没有用到,也没有在项目中使用过滤器、拦截器、jms消息中间件、缓存数据库redis等等,后面有时间希望自己再逐步添加练练手,很多东西实际工作中使用的机会少,也没有那么多时间给你慢慢调,所以,要想掌握还得自己练习。[过滤器、拦截器我后面自己又专门要记录一篇《过滤器、拦截器的区别和配置使用简例》]

总的来说,在自己从无到有创建这个demo的过程中,还是遇到了不少问题,主要是有些点使用频率低疏忽了,比如el表达式引入等等,希望自己继续努力,知行合一。

补充:

服务器启动后的项目目录结构


具体jsp的class文件的话,因为我是idea关联的,所以在用户盘下,如果是把项目放到tomcat中的,则路径不同,这点的话可参考网上这位兄弟的文章 《web项目中idea中jsp被编译后的class与java文件放在哪里》,我试过。他说的对。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。