使用java读取本地html文件并返回前端
时间: 2024-02-01 19:15:03 浏览: 151
你可以使用Java提供的File和Scanner类来读取本地HTML文件,然后将读取到的内容返回给前端。以下是一个示例代码:
```java
import java.io.File;
import java.io.IOException;
import java.util.Scanner;
public class HtmlReader {
public static String readHtmlFile(String filePath) throws IOException {
StringBuilder contentBuilder = new StringBuilder();
File file = new File(filePath);
try (Scanner scanner = new Scanner(file)) {
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
contentBuilder.append(line).append("\n");
}
}
return contentBuilder.toString();
}
}
```
在你的Web应用程序中,你可以将此方法用于读取HTML文件并将其返回给前端:
```java
import java.io.IOException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@RequestMapping("/html")
public class HtmlController {
@GetMapping
@ResponseBody
public String getHtml(HttpServletRequest request, HttpServletResponse response,
@RequestParam String fileName) throws IOException {
String filePath = request.getServletContext().getRealPath("/WEB-INF/html/" + fileName);
return HtmlReader.readHtmlFile(filePath);
}
}
```
在上面的代码中,我们通过@RequestParam注释从请求参数中获取HTML文件名,然后将其传递给HtmlReader.readHtmlFile()方法来读取文件并返回其内容。最后,我们使用@ResponseBody注释将内容作为响应主体返回给前端。注意,这里的文件路径使用了相对路径,我们假设HTML文件存储在Web应用程序的/WEB-INF/html目录中。
阅读全文