从Java文件写入jsp文件

从Java文件写入jsp文件,java,mysql,spring,jsp,spring-mvc,Java,Mysql,Spring,Jsp,Spring Mvc,我有一个使用Spring设计的JavaWeb服务和一个与之对应的jsp文件 为了进一步澄清,我有一个名为infosys.jsp WEB-INF/views的jsp文件,可以像https://localhost:8080/admin/infosys?id=34一样访问它。我也可以传入参数,如图所示 在我的web控制器中,我有一个名为 @RequestMapping(value = "/infosys", method = RequestMethod.GET) public @ResponseB

我有一个使用Spring设计的JavaWeb服务和一个与之对应的jsp文件

为了进一步澄清,我有一个名为infosys.jsp WEB-INF/views的jsp文件,可以像https://localhost:8080/admin/infosys?id=34一样访问它。我也可以传入参数,如图所示

在我的web控制器中,我有一个名为

 @RequestMapping(value = "/infosys", method = RequestMethod.GET)
 public @ResponseBody void getId(@RequestParam(value="id", required=false) String id) {
    .......
}
我已经调试过了,这个方法可以工作了,我可以访问传递给它的id。我试图在jsp文件中显示id。例如,如果我说https://localhost:8080/admin/infosys,我希望能够显示34。如何写入jsp文件?我有一个MySQL数据库集成,如果我需要存储和访问。如果我需要,我如何才能写入数据库和访问

编辑:infosys.jsp文件:

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@ page isELIgnored ="false" %> 

<!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=ISO-8859-1">
<title>Info Sys</title>
</head>
<body>
<spring:url value="/" var="homeUrl"/>
<a href="${homeUrl}">Home</a>
<BR><BR>

</body>
</html>

信息系统



控制器的处理程序方法应返回带有视图名称的字符串(no@ResponseBody)。您还应该在模型中设置ID

@RequestMapping(value = "/infosys", method = RequestMethod.GET)
String getId(@RequestParam(value="id", required=false) String id, org.springframework.ui.Model model) {

  model.addAttribute("id", id);
  return "admin/infosys";
}
您应该使用Spring的InternalResourceViewResolver将返回的值转换为视图的相对路径。您可以将其作为bean添加到Web应用程序上下文配置文件中,通常位于
/Web-INF/mvc dispatcher servlet.xml

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  <property name="prefix" value="/WEB-INF/views/"/>
  <property name="suffix" value=".jsp"/>
</bean>

admin/infosys
->InternalResourceViewResolver->
/WEB-INF/views/admin/infosys.jsp

下面是它的工作原理:

  • Http请求说,Tomcat
  • 请求由Spring的DispatcherServlet处理
  • DispatcherServlet基于@RequestMapping找到正确的HandlerMethod
  • DispatcherServlet创建一个模型实例并通过引用传递给HandlerMethod
  • HandlerMethod将视图名称返回给DispatcherServlet
  • Spring将模型添加到请求范围
  • DispatcherServlet从InternalResourceViewResolver获取视图路径
  • 查找正确的JSP
  • 将请求转发到JSP

  • 在JSP文件中,简单地将
    ${id}
    放在页面的任何位置,这将显示“id”模型属性的值

    短语
    在我的jsp文件中显示id
    写入我的jsp文件
    表示对jsp文件是什么的一些基本误解。它不是你“写信给”的东西。这是一个用于呈现HTML输出的模板。很抱歉,我不熟悉web服务。如何呈现HTML输出?我不相信Stackoverflow是教程的地方。非常感谢。这很有效。当我使用参数进行调用时,它现在将我重定向到infosys.jsp页面。但是,它不显示参数。我已经发布了infosys.jsp文件。我不确定在哪里添加modelAttribute特性来显示输出。谢谢!成功了。另外,我想知道如果我想把这个id保存到mySQL数据库中,我该怎么做?我用的是弹簧。现在它只显示最近https get调用的id。我的最终目标是保存来自多个HTTPS GET调用的ID并显示所有ID这是一个全新的大主题:)我建议使用Spring Data JPA。从这里开始: