闲来无事,写点东西,回头自己套用也好,给大家做个参考也好
话不多说:开始正文
前期准备:用idea自己随便整个maven项目就好,没有特殊要求;
项目结构
说明:文件内容下文将按标号顺序提供,可根据个人喜好进行顺序复制
pom.xml(依赖关系)
<?xml version="1.0" encoding="UTF-8"?>
<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>top.gdjia.top</groupId>
<artifactId>jihuoma</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.6.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- jstl -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<!-- jasper -->
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>1.4.2.RELEASE</version>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/**</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/**</include>
</includes>
<filtering>false</filtering>
</resource>
<resource>
<directory>src/main/webapp</directory>
<includes>
<include>**/**</include>
</includes>
<targetPath>META-INF/resources</targetPath>
<filtering>false</filtering>
</resource>
</resources>
</build>
</project>
此处重点
⇧⇧⇧⇧⇧⇧⇧⇧⇧⇧⇧⇧⇧⇧⇧⇧⇧⇧说明:其实就两个依赖包;至于<build>
中的用来解决打包问题的,如果不添加resource配置,则在java -jar 启动后会无法找到jsp ;
application.yml
spring:
mvc:
view:
prefix: /WEB-INF/jsp/
suffix: .jsp
Application.java
package top.gdjia.www;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* @date 2020年5月27日
* @author liuxx
*/
@SpringBootApplication
public class Application {
public static void main(String[] args){
SpringApplication.run(Application.class,args);
}
}
Users.java
package top.gdjia.www.bean;
/**
* @date 2020年5月27日
* @author liuxx
*/
public class Users {
private Integer userid;
private String username;
private Integer userage;
public Integer getUserid() {
return userid;
}
public void setUserid(Integer userid) {
this.userid = userid;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public Integer getUserage() {
return userage;
}
public void setUserage(Integer userage) {
this.userage = userage;
}
public Users(Integer userid, String username, Integer userage) {
super();
this.userid = userid;
this.username = username;
this.userage = userage;
}
public Users() {
super();
// TODO Auto-generated constructor stub
}
}
IndexController.java
package top.gdjia.www.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import top.gdjia.www.bean.Users;
import java.util.ArrayList;
import java.util.List;
/**
* @date 2020年5月27日
* @author liuxx
*/
@Controller
public class IndexController {
/**
* 处理请求, 产生数据
*/
@RequestMapping("/")
public String showUser(Model model){
List<Users> list = new ArrayList<>();
list.add(new Users(1,"张三",20));
list.add(new Users(2,"李四",22));
list.add(new Users(3,"王五",24));
//需要一个 Model 对象
model.addAttribute("list",list);
//跳转视图
return "index";
}
}
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>title</title>
</head>
<body>
<table border="1" align="center" width="50%">
<tr>
<th>ID</th>
<th>Name</th>
<th>Age</th>
</tr>
<c:forEach items="${list }" var="user">
<tr>
<td>${user.userid }</td>
<td>${user.username }</td>
<td>${user.userage }</td>
</tr>
</c:forEach>
</table>
</body>
</html>
大功告成:
使用方法一:
使用方法二:(模拟打jar包,并到服务器发布的操作)
1:找到idea中的控制台Terminal 执行 mvn clean package
2:打包完成后 执行 cd target
3:进入target目录后 执行: java -jar jihuoma-1.0-SNAPSHOT.jar
(此处可能你的包名与我的不一致,所以你可以去target目录看下jar包的名称)
方法二就是打包发布的过程,如果真的想将代码发布到服务器,可将目录中的jar包复制到服务器目录,然后执行java -jar操作就完成了
结果验证:
完结!如果ok记得好评哦!