在使用 JAVA 开发Web应用程序的过程中,我们可能会用到不同的框架,在使用不同的框架组合进行开发的过程中,这些框架之间需要添加对应的配置文件,这里我们总结了一些开发中常见的配置方案.

1. Spring/SpringMVC/MyBatis

1.1 POM依赖配置

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  4. <modelVersion>4.0.0</modelVersion>
  5. <groupId>project.templates</groupId>
  6. <artifactId>ssm</artifactId>
  7. <version>1.0.0</version>
  8. <packaging>war</packaging>
  9. <!-- 依赖设置 -->
  10. <properties>
  11. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  12. <druid.version>1.2.1</druid.version>
  13. <fastjson.version>1.2.72</fastjson.version>
  14. <slf4j.version>1.7.30</slf4j.version>
  15. <log4j2.version>2.13.3</log4j2.version>
  16. <jsp.version>2.2</jsp.version>
  17. <jstl.version>1.2</jstl.version>
  18. <taglibs.version>1.1.2</taglibs.version>
  19. <servlet.version>4.0.1</servlet.version>
  20. <aop.version>1.9.5</aop.version>
  21. <mysql.version>8.0.17</mysql.version>
  22. <mybatis.version>3.5.6</mybatis.version>
  23. <mybatis-spring.version>2.0.5</mybatis-spring.version>
  24. <pagehelper.version>5.1.2</pagehelper.version>
  25. <spring.version>5.2.9.RELEASE</spring.version>
  26. </properties>
  27. <dependencies>
  28. <!-- Spring 配置 -->
  29. <dependency>
  30. <groupId>org.springframework</groupId>
  31. <artifactId>spring-core</artifactId>
  32. <version>${spring.version}</version>
  33. <exclusions>
  34. <exclusion>
  35. <groupId>commons-logging</groupId>
  36. <artifactId>commons-logging</artifactId>
  37. </exclusion>
  38. </exclusions>
  39. </dependency>
  40. <dependency>
  41. <groupId>org.springframework</groupId>
  42. <artifactId>spring-context</artifactId>
  43. <version>${spring.version}</version>
  44. </dependency>
  45. <dependency>
  46. <groupId>org.springframework</groupId>
  47. <artifactId>spring-jdbc</artifactId>
  48. <version>${spring.version}</version>
  49. </dependency>
  50. <dependency>
  51. <groupId>org.springframework</groupId>
  52. <artifactId>spring-tx</artifactId>
  53. <version>${spring.version}</version>
  54. </dependency>
  55. <dependency>
  56. <groupId>org.springframework</groupId>
  57. <artifactId>spring-web</artifactId>
  58. <version>${spring.version}</version>
  59. </dependency>
  60. <dependency>
  61. <groupId>org.springframework</groupId>
  62. <artifactId>spring-webmvc</artifactId>
  63. <version>${spring.version}</version>
  64. </dependency>
  65. <!-- AOP 必须 -->
  66. <dependency>
  67. <groupId>org.aspectj</groupId>
  68. <artifactId>aspectjweaver</artifactId>
  69. <version>${aop.version}</version>
  70. </dependency>
  71. <!-- MyBatis配置 -->
  72. <dependency>
  73. <groupId>org.mybatis</groupId>
  74. <artifactId>mybatis</artifactId>
  75. <version>${mybatis.version}</version>
  76. </dependency>
  77. <dependency>
  78. <groupId>org.mybatis</groupId>
  79. <artifactId>mybatis-spring</artifactId>
  80. <version>${mybatis-spring.version}</version>
  81. </dependency>
  82. <dependency>
  83. <groupId>com.github.pagehelper</groupId>
  84. <artifactId>pagehelper</artifactId>
  85. <version>${pagehelper.version}</version>
  86. </dependency>
  87. <!-- Servlet -->
  88. <dependency>
  89. <groupId>javax.servlet</groupId>
  90. <artifactId>javax.servlet-api</artifactId>
  91. <version>${servlet.version}</version>
  92. <scope>provided</scope>
  93. </dependency>
  94. <!-- JSP -->
  95. <dependency>
  96. <groupId>javax.servlet.jsp</groupId>
  97. <artifactId>jsp-api</artifactId>
  98. <version>${jsp.version}</version>
  99. <scope>provided</scope>
  100. </dependency>
  101. <!-- JSTL -->
  102. <dependency>
  103. <groupId>javax.servlet</groupId>
  104. <artifactId>jstl</artifactId>
  105. <version>${jstl.version}</version>
  106. </dependency>
  107. <dependency>
  108. <groupId>taglibs</groupId>
  109. <artifactId>standard</artifactId>
  110. <version>${taglibs.version}</version>
  111. </dependency>
  112. <!-- MySQL数据库驱动 -->
  113. <dependency>
  114. <groupId>mysql</groupId>
  115. <artifactId>mysql-connector-java</artifactId>
  116. <version>${mysql.version}</version>
  117. </dependency>
  118. <!-- 数据连接池 -->
  119. <dependency>
  120. <groupId>com.alibaba</groupId>
  121. <artifactId>druid</artifactId>
  122. <version>${druid.version}</version>
  123. </dependency>
  124. <!-- slf4j依赖程序 -->
  125. <dependency>
  126. <groupId>org.slf4j</groupId>
  127. <artifactId>slf4j-api</artifactId>
  128. <version>${slf4j.version}</version>
  129. </dependency>
  130. <dependency>
  131. <groupId>org.slf4j</groupId>
  132. <artifactId>jcl-over-slf4j</artifactId>
  133. <version>${slf4j.version}</version>
  134. <scope>runtime</scope>
  135. </dependency>
  136. <!-- lo4j2依赖程序 -->
  137. <dependency>
  138. <groupId>org.apache.logging.log4j</groupId>
  139. <artifactId>log4j-core</artifactId>
  140. <version>${log4j2.version}</version>
  141. <scope>runtime</scope>
  142. </dependency>
  143. <dependency>
  144. <groupId>org.apache.logging.log4j</groupId>
  145. <artifactId>log4j-web</artifactId>
  146. <version>${log4j2.version}</version>
  147. <scope>runtime</scope>
  148. </dependency>
  149. <dependency>
  150. <groupId>org.apache.logging.log4j</groupId>
  151. <artifactId>log4j-api</artifactId>
  152. <version>${log4j2.version}</version>
  153. <scope>runtime</scope>
  154. </dependency>
  155. <dependency>
  156. <groupId>org.apache.logging.log4j</groupId>
  157. <artifactId>log4j-slf4j-impl</artifactId>
  158. <version>${log4j2.version}</version>
  159. <scope>runtime</scope>
  160. </dependency>
  161. <!-- FastJSON 处理响应数据格式 -->
  162. <dependency>
  163. <groupId>com.alibaba</groupId>
  164. <artifactId>fastjson</artifactId>
  165. <version>${fastjson.version}</version>
  166. </dependency>
  167. </dependencies>
  168. <build>
  169. <finalName>test</finalName>
  170. <plugins>
  171. <plugin>
  172. <artifactId>maven-war-plugin</artifactId>
  173. <version>3.2.2</version>
  174. <configuration>
  175. <includeEmptyDirectories>true</includeEmptyDirectories>
  176. </configuration>
  177. </plugin>
  178. <plugin>
  179. <groupId>org.eclipse.jetty</groupId>
  180. <artifactId>jetty-maven-plugin</artifactId>
  181. <version>9.4.43.v20210629</version>
  182. <configuration>
  183. <scanIntervalSeconds>10</scanIntervalSeconds>
  184. <httpConnector>
  185. <port>9999</port>
  186. </httpConnector>
  187. <webApp>
  188. <contextPath>/test</contextPath>
  189. </webApp>
  190. </configuration>
  191. </plugin>
  192. </plugins>
  193. </build>
  194. </project>

