将HTML和CSS与Kotlin和Spring MVC集成
我想为我的spring项目添加一些html和css。我在运行gradle,使用Kotlin。我当前的树目录如下:(我没有包含gradle构建文件) 我只是尝试打印“Hello$name$”,在web地址输入一些内容。这很有效。以下是GreetingController.kt:将HTML和CSS与Kotlin和Spring MVC集成,html,spring-mvc,kotlin,Html,Spring Mvc,Kotlin,我想为我的spring项目添加一些html和css。我在运行gradle,使用Kotlin。我当前的树目录如下:(我没有包含gradle构建文件) 我只是尝试打印“Hello$name$”,在web地址输入一些内容。这很有效。以下是GreetingController.kt: @RestController class GreetingController { @RequestMapping("/greeting") fun greeting(@Request
@RestController
class GreetingController {
@RequestMapping("/greeting")
fun greeting(@RequestParam(value = "name", defaultValue = "World") name: String, model: Model) {
model.addAttribute("name", name);
return "greeting";
}
}
我的gradle.build文件:
buildscript {
ext.kotlin_version = '1.1.2' // Required for Kotlin integration
ext.spring_boot_version = '1.5.3.RELEASE'
repositories {
jcenter()
mavenCentral()
}
dependencies {
classpath "se.transmode.gradle:gradle-docker:1.2"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" // Required for Kotlin integration
classpath "org.springframework.boot:spring-boot-gradle-plugin:$spring_boot_version"
}
}
apply plugin: 'docker'
apply plugin: 'eclipse'
apply plugin: 'idea'
apply plugin: 'kotlin' // Required for Kotlin integration
apply plugin: 'org.springframework.boot'
apply plugin: 'application'
jar {
baseName = 'webapp'
version = '0.1.0'
}
repositories {
jcenter()
}
dependencies {
compile "org.springframework.boot:spring-boot-starter-thymeleaf"
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" // Required for Kotlin integration
compile 'org.springframework.boot:spring-boot-starter-web'
testCompile 'junit:junit'
}
task buildDocker(type: Docker, dependsOn: build) {
push = false
applicationName = jar.baseName
dockerfile = file('src/main/docker/Dockerfile')
doFirst {
copy {
from jar
into stageDir
}
}
}
task wrapper(type: Wrapper) {
gradleVersion = '3.5'
}
springBoot {
mainClass = 'com.tunnll.spring.webapp.Application'
}
此外,我的html文件:
<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Getting Started: Serving Web Content</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
<p th:text="'Hello, ' + ${name} + '!'" />
</body>
</html>
入门:提供Web内容
编辑:该网站正在本地运行,因此我无法提供链接。
目前,它打印“问候语”,这是我在GreetingController中返回的内容。但是,我希望它显示为“helloworld”,这是由html文件生成的。html文件未连接到应用程序可能是一个问题。我不确定。任何帮助都将不胜感激 问题是我使用的是@RestController,而我本应该只使用@Controller。
此外,html文件应该位于resources/templates目录中。您的网站链接指向
localhost
。是的,我的错。我忘了它只在本地可用。我添加了对显示内容的描述。这是非常简约的,所以在这方面不应该是个问题。