啥?你还不会创建spring项目!!!
共 4335字,需浏览 9分钟
·
2021-11-08 21:50
本机环境
OS:win 10 IDE:IDEA 2018.1 框架:spring 5.0.8 依赖管理:maven
1、创建maven项目
创建项目
这里创建的是maven项目,关于maven这里不做详细介绍,后面可以考虑出一篇关于maven的文章 选择maven的模板
这里选择的是maven-archetype-webapp,因为我们创建的web应用,其他的模板没有详细了解过,有兴趣的同学可以自己去查下资料
设置包名
GroupId:项目的公有前缀,一般指定为公司一级域名反写,比如com.baidu。如果你自己观察过maven的pom.xml文件的话,你会发现
标签下有个标签就有这个标签,对一个公司来说,这个值是不会轻易改变的,maven项目中jar包引用就是根据这个标签和包名来定位的,如果改变了,在其他项目用到这个包的时候,就要相应的改变,当然也不绝对,如果你不想通过工具来将本项目最后打成的jar安装到公司的仓库里,那就不影响。ArtifactId:项目特有的名字,也就是包名,一般来说要唯一。这个标签也是maven里面的,用于定位jar包 Version:项目版本号,这个标签也是maven里面的,用于定位jar包
设置项目的maven的配置信息、maven仓库路径(会从maven配置文件中获取)
首先要确保你本机有maven,maven home directory就是你本地maven的安装路径;User settings file指的是你maven下面的配置,里面可以设置本地、远程仓库,如果没有更改可以不设置;local repository设置的是本地仓库,也就是jar包存放路径,如果在配置文件里面设置了,这里不用管。
设置项目名、项目保存路径 这里就不再详细说了,根据字面意思大家都知道了
创建各个文件夹 在src文件夹下创建main文件夹、test文件夹 在main文件夹下创建java文件夹,并标记为sources Root 在main文件夹下创建resources文件夹,并标记为resources Root 在test文件夹下创建java文件夹,并标记为test sources Root 在test文件夹下创建resources文件夹,并标记为test resources Root 然后项目结构如下: src
├─main
│ ├─java
│ └─resources
└─test
├─java
└─resources
2、配置pom.xml
然后将如下内容copy到你的pom.xml文件中,这里就是maven最核心的内容,包括包引用,以及maven的插件:打包插件、编译插件等
<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.0modelVersion>
<groupId>io.github.syskegroupId>
<artifactId>springDemoartifactId>
<version>1.0-SNAPSHOTversion>
<packaging>warpackaging>
<name>springDemo Maven Webappname>
<url>http://www.example.comurl>
<properties>
<project.build.sourceEncoding>UTF-8project.build.sourceEncoding>
<maven.compiler.source>1.8maven.compiler.source>
<maven.compiler.target>1.8maven.compiler.target>
<spring.version>5.0.8.RELEASEspring.version>
properties>
<dependencies>
<dependency>
<groupId>junitgroupId>
<artifactId>junitartifactId>
<version>4.11version>
<scope>testscope>
dependency>
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-coreartifactId>
<version>${spring.version}version>
dependency>
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-beansartifactId>
<version>${spring.version}version>
dependency>
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-contextartifactId>
<version>${spring.version}version>
dependency>
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-context-supportartifactId>
<version>${spring.version}version>
dependency>
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-webartifactId>
<version>${spring.version}version>
dependency>
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-webmvcartifactId>
<version>${spring.version}version>
dependency>
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-txartifactId>
<version>${spring.version}version>
dependency>
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-aopartifactId>
<version>${spring.version}version>
dependency>
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-aspectsartifactId>
<version>${spring.version}version>
dependency>
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-jdbcartifactId>
<version>${spring.version}version>
dependency>
<dependency>
<groupId>com.alibabagroupId>
<artifactId>fastjsonartifactId>
<version>1.2.49version>
dependency>
<dependency>
<groupId>mysqlgroupId>
<artifactId>mysql-connector-javaartifactId>
dependency>
dependencies>
<build>
<finalName>springDemofinalName>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-clean-pluginartifactId>
<version>3.0.0version>
plugin>
<plugin>
<artifactId>maven-resources-pluginartifactId>
<version>3.0.2version>
plugin>
<plugin>
<artifactId>maven-compiler-pluginartifactId>
<version>3.7.0version>
plugin>
<plugin>
<artifactId>maven-surefire-pluginartifactId>
<version>2.20.1version>
plugin>
<plugin>
<artifactId>maven-war-pluginartifactId>
<version>3.2.0version>
plugin>
<plugin>
<artifactId>maven-install-pluginartifactId>
<version>2.5.2version>
plugin>
<plugin>
<artifactId>maven-deploy-pluginartifactId>
<version>2.8.2version>
plugin>
plugins>
pluginManagement>
build>
project>
3、配置web.xml
这个没什么好说的,所有web项目最核心的文件,项目的入口,需要在这里配置spring容器
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>springMVCdisplay-name>
<welcome-file-list>
<welcome-file>index.htmlwelcome-file>
<welcome-file>index.htmwelcome-file>
<welcome-file>index.jspwelcome-file>
<welcome-file>default.htmlwelcome-file>
<welcome-file>default.htmwelcome-file>
<welcome-file>default.jspwelcome-file>
welcome-file-list>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListenerlistener-class>
listener>
<context-param>
<param-name>contextConfigLocationparam-name>
<param-value>classpath:spring-dispatcher-servlet.xmlparam-value>
context-param>
<servlet>
<servlet-name>springServletservlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServletservlet-class>
<init-param>
<param-name>contextConfigLocationparam-name>
<param-value>param-value>
init-param>
<load-on-startup>1load-on-startup>
servlet>
<servlet-mapping>
<servlet-name>springServletservlet-name>
<url-pattern>/url-pattern>
servlet-mapping>
web-app>
4、spring核心配置spring-dispatcher-servlet.xml
这个文件有在web.xml中引用,请注意本文件的存放路径,本实例的存放路径是src/main/resources,编译后会进入classpath。
本文件用于设置所有的spring框架相关的配置,包括事务、页面引擎模板、bean
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
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.1.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.1.xsd">
<context:component-scan base-package="io.github.syske"/>
<mvc:default-servlet-handler />
<mvc:annotation-driven />
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"
id="internalResourceViewResolver">
<property name="prefix" value="/WEB-INF/view/" />
<property name="suffix" value=".jsp" />
bean>
beans>
5、项目结构
下面是本项目创建完成后的结构,需要注意的是配置文件的存放路径
这里要格外注意spring核心配置的路径,上面我说到存放到resources文件夹,如果没有创建这个文件夹,存放到src底下也是一样的,考虑到后续项目拓展,涉及到的配置文件比较多,建议大家还是创建resources文件夹
6、项目部署
这里部署的环境是tomcat,如果本地还没有tomcat或者插件没启用,要先把本地服务器配置好,不然你可能找不到tomcat这个选项
添加新的配置,选择tomcat,因为我是本地的所以选local,如果你是远程的tomcat,就选下面的remote,前提是你已经配置过了
配置tomcat服务器的基本信息,这里配置的和你项目相关的
第三步这里设置的是项目访问路径,如果你不知道项目名,那项目的访问路径就是localhost:8080/
部署项目
选择部署形式 如果部署这里没有下面的选项,在项目结构(快捷键CTRL + alt + shift + s)下Artifacts配置,具体的可以查询相关资料,不清楚的可以留言
运行
不出意外,项目就可以完美运行起来了,如果有问题请检查配置文件以及存放路是否和示例一致
以上步骤完成了,整个项目就已经创建完成,是不是感觉很简单,赶快动手自己做一下吧,好记性不如烂笔头,动手行动起来,不要你觉得,我要我觉得……
推荐阅读
1. java后端学习流程
Copyright ©2019 云中志