1.2 配置数据源

  1. jdbc.url=jdbc:mysql://localhost:3306/数据库名称?zeroDateTimeBehavior=convertToNull&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8
  2. jdbc.username=root
  3. jdbc.password=123456
  4. jdbc.driver=com.mysql.cj.jdbc.Driver

在项目中添加 jdbc.properties 配置文件可以方便进行数据源的设置,如果在Spring配置文件中直接进行配置,对于链接地址中的 & 需要进行转义的处理,不推荐。

1.3 spring/mybatis 整合

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xmlns:context="http://www.springframework.org/schema/context"
  5. xmlns:aop="http://www.springframework.org/schema/aop"
  6. xmlns:tx="http://www.springframework.org/schema/tx"
  7. xsi:schemaLocation="http://www.springframework.org/schema/beans
  8. https://www.springframework.org/schema/beans/spring-beans.xsd
  9. http://www.springframework.org/schema/context
  10. https://www.springframework.org/schema/context/spring-context.xsd
  11. http://www.springframework.org/schema/aop
  12. https://www.springframework.org/schema/aop/spring-aop.xsd
  13. http://www.springframework.org/schema/tx
  14. https://www.springframework.org/schema/tx/spring-tx.xsd">
  15. <!-- 数据源 -->
  16. <context:property-placeholder location="classpath:jdbc.properties"/>
  17. <bean name="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
  18. <property name="url" value="${jdbc.url}"/>
  19. <property name="username" value="${jdbc.username}" />
  20. <property name="password" value="${jdbc.password}" />
  21. <property name="driverClassName" value="${jdbc.driver}" />
  22. </bean>
  23. <!-- 事务处理 -->
  24. <bean id="transactionManager"
  25. class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
  26. <property name="dataSource" ref="dataSource" />
  27. </bean>
  28. <!-- 事务开启注解支持 -->
  29. <tx:annotation-driven transaction-manager="transactionManager"/>
  30. <!-- 开启注解扫描 -->
  31. <context:component-scan base-package="注解扫描包">
  32. <context:exclude-filter type="annotation" expression="排除扫描的包"/>
  33. </context:component-scan>
  34. <!-- 创建工厂对象 -->
  35. <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
  36. <property name="dataSource" ref="dataSource"></property>
  37. <property name="mapperLocations" value="classpath:mybatis/mappers/*Mapper.xml"></property>
  38. </bean>
  39. <!-- 接口扫描器 -->
  40. <bean id="mapperScanner" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
  41. <property name="basePackage" value="DAO代码所在包"></property>
  42. </bean>
  43. </beans>

在项目资源路径下添加 spring.xml 文件,其中包含数据源、事务处理、SQL映射文件地址等。

1.4 spring/springmvc 整合

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xmlns:context="http://www.springframework.org/schema/context"
  5. xmlns:aop="http://www.springframework.org/schema/aop"
  6. xmlns:mvc="http://www.springframework.org/schema/mvc"
  7. xsi:schemaLocation="http://www.springframework.org/schema/beans
  8. https://www.springframework.org/schema/beans/spring-beans.xsd
  9. http://www.springframework.org/schema/context
  10. https://www.springframework.org/schema/context/spring-context.xsd
  11. http://www.springframework.org/schema/aop
  12. https://www.springframework.org/schema/aop/spring-aop.xsd
  13. http://www.springframework.org/schema/mvc
  14. https://www.springframework.org/schema/mvc/spring-mvc.xsd">
  15. <!-- 注解扫描 -->
  16. <context:component-scan base-package="控制层代码所在包" />
  17. <!-- JSP 视图解析 -->
  18. <bean id="jspviewResolver"
  19. class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  20. <property name="prefix" value="/"/>
  21. <property name="suffix" value=".jsp"/>
  22. </bean>
  23. <mvc:annotation-driven>
  24. <mvc:message-converters register-defaults="true">
  25. <!-- json的解析 -->
  26. <bean id="fastJsonHttpMessageConverter"
  27. class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
  28. <property name="supportedMediaTypes">
  29. <list>
  30. <value>application/json;charset=UTF-8</value>
  31. </list>
  32. </property>
  33. </bean>
  34. </mvc:message-converters>
  35. </mvc:annotation-driven>
  36. </beans>

