之前研究学习Spring MVC的时候总是用JSP作为视图,偶尔也尝试过Thymleaf,学习Java EE开发的时候又尝试过JSF,之前也翻译过一篇有关Spring Boot和JSF整合的文章——请参阅用Spring Boot开发JSF应用程序(翻译)。在此,对利用JSF作为视图进行Spring MVC开发进行详细的说明,从最开始的工程构建到实例的运行进行分享。这里只是把JSP简单替换成为JSF,如果比较熟悉的话,可以进一步看看尝试利用JSF作为Spring MVC的视图(探索篇)之表格的排序与选择
首先介绍一下开发环境:
- JDK版本:1.8.0_181
- Maven版本:Apache Maven 3.6.0
- Spring Tool Suite版本:3.9.7.RELEASE
- JBoss Tools版本:4.9.0 Final
- Tomcat版本:9.0.14
- Spring FrameWork版本:5.1.3.RELEASE
- lombok版本:1.18.4
- MyFaces版本:2.3.2
- Prime Faces版本:6.2
下面开始按照开发步骤进行说明,也作为自己的备忘。
首先需要创建Maven工程并转换为Web工程。
参考下面的步骤,创建一个简单的Maven工程。
设置工程的信息,点击Finish。
编辑pom.xml
文件。
<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>org.study.basic</groupId>
<artifactId>SpringJSFBasic</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
<project.build.sourceEncoding>utf-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.1.3.RELEASE</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<version>9.0.14</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-api</artifactId>
<version>2.3.2</version>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-impl</artifactId>
<version>2.3.2</version