Spring Boot crawl Pit Journey-Project Tiering and infrastructure (1)

Source: Internet
Author: User
Tags redis mysql database tomcat log4j

Main structure:

GYTLV: Project management (can be understood as a folder for managing projects)

-----Gytlv-common: Tool class

-----gytlv-parent: Main project Engineering structure management

------------------Gytlv-zm-blog: Project Engineering

It is mainly used for learning, so there is no separation of the very detailed. A more granular split, such as: (Service layer, database interaction layer, unified Entity Management Layer) module is introduced in the project Engineering module as required.

Gytlv-parent: Master project Engineering Structure Management, while managing the jar versioning that the phase relies on.

Pom is as follows:

<project xmlns= "http://maven.apache.org/POM/4.0.0" xmlns:xsi= "Http://www.w3.org/2001/XMLSchema-instance" xsi: schemalocation= "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" > < Modelversion>4.0.0</modelversion> <groupId>com.spring-boot2</groupId> <artifactId> Gytlv-parent</artifactid> <version>0.0.1-SNAPSHOT</version> <packaging>pom</packaging > <parent> <groupId>org.springframework.boot</groupId> <artifactId> Spring-boot-starter-parent</artifactid> <version>1.4.1.RELEASE</version> </parent> < Dependencymanagement> <dependencies> <!--add Fastjson dependent packages. -<dependency> <groupId>com.alibaba</groupId> <artifactid>fastjson</artifactid&
				Gt <version>1.2.15</version> </dependency> <!--spring-boot MyBatis dependency: Do not use the 1.0.0 version because the Interceptor plugin is not yet supported, 1 .1.1 is the version that bloggers write when they post.You can use the latest version--<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactid>m Ybatis-spring-boot-starter</artifactid> <version>1.1.1</version> </dependency> <!--M 
				Ybatis provides an interceptor interface that allows us to implement our own interceptors and load them into sqlsessionfactory as a plugin. There's a developer on GitHub who wrote a paging plugin, which I think can be very handy to use. GitHub Project Address: https://github.com/pagehelper/Mybatis-PageHelper-<dependency> &LT;GROUPID&GT;COM.GITHUB.P
			Agehelper</groupid> <artifactId>pagehelper</artifactId> <version>4.1.0</version> </dependency> <!--Https://mvnrepository.com/artifact/commons-codec/commons-codec--<dependency&
				Gt <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version> 1.10</version> </dependency> <!--Spring-shiro--<dependency> <groupid>org.ap Ache.shiro</groupid> <artIfactid>shiro-spring</artifactid> <version>1.4.0</version> </dependency> <!--kind Editor--<dependency> <groupId>com.kindeditor</groupId> <artifactid>json_simple&lt ;/artifactid> <version>1.1</version> </dependency> <dependency> <groupid>co
			M.kindeditor</groupid> <artifactId>commons-io</artifactId> <version>1.4</version> </dependency> <dependency> <groupId>com.kindeditor</groupId> <artifactid>commons -fileupload</artifactid> <version>1.2.1</version> </dependency> <!--log--&lt ;d ependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version&gt ;1.2.17</version> </dependency> <!--urlrewrite--<dependency> <groupid>org.t
		Uckey</groupid>		<artifactId>urlrewritefilter</artifactId> <version>4.0.4</version> </dependency> <!--Fastdfs--<dependency> <groupId>com.github.tobato</groupId> <artifactid>f Astdfs-client</artifactid> <version>1.25.2-RELEASE</version> </dependency> <!--Aliba BA's Druid database connection pool-<dependency> <groupId>com.alibaba</groupId> <artifactId>druid< /artifactid> <version>1.0.11</version> </dependency> <dependency> <groupId> Net.sourceforge.nekohtml</groupid> <artifactId>nekohtml</artifactId> <version>1.9.22< /version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <ar Tifactid>commons-lang3</artifactid> <version>3.4</version> </dependency> <!--kind Editor--<dependency> <groupId>com.kindeditor</groupId> <artifactId>json_simple</artifactId> <v ersion>1.1</version> </dependency> <dependency> &LT;GROUPID&GT;COM.KINDEDITOR&LT;/GROUPID&G
				T <artifactId>commons-io</artifactId> <version>1.4</version> </dependency> <depen
				Dency> <groupId>com.kindeditor</groupId> <artifactId>commons-fileupload</artifactId> <version>1.2.1</version> </dependency> </dependencies> </dependencyManagement> < Build> <finalName>${project.artifactId}</finalName> <plugins> <!--java Compilation plugin--<p Lugin> <groupId>org.apache.maven.plugins</groupId> <artifactid>maven-compiler-plugin</
					artifactid> <configuration> <source>1.8</source> <target>1.8</target> <encoding>utf-8</encoding> </configuration> </plugin> </plugins> </build> </project> 

Gytlv-zm-blog: (blog) Project

Pom is as follows:

<project xmlns= "http://maven.apache.org/POM/4.0.0" xmlns:xsi= "Http://www.w3.org/2001/XMLSchema-instance" xsi: schemalocation= "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" > < Modelversion>4.0.0</modelversion> <parent> <groupId>com.spring-boot2</groupId> < Artifactid>gytlv</artifactid> <version>0.0.1-SNAPSHOT</version> </parent> < Artifactid>gytlv-zm-blog</artifactid> <dependencies> <!--spring Boot base configuration--<dependency&gt
			; <groupId>org.springframework.boot</groupId> <artifactid>spring-boot-starter-web</
		Artifactid> <!--<version></version> because we specified parent in parent (Spring boot)--</dependency> <!--Redis--<dependency> <groupId>org.springframework.boot</groupId> &LT;ARTIFACTID&G T;spring-boot-starter-data-redis</artifactid> </dependency> <!-- Spring boot Devtools depends on the package. -<dependency> <groupId>org.springframework.boot</groupId> <artifactid>spring-boot-d evtools</artifactid> <optional>true</optional> <scope>true</scope> </dependency&
		Gt <!--Tomcat support. -<dependency> <groupId>org.springframework.boot</groupId> <artifactid>spring-boot-s tarter-tomcat</artifactid> <scope>provided</scope> </dependency> <dependency> < Groupid>org.apache.tomcat.embed</groupid> <artifactId>tomcat-embed-jasper</artifactId> < Scope>provided</scope> </dependency> <!--extract dependent packages from parent, no version number--<!--add Fastjson dependency packages. -<dependency> <groupId>com.alibaba</groupId> <artifactid>fastjson</artifactid&gt
		; </dependency> <!--servlet---<dependency> <groupid>javax.servlet</groupid> <artifactId>javax.servlet-api</artifactId> <scope>provided</scope> </depend Ency> <!--JSTL (JSP standard tag LIBRARY,JSP standards Tag Library) is a constantly improving open source JSP tag Library, which is maintained by Apache's Jakarta team. -<!--<dependency> <groupId>javax.servlet</groupId> <artifactid>jstl</ Artifactid> </dependency> <!--HTML--<!--<dependency> <groupid>org.spring Framework.boot</groupid> <artifactId>spring-boot-starter-thymeleaf</artifactId> </ Dependency>-<!--enable non-rigorous checking of HTML-<!--<dependency> <groupid>net.sourceforge.nekohtml& Lt;/groupid> <artifactId>nekohtml</artifactId> </dependency> <!--spring-boot MyBatis Dependency: Please do not use the 1.0.0 version, because the Interceptor plug-in is not supported, 1.1.1 is the version of the blog when writing posts, we use the latest version can-<dependency> <groupid>org.mybatis.spri Ng.boot</groupid> <artifactid>mybatis-spring-boot-starter</Artifactid> </dependency> <!--MyBatis provides an interceptor interface that allows us to implement our own interceptors and load them into sqlsessionfactory as a plugin. 
			There's a developer on GitHub who wrote a paging plugin, which I think can be very handy to use. GitHub Project Address: https://github.com/pagehelper/Mybatis-PageHelper-<dependency> <groupId> Com.github.pagehelper</groupid> <artifactId>pagehelper</artifactId> </dependency> <!-- Logs--<dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> &lt ;/dependency> <!--urlrewrite--<dependency> <groupId>org.tuckey</groupId> <arti Factid>urlrewritefilter</artifactid> </dependency> <!--add MySQL database driver dependency package. -<dependency> <groupId>mysql</groupId> &LT;ARTIFACTID&GT;MYSQL-CONNECTOR-JAVA&LT;/ARTIFAC Tid> </dependency> <!--Alibaba Druid database Connection pool--<dependency> <groupid>com.alibaba</ Groupid> <artifactid>druId</artifactid> </dependency> <!--MQ--<dependency> &LT;GROUPID&GT;ORG.APACHE.ACTIVEMQ </groupId> <artifactId>activemq-broker</artifactId> </dependency> <dependency> &lt ;groupid>org.springframework</groupid> <artifactId>spring-jms</artifactId> </dependency > <dependency> <groupId>org.apache.activemq</groupId> <artifactid>activemq-client</ Artifactid> </dependency> <!--websocket--<dependency> <groupid>org.springframework .boot</groupid> <artifactId>spring-boot-starter-websocket</artifactId> </dependency> < !--Spring-shiro-<dependency> <groupId>org.apache.shiro</groupId> <artifactid>shiro -spring</artifactid> </dependency> <!--shiro-ehcache---<dependency> <groupid>org. Apache.shiro</groupid> &Lt;artifactid>shiro-ehcache</artifactid> <version>1.4.0</version> </dependency> < Dependency> <groupId>org.springframework</groupId> <artifactid>spring-context-support</ Artifactid> </dependency> <!--Commons lang---<dependency> <groupid>org.apache.commo 
		Ns</groupid> <artifactId>commons-lang3</artifactId> </dependency> <!--kindeditor-- <dependency> <groupId>com.kindeditor</groupId> <artifactid>json_simple</artifactid&gt
		; </dependency> <dependency> <groupId>com.kindeditor</groupId> <artifactid>commons-io </artifactId> </dependency> <dependency> <groupId>com.kindeditor</groupId> <art Ifactid>commons-fileupload</artifactid> </dependency> <!--Fastdfs--<dependency> &L t;groupid>com.github.tobato</groupid> <artifactId>fastdfs-client</artifactId> </dependency> </dependencies> < build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifact
				Id>maven-surefire-plugin</artifactid> <configuration> <skipTests>true</skipTests>
				</configuration> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <mainclass>com.zm.blo 
							g.blogstart</mainclass> </configuration> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </pl ugin> </plugins> <resources> < copy jsp files to the Meta-inf directory!--Packaging--<resource> <!-- Specifies the resource file under which directory the resources plug-in handles -<directory>src/main/webapp</directory> <!--Note This must be placed in this directory to be accessed--<targetpath&gt ; 
			meta-inf/resources</targetpath> <includes> <include>**/**</include> </includes>
					</resource> <resource> <directory>src/main/resources</directory> <includes> <include>**/**</include> </includes> <filtering>false</filtering> </resour ce> </resources> </build> </project>

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.