在项目中添加 springmvc.xml 配置文件夹,其中包含视图、JSON格式转换等。

1.5 Mybatis 配置

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE configuration
  3. PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-config.dtd">
  5. <configuration>
  6. <settings>
  7. <setting name="logImpl" value="STDOUT_LOGGING"/>
  8. </settings>
  9. </configuration>

首先,在项目资源路径下新建 mybatis 文件夹,创建 mybatis-config.xml 文件,设置SQL执行语句输出

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="数据库处理接口(含包名)">
  6. <!-- 预定义SQL语句 -->
  7. <sql id="cols">
  8. <!-- SQL列 -->
  9. </sql>
  10. <!-- 结果集映射,解决属性名和列名不一致的问题 -->
  11. <resultMap id="唯一标识" type="实体类">
  12. <id column="主键列名" property="属性名" />
  13. <result column="列名" property="属性名"/>
  14. </resultMap>
  15. <!-- 添加信息 -->
  16. <insert id="add" parameterType="实体类(含包名)">
  17. INSERT INTO 表名 (列名1, 列名2, ……) VALUES (#{属性1}, #{属性1}, ……)
  18. </insert>
  19. <!-- 修改信息 -->
  20. <update id="update" parameterType="实体类(含包名)">
  21. UPDATE 表名
  22. <trim prefix="SET" suffixOverrides=",">
  23. <if test="属性 != null">
  24. 列名 = #{属性},
  25. </if>
  26. <if test="属性 != null">
  27. 列名 = #{属性}
  28. </if>
  29. </trim>
  30. WHERE 主键列名 = #{属性}
  31. </update>
  32. <!-- 删除信息 -->
  33. <delete id="delete" parameterType="实体类(含包名)">
  34. DELETE FROM 表名 WHERE 列名 = #{属性}
  35. </delete>
  36. <!-- 获取指定的ID信息 -->
  37. <select id="qryOne" resultMap="结果集标识, 自定义的结果集">
  38. SELECT <include refid="cols"></include>
  39. FROM 表名
  40. WHERE 主键列名 = #{属性}
  41. </select>
  42. <!-- 按条件模糊查询信息 -->
  43. <select id="qryList"
  44. resultMap="结果集标识, 自定义的结果集"
  45. parameterType="实体类(含包名)">
  46. SELECT <include refid="cols"></include>
  47. FROM 表名
  48. <where>
  49. <if test="属性 != null and 属性 != ''">
  50. AND 列名 LIKE concat('%', #{属性}, '%')
  51. </if>
  52. </where>
  53. </select>
  54. </mapper>

接下来,针对不同数据层接口,添加对应的SQL映射文件,在这里每个数据执行接口中对应的方法和对应的 SQL映射文件XML 节点中 id 的属性保持一致。

1.6 web.xml 映射

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xmlns="http://java.sun.com/xml/ns/javaee"
  4. xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  5. id="WebApp_ID" version="3.0">
  6. <display-name>test</display-name>
  7. <!-- 排除SpringMVC对静态资源的影响 -->
  8. <servlet-mapping>
  9. <servlet-name>default</servlet-name>
  10. <url-pattern>/css/*</url-pattern>
  11. </servlet-mapping>
  12. <servlet-mapping>
  13. <servlet-name>default</servlet-name>
  14. <url-pattern>/js/*</url-pattern>
  15. </servlet-mapping>
  16. <servlet-mapping>
  17. <servlet-name>default</servlet-name>
  18. <url-pattern>/imgs/*</url-pattern>
  19. </servlet-mapping>
  20. <context-param>
  21. <param-name>contextConfigLocation</param-name>
  22. <param-value>classpath:spring.xml</param-value>
  23. </context-param>
  24. <listener>
  25. <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  26. </listener>
  27. <servlet>
  28. <servlet-name>mvc</servlet-name>
  29. <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  30. <!-- 启动顺序,数字越小,启动越早 -->
  31. <load-on-startup>1</load-on-startup>
  32. <init-param>
  33. <!--SpringMVC配置参数文件的位置 -->
  34. <param-name>contextConfigLocation</param-name>
  35. <!--默认名称为ServletName-servlet.xml -->
  36. <param-value>classpath:springmvc.xml</param-value>
  37. </init-param>
  38. </servlet>
  39. <servlet-mapping>
  40. <servlet-name>mvc</servlet-name>
  41. <url-pattern>/</url-pattern>
  42. </servlet-mapping>
  43. </web-app>

2. Spring/SpringMVC/MyBatisPlus

2.1 POM 依赖配置

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  4. <modelVersion>4.0.0</modelVersion>
  5. <packaging>war</packaging>
  6. <name>ssmp</name>
  7. <groupId>project.templates</groupId>
  8. <artifactId>ssmp</artifactId>
  9. <version>1.0.0</version>
  10. <!-- 依赖设置 -->
  11. <properties>
  12. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  13. <druid.version>1.2.1</druid.version>
  14. <fastjson.version>1.2.72</fastjson.version>
  15. <slf4j.version>1.7.30</slf4j.version>
  16. <log4j2.version>2.13.3</log4j2.version>
  17. <jsp.version>2.2</jsp.version>
  18. <jstl.version>1.2</jstl.version>
  19. <taglibs.version>1.1.2</taglibs.version>
  20. <servlet.version>4.0.1</servlet.version>
  21. <aop.version>1.9.5</aop.version>
  22. <mysql.version>8.0.17</mysql.version>
  23. <mybatis.version>3.5.6</mybatis.version>
  24. <mybatis-spring.version>2.0.5</mybatis-spring.version>
  25. <mybatisplus.version>3.4.2</mybatisplus.version>
  26. <spring.version>5.2.9.RELEASE</spring.version>
  27. </properties>
  28. <dependencies>
  29. <!-- Spring 配置 -->
  30. <dependency>
  31. <groupId>org.springframework</groupId>
  32. <artifactId>spring-core</artifactId>
  33. <version>${spring.version}</version>
  34. <exclusions>
  35. <exclusion>
  36. <groupId>commons-logging</groupId>
  37. <artifactId>commons-logging</artifactId>
  38. </exclusion>
  39. </exclusions>
  40. </dependency>
  41. <dependency>
  42. <groupId>org.springframework</groupId>
  43. <artifactId>spring-context</artifactId>
  44. <version>${spring.version}</version>
  45. </dependency>
  46. <dependency>
  47. <groupId>org.springframework</groupId>
  48. <artifactId>spring-jdbc</artifactId>
  49. <version>${spring.version}</version>
  50. </dependency>
  51. <dependency>
  52. <groupId>org.springframework</groupId>
  53. <artifactId>spring-tx</artifactId>
  54. <version>${spring.version}</version>
  55. </dependency>
  56. <dependency>
  57. <groupId>org.springframework</groupId>
  58. <artifactId>spring-web</artifactId>
  59. <version>${spring.version}</version>
  60. </dependency>
  61. <dependency>
  62. <groupId>org.springframework</groupId>
  63. <artifactId>spring-webmvc</artifactId>
  64. <version>${spring.version}</version>
  65. </dependency>
  66. <!-- AOP 必须 -->
  67. <dependency>
  68. <groupId>org.aspectj</groupId>
  69. <artifactId>aspectjweaver</artifactId>
  70. <version>${aop.version}</version>
  71. </dependency>
  72. <!-- MyBatis配置 -->
  73. <dependency>
  74. <groupId>org.mybatis</groupId>
  75. <artifactId>mybatis</artifactId>
  76. <version>${mybatis.version}</version>
  77. </dependency>
  78. <dependency>
  79. <groupId>org.mybatis</groupId>
  80. <artifactId>mybatis-spring</artifactId>
  81. <version>${mybatis-spring.version}</version>
  82. </dependency>
  83. <dependency>
  84. <groupId>com.baomidou</groupId>
  85. <artifactId>mybatis-plus</artifactId>
  86. <version>${mybatisplus.version}</version>
  87. </dependency>
  88. <!-- Servlet -->
  89. <dependency>
  90. <groupId>javax.servlet</groupId>
  91. <artifactId>javax.servlet-api</artifactId>
  92. <version>${servlet.version}</version>
  93. <scope>provided</scope>
  94. </dependency>
  95. <!-- JSP -->
  96. <dependency>
  97. <groupId>javax.servlet.jsp</groupId>
  98. <artifactId>jsp-api</artifactId>
  99. <version>${jsp.version}</version>
  100. <scope>provided</scope>
  101. </dependency>
  102. <!-- JSTL -->
  103. <dependency>
  104. <groupId>javax.servlet</groupId>
  105. <artifactId>jstl</artifactId>
  106. <version>${jstl.version}</version>
  107. </dependency>
  108. <dependency>
  109. <groupId>taglibs</groupId>
  110. <artifactId>standard</artifactId>
  111. <version>${taglibs.version}</version>
  112. </dependency>
  113. <!-- MySQL数据库驱动 -->
  114. <dependency>
  115. <groupId>mysql</groupId>
  116. <artifactId>mysql-connector-java</artifactId>
  117. <version>${mysql.version}</version>
  118. </dependency>
  119. <!-- 数据连接池 -->
  120. <dependency>
  121. <groupId>com.alibaba</groupId>
  122. <artifactId>druid</artifactId>
  123. <version>${druid.version}</version>
  124. </dependency>
  125. <!-- slf4j依赖程序 -->
  126. <dependency>
  127. <groupId>org.slf4j</groupId>
  128. <artifactId>slf4j-api</artifactId>
  129. <version>${slf4j.version}</version>
  130. </dependency>
  131. <dependency>
  132. <groupId>org.slf4j</groupId>
  133. <artifactId>jcl-over-slf4j</artifactId>
  134. <version>${slf4j.version}</version>
  135. <scope>runtime</scope>
  136. </dependency>
  137. <!-- lo4j2依赖程序 -->
  138. <dependency>
  139. <groupId>org.apache.logging.log4j</groupId>
  140. <artifactId>log4j-core</artifactId>
  141. <version>${log4j2.version}</version>
  142. <scope>runtime</scope>
  143. </dependency>
  144. <dependency>
  145. <groupId>org.apache.logging.log4j</groupId>
  146. <artifactId>log4j-web</artifactId>
  147. <version>${log4j2.version}</version>
  148. <scope>runtime</scope>
  149. </dependency>
  150. <dependency>
  151. <groupId>org.apache.logging.log4j</groupId>
  152. <artifactId>log4j-api</artifactId>
  153. <version>${log4j2.version}</version>
  154. <scope>runtime</scope>
  155. </dependency>
  156. <dependency>
  157. <groupId>org.apache.logging.log4j</groupId>
  158. <artifactId>log4j-slf4j-impl</artifactId>
  159. <version>${log4j2.version}</version>
  160. <scope>runtime</scope>
  161. </dependency>
  162. <!-- FastJSON 处理响应数据格式 -->
  163. <dependency>
  164. <groupId>com.alibaba</groupId>
  165. <artifactId>fastjson</artifactId>
  166. <version>${fastjson.version}</version>
  167. </dependency>
  168. </dependencies>
  169. <build>
  170. <finalName>test</finalName>
  171. <plugins>
  172. <plugin>
  173. <artifactId>maven-war-plugin</artifactId>
  174. <version>3.2.2</version>
  175. <configuration>
  176. <includeEmptyDirectories>true</includeEmptyDirectories>
  177. </configuration>
  178. </plugin>
  179. <plugin>
  180. <groupId>org.eclipse.jetty</groupId>
  181. <artifactId>jetty-maven-plugin</artifactId>
  182. <version>9.4.43.v20210629</version>
  183. <configuration>
  184. <scanIntervalSeconds>10</scanIntervalSeconds>
  185. <httpConnector>
  186. <port>9999</port>
  187. </httpConnector>
  188. <webApp>
  189. <contextPath>/test</contextPath>
  190. </webApp>
  191. </configuration>
  192. </plugin>
  193. </plugins>
  194. </build>
  195. </project>

2.2 配置数据源

  1. jdbc.url=jdbc:mysql://localhost:3306/数据库名称?zeroDateTimeBehavior=convertToNull&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8
  2. jdbc.username=root
  3. jdbc.password=123456
  4. jdbc.driver=com.mysql.cj.jdbc.Driver

在项目中添加 jdbc.properties 配置文件可以方便进行数据源的设置,如果在Spring配置文件中直接进行配置,对于链接地址中的 & 需要进行转义的处理,不推荐。

2.3 spring/mybatisplus 配置

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xmlns:context="http://www.springframework.org/schema/context"
  5. xmlns:aop="http://www.springframework.org/schema/aop"
  6. xmlns:tx="http://www.springframework.org/schema/tx"
  7. xsi:schemaLocation="http://www.springframework.org/schema/beans
  8. https://www.springframework.org/schema/beans/spring-beans.xsd
  9. http://www.springframework.org/schema/context
  10. https://www.springframework.org/schema/context/spring-context.xsd
  11. http://www.springframework.org/schema/aop
  12. https://www.springframework.org/schema/aop/spring-aop.xsd
  13. http://www.springframework.org/schema/tx
  14. https://www.springframework.org/schema/tx/spring-tx.xsd">
  15. <!-- 数据源 -->
  16. <context:property-placeholder location="classpath:jdbc.properties"/>
  17. <bean name="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
  18. <property name="url" value="${jdbc.url}"/>
  19. <property name="username" value="${jdbc.username}" />
  20. <property name="password" value="${jdbc.password}" />
  21. <property name="driverClassName" value="${jdbc.driver}" />
  22. </bean>
  23. <!-- 事务处理 -->
  24. <bean id="transactionManager"
  25. class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
  26. <property name="dataSource" ref="dataSource" />
  27. </bean>
  28. <!-- 事务开启注解支持 -->
  29. <tx:annotation-driven transaction-manager="transactionManager"/>
  30. <!-- 开启注解扫描 -->
  31. <context:component-scan base-package="注解扫描包">
  32. <context:exclude-filter type="annotation" expression="排除注解扫描包"/>
  33. </context:component-scan>
  34. <!-- 创建工厂对象 -->
  35. <bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean">
  36. <property name="dataSource" ref="dataSource"/>
  37. <property name="configLocation" value="classpath:mybatis/mybatis-config.xml"/>
  38. <property name="plugins">
  39. <array>
  40. <ref bean="mybatisPlusInterceptor"/>
  41. </array>
  42. </property>
  43. </bean>
  44. <bean id="mybatisPlusInterceptor" class="com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor">
  45. <property name="interceptors">
  46. <list>
  47. <ref bean="paginationInnerInterceptor"/>
  48. </list>
  49. </property>
  50. </bean>
  51. <bean id="paginationInnerInterceptor"
  52. class="com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor">
  53. <!-- 指定数据库为MySQL -->
  54. <constructor-arg name="dbType" value="MYSQL"/>
  55. </bean>
  56. <!-- 接口扫描器 -->
  57. <bean id="mapperScanner" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
  58. <property name="basePackage" value="DAO代码所在包"></property>
  59. </bean>
  60. </beans>

在项目资源路径下添加 spring.xml 文件,其中包含数据源、事务处理、SQL映射文件地址等。

2.4 spring/springmvc配置

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xmlns:context="http://www.springframework.org/schema/context"
  5. xmlns:aop="http://www.springframework.org/schema/aop"
  6. xmlns:mvc="http://www.springframework.org/schema/mvc"
  7. xsi:schemaLocation="http://www.springframework.org/schema/beans
  8. https://www.springframework.org/schema/beans/spring-beans.xsd
  9. http://www.springframework.org/schema/context
  10. https://www.springframework.org/schema/context/spring-context.xsd
  11. http://www.springframework.org/schema/aop
  12. https://www.springframework.org/schema/aop/spring-aop.xsd
  13. http://www.springframework.org/schema/mvc
  14. https://www.springframework.org/schema/mvc/spring-mvc.xsd">
  15. <!-- 注解扫描 -->
  16. <context:component-scan base-package="控制层代码所在包" />
  17. <!-- JSP 视图解析 -->
  18. <bean id="jspviewResolver"
  19. class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  20. <property name="prefix" value="/"/>
  21. <property name="suffix" value=".jsp"/>
  22. </bean>
  23. <mvc:annotation-driven>
  24. <mvc:message-converters register-defaults="true">
  25. <!-- json的解析 -->
  26. <bean id="fastJsonHttpMessageConverter"
  27. class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
  28. <property name="supportedMediaTypes">
  29. <list>
  30. <value>application/json;charset=UTF-8</value>
  31. </list>
  32. </property>
  33. </bean>
  34. </mvc:message-converters>
  35. </mvc:annotation-driven>
  36. </beans>

在项目中添加 springmvc.xml 配置文件夹,其中包含视图、JSON格式转换等。

2.5 mybatis 配置

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE configuration
  3. PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-config.dtd">
  5. <configuration>
  6. <settings>
  7. <setting name="logImpl" value="STDOUT_LOGGING"/>
  8. </settings>
  9. </configuration>

在项目资源路径下新建 mybatis 文件夹,创建 mybatis-config.xml 文件,设置SQL执行语句输出.

2.6 web.xml 配置

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xmlns="http://java.sun.com/xml/ns/javaee"
  4. xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  5. id="WebApp_ID" version="3.0">
  6. <display-name>test</display-name>
  7. <!-- 排除SpringMVC对静态资源的影响 -->
  8. <servlet-mapping>
  9. <servlet-name>default</servlet-name>
  10. <url-pattern>/css/*</url-pattern>
  11. </servlet-mapping>
  12. <servlet-mapping>
  13. <servlet-name>default</servlet-name>
  14. <url-pattern>/js/*</url-pattern>
  15. </servlet-mapping>
  16. <servlet-mapping>
  17. <servlet-name>default</servlet-name>
  18. <url-pattern>/imgs/*</url-pattern>
  19. </servlet-mapping>
  20. <context-param>
  21. <param-name>contextConfigLocation</param-name>
  22. <param-value>classpath:spring.xml</param-value>
  23. </context-param>
  24. <listener>
  25. <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  26. </listener>
  27. <servlet>
  28. <servlet-name>mvc</servlet-name>
  29. <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  30. <!-- 启动顺序,数字越小,启动越早 -->
  31. <load-on-startup>1</load-on-startup>
  32. <init-param>
  33. <!--SpringMVC配置参数文件的位置 -->
  34. <param-name>contextConfigLocation</param-name>
  35. <!--默认名称为ServletName-servlet.xml -->
  36. <param-value>classpath:springmvc.xml</param-value>
  37. </init-param>
  38. </servlet>
  39. <servlet-mapping>
  40. <servlet-name>mvc</servlet-name>
  41. <url-pattern>/</url-pattern>
  42. </servlet-mapping>
  43. </web-app>

3. SpringBoot/MyBatis

3.1 POM 依赖配置

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. <modelVersion>4.0.0</modelVersion>
  6. <!-- SpringBoot 依赖 -->
  7. <parent>
  8. <groupId>org.springframework.boot</groupId>
  9. <artifactId>spring-boot-starter-parent</artifactId>
  10. <version>2.3.4.RELEASE</version>
  11. <relativePath />
  12. </parent>
  13. <groupId>project.templates</groupId>
  14. <artifactId>spm</artifactId>
  15. <version>1.0.0</version>
  16. <properties>
  17. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  18. <druid.version>1.2.1</druid.version>
  19. <fastjson.version>1.2.72</fastjson.version>
  20. <slf4j.version>1.7.30</slf4j.version>
  21. <log4j2.version>2.13.3</log4j2.version>
  22. <mysql.version>8.0.17</mysql.version>
  23. <mybatis.starter.version>2.1.3</mybatis.starter.version>
  24. <pagehelper.version>1.2.3</pagehelper.version>
  25. </properties>
  26. <dependencies>
  27. <!-- SpringBoot -->
  28. <dependency>
  29. <groupId>org.springframework.boot</groupId>
  30. <artifactId>spring-boot-starter</artifactId>
  31. <exclusions>
  32. <exclusion>
  33. <groupId>org.springframework.boot</groupId>
  34. <artifactId>spring-boot-starter-logging</artifactId>
  35. </exclusion>
  36. </exclusions>
  37. </dependency>
  38. <!-- SpringBoot Web模块 -->
  39. <dependency>
  40. <groupId>org.springframework.boot</groupId>
  41. <artifactId>spring-boot-starter-web</artifactId>
  42. </dependency>
  43. <!-- SpringBoot log4j2模块 -->
  44. <dependency>
  45. <groupId>org.springframework.boot</groupId>
  46. <artifactId>spring-boot-starter-log4j2</artifactId>
  47. </dependency>
  48. <!-- 引入thymeleaf 依赖 -->
  49. <dependency>
  50. <groupId>org.springframework.boot</groupId>
  51. <artifactId>spring-boot-starter-thymeleaf</artifactId>
  52. </dependency>
  53. <!--devtools热部署 -->
  54. <dependency>
  55. <groupId>org.springframework.boot</groupId>
  56. <artifactId>spring-boot-devtools</artifactId>
  57. <optional>true</optional>
  58. <scope>true</scope>
  59. </dependency>
  60. <!-- MyBatis 配置 -->
  61. <dependency>
  62. <groupId>org.mybatis.spring.boot</groupId>
  63. <artifactId>mybatis-spring-boot-starter</artifactId>
  64. <version>${mybatis.starter.version}</version>
  65. </dependency>
  66. <!-- MyBatis 分页插件 -->
  67. <dependency>
  68. <groupId>com.github.pagehelper</groupId>
  69. <artifactId>pagehelper-spring-boot-starter</artifactId>
  70. <version>${pagehelper.version}</version>
  71. </dependency>
  72. <!-- MySQL数据库驱动 -->
  73. <dependency>
  74. <groupId>mysql</groupId>
  75. <artifactId>mysql-connector-java</artifactId>
  76. <version>${mysql.version}</version>
  77. </dependency>
  78. <!-- 数据连接池 -->
  79. <dependency>
  80. <groupId>com.alibaba</groupId>
  81. <artifactId>druid</artifactId>
  82. <version>${druid.version}</version>
  83. </dependency>
  84. <!-- slf4j依赖程序 -->
  85. <dependency>
  86. <groupId>org.slf4j</groupId>
  87. <artifactId>slf4j-api</artifactId>
  88. <version>${slf4j.version}</version>
  89. </dependency>
  90. <!-- lo4j2依赖程序 -->
  91. <dependency>
  92. <groupId>org.apache.logging.log4j</groupId>
  93. <artifactId>log4j-core</artifactId>
  94. <version>${log4j2.version}</version>
  95. </dependency>
  96. <!-- FastJSON 处理响应数据格式 -->
  97. <dependency>
  98. <groupId>com.alibaba</groupId>
  99. <artifactId>fastjson</artifactId>
  100. <version>${fastjson.version}</version>
  101. </dependency>
  102. </dependencies>
  103. <build>
  104. <plugins>
  105. <plugin>
  106. <groupId>org.springframework.boot</groupId>
  107. <artifactId>spring-boot-maven-plugin</artifactId>
  108. <version>2.3.4.RELEASE</version>
  109. <configuration>
  110. <fork>true</fork>
  111. </configuration>
  112. </plugin>
  113. </plugins>
  114. <resources>
  115. <resource>
  116. <directory>src/main/resources</directory>
  117. <includes>
  118. <include>static/**/**.*</include>
  119. <include>mybatis/**/**.*</include>
  120. <include>application.yml</include>
  121. </includes>
  122. </resource>
  123. </resources>
  124. </build>
  125. </project>

3.2 系统核心配置

  1. server:
  2. port: 系统端口
  3. servlet:
  4. context-path: /项目根路径
  5. spring:
  6. http:
  7. encoding:
  8. force: true
  9. charset: UTF-8
  10. enabled: UTF-8
  11. mvc:
  12. static-path-pattern: /**
  13. resources:
  14. static-locations: classpath:/static/
  15. devtools:
  16. restart:
  17. enabled: true #设置开启热部署
  18. additional-paths: src/main/java #重启目录
  19. datasource:
  20. username: root
  21. password: 123456
  22. url: jdbc:mysql://localhost:3306/数据库名称?zeroDateTimeBehavior=convertToNull&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8
  23. driver-class-name: com.mysql.cj.jdbc.Driver
  24. type: com.alibaba.druid.pool.DruidDataSource
  25. initialSize: 5
  26. minIdle: 5
  27. maxWait: 60000
  28. thymeleaf:
  29. prefix: classpath:/static/
  30. suffix: .html
  31. mybatis:
  32. config-location: classpath:mybatis/mybatis-config.xml
  33. mapper-locations: classpath:mybatis/mappers/*.xml
  34. pagehelper:
  35. helperDialect: mysql

在项目下新建 application.yml 文件,其中添加如下的设置,这里包含项目运行端口、项目根路径、数据库连接、静态资源路径等常见内容。

3.3 mybatis 配置

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE configuration
  3. PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-config.dtd">
  5. <configuration>
  6. <settings>
  7. <setting name="logImpl" value="STDOUT_LOGGING"/>
  8. </settings>
  9. </configuration>

首先,在项目资源路径下新建 mybatis 文件夹,创建 mybatis-config.xml 文件,设置SQL执行语句输出

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="数据库处理接口(含包名)">
  6. <!-- 预定义SQL语句 -->
  7. <sql id="cols">
  8. <!-- SQL列 -->
  9. </sql>
  10. <!-- 结果集映射,解决属性名和列名不一致的问题 -->
  11. <resultMap id="唯一标识" type="实体类">
  12. <id column="主键列名" property="属性名" />
  13. <result column="列名" property="属性名"/>
  14. </resultMap>
  15. <!-- 添加信息 -->
  16. <insert id="add" parameterType="实体类(含包名)">
  17. INSERT INTO 表名 (列名1, 列名2, ……) VALUES (#{属性1}, #{属性1}, ……)
  18. </insert>
  19. <!-- 修改信息 -->
  20. <update id="update" parameterType="实体类(含包名)">
  21. UPDATE 表名
  22. <trim prefix="SET" suffixOverrides=",">
  23. <if test="属性 != null">
  24. 列名 = #{属性},
  25. </if>
  26. <if test="属性 != null">
  27. 列名 = #{属性}
  28. </if>
  29. </trim>
  30. WHERE 主键列名 = #{属性}
  31. </update>
  32. <!-- 删除信息 -->
  33. <delete id="delete" parameterType="实体类(含包名)">
  34. DELETE FROM 表名 WHERE 列名 = #{属性}
  35. </delete>
  36. <!-- 获取指定的ID信息 -->
  37. <select id="qryOne" resultMap="结果集标识, 自定义的结果集">
  38. SELECT <include refid="cols"></include>
  39. FROM 表名
  40. WHERE 主键列名 = #{属性}
  41. </select>
  42. <!-- 按条件模糊查询信息 -->
  43. <select id="qryList"
  44. resultMap="结果集标识, 自定义的结果集"
  45. parameterType="实体类(含包名)">
  46. SELECT <include refid="cols"></include>
  47. FROM 表名
  48. <where>
  49. <if test="属性 != null and 属性 != ''">
  50. AND 列名 LIKE concat('%', #{属性}, '%')
  51. </if>
  52. </where>
  53. </select>
  54. </mapper>

接下来,针对不同数据层接口,添加对应的SQL映射文件,在这里每个数据执行接口中对应的方法和对应的 SQL映射文件XML 节点中 id 的属性保持一致。

4. SpringBoot/MyBatisPlus

4.1 POM 依赖配置

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. <modelVersion>4.0.0</modelVersion>
  6. <!-- SpringBoot 依赖 -->
  7. <parent>
  8. <groupId>org.springframework.boot</groupId>
  9. <artifactId>spring-boot-starter-parent</artifactId>
  10. <version>2.3.4.RELEASE</version>
  11. <relativePath />
  12. </parent>
  13. <groupId>project.templates</groupId>
  14. <artifactId>spmp</artifactId>
  15. <version>1.0.0</version>
  16. <properties>
  17. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  18. <druid.version>1.2.1</druid.version>
  19. <fastjson.version>1.2.72</fastjson.version>
  20. <slf4j.version>1.7.30</slf4j.version>
  21. <log4j2.version>2.13.3</log4j2.version>
  22. <mysql.version>8.0.17</mysql.version>
  23. <mybatis.version>3.4.2</mybatis.version>
  24. </properties>
  25. <dependencies>
  26. <!-- SpringBoot -->
  27. <dependency>
  28. <groupId>org.springframework.boot</groupId>
  29. <artifactId>spring-boot-starter</artifactId>
  30. <exclusions>
  31. <exclusion>
  32. <groupId>org.springframework.boot</groupId>
  33. <artifactId>spring-boot-starter-logging</artifactId>
  34. </exclusion>
  35. </exclusions>
  36. </dependency>
  37. <!-- SpringBoot Test模块 -->
  38. <dependency>
  39. <groupId>org.springframework.boot</groupId>
  40. <artifactId>spring-boot-starter-test</artifactId>
  41. <scope>test</scope>
  42. </dependency>
  43. <dependency>
  44. <groupId>org.junit.platform</groupId>
  45. <artifactId>junit-platform-launcher</artifactId>
  46. <scope>test</scope>
  47. </dependency>
  48. <!-- SpringBoot mybatis模块 -->
  49. <dependency>
  50. <groupId>com.baomidou</groupId>
  51. <artifactId>mybatis-plus-boot-starter</artifactId>
  52. <version>${mybatis.version}</version>
  53. </dependency>
  54. <!-- SpringBoot Web模块 -->
  55. <dependency>
  56. <groupId>org.springframework.boot</groupId>
  57. <artifactId>spring-boot-starter-web</artifactId>
  58. </dependency>
  59. <!-- SpringBoot log4j2模块 -->
  60. <dependency>
  61. <groupId>org.springframework.boot</groupId>
  62. <artifactId>spring-boot-starter-log4j2</artifactId>
  63. </dependency>
  64. <!-- 引入thymeleaf 依赖 -->
  65. <dependency>
  66. <groupId>org.springframework.boot</groupId>
  67. <artifactId>spring-boot-starter-thymeleaf</artifactId>
  68. </dependency>
  69. <!--devtools热部署 -->
  70. <dependency>
  71. <groupId>org.springframework.boot</groupId>
  72. <artifactId>spring-boot-devtools</artifactId>
  73. <optional>true</optional>
  74. <scope>true</scope>
  75. </dependency>
  76. <!-- MySQL数据库驱动 -->
  77. <dependency>
  78. <groupId>mysql</groupId>
  79. <artifactId>mysql-connector-java</artifactId>
  80. <version>${mysql.version}</version>
  81. </dependency>
  82. <!-- 数据连接池 -->
  83. <dependency>
  84. <groupId>com.alibaba</groupId>
  85. <artifactId>druid</artifactId>
  86. <version>${druid.version}</version>
  87. </dependency>
  88. <!-- slf4j依赖程序 -->
  89. <dependency>
  90. <groupId>org.slf4j</groupId>
  91. <artifactId>slf4j-api</artifactId>
  92. <version>${slf4j.version}</version>
  93. </dependency>
  94. <!-- lo4j2依赖程序 -->
  95. <dependency>
  96. <groupId>org.apache.logging.log4j</groupId>
  97. <artifactId>log4j-core</artifactId>
  98. <version>${log4j2.version}</version>
  99. </dependency>
  100. <!-- FastJSON 处理响应数据格式 -->
  101. <dependency>
  102. <groupId>com.alibaba</groupId>
  103. <artifactId>fastjson</artifactId>
  104. <version>${fastjson.version}</version>
  105. </dependency>
  106. </dependencies>
  107. <build>
  108. <plugins>
  109. <plugin>
  110. <groupId>org.springframework.boot</groupId>
  111. <artifactId>spring-boot-maven-plugin</artifactId>
  112. <configuration>
  113. <fork>true</fork>
  114. </configuration>
  115. </plugin>
  116. </plugins>
  117. <!-- 设置静态资源 -->
  118. <resources>
  119. <resource>
  120. <directory>src/main/resources</directory>
  121. <includes>
  122. <include>static/**/**.*</include>
  123. <include>application.yml</include>
  124. <include>log4j2.xml</include>
  125. </includes>
  126. </resource>
  127. </resources>
  128. </build>
  129. </project>

4.2 系统核心配置

  1. server:
  2. port: 系统端口
  3. servlet:
  4. context-path: /项目根路径
  5. spring:
  6. http:
  7. encoding:
  8. force: true
  9. charset: UTF-8
  10. enabled: UTF-8
  11. mvc:
  12. static-path-pattern: /**
  13. resources:
  14. static-locations: classpath:/static/
  15. devtools:
  16. restart:
  17. enabled: true #设置开启热部署
  18. additional-paths: src/main/java #重启目录
  19. datasource:
  20. username: root
  21. password: 123456
  22. url: jdbc:mysql://localhost:3306/数据库名称?zeroDateTimeBehavior=convertToNull&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8
  23. driver-class-name: com.mysql.cj.jdbc.Driver
  24. type: com.alibaba.druid.pool.DruidDataSource
  25. initialSize: 5
  26. minIdle: 5
  27. maxWait: 60000
  28. thymeleaf:
  29. prefix: classpath:/static/
  30. suffix: .html
  31. mybatis-plus:
  32. configuration:
  33. log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

在项目下新建 application.yml 文件,其中添加如下的设置,这里包含项目运行端口、项目根路径、数据库连接、静态资源路径等常见内容。