Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 使用来自客户端的内容填充JSP页面_Database_Jsp_Auto Populate - Fatal编程技术网

Database 使用来自客户端的内容填充JSP页面

Database 使用来自客户端的内容填充JSP页面,database,jsp,auto-populate,Database,Jsp,Auto Populate,我有一个托管JSP页面的服务器。我可以从我客户的数据库中填充它的文本框吗 我可以从我的列表中填充它的文本框吗 客户数据库 是的,你可以。 步骤:- 连接到servlet中的数据库 在servlet中检索数据并将其传递给jsp 从jsp中的请求获取该数据 使用scriptlet或jstl在jsp中显示数据 要在jsp中的文本框中填充数据,请使用以下命令: 假设您有保存用户信息的User对象,那么 <input type="text" value="<%= user.getName()

我有一个托管JSP页面的服务器。我可以从我客户的数据库中填充它的文本框吗

我可以从我的列表中填充它的文本框吗 客户数据库

是的,你可以。

步骤:-

  • 连接到servlet中的数据库
  • 在servlet中检索数据并将其传递给jsp
  • 从jsp中的请求获取该数据
  • 使用scriptlet或jstl在jsp中显示数据

  • 要在jsp中的文本框中填充数据,请使用以下命令:

    假设您有保存用户信息的
    User
    对象,那么

    <input type="text" value="<%= user.getName()%>" />
    
    
    
    创建一个用于加载数据、将其放入请求范围并将请求转发给JSP的。如果要在客户端打开链接/书签时执行此操作,请在
    doGet()
    方法中执行此操作。或者,当您希望在客户端提交表单时执行此操作时,请在
    doPost()
    方法中执行此操作

    下面是一个基于请求参数从DB预加载特定产品的示例:

    Product product = productService.find(request.getParameter("id")); // Do your DB access job.
    request.setAttribute("product", product); // It'll be available by ${product}.
    request.getRequestDispatcher("/WEB-INF/product.jsp").forward(request, response); // Let JSP display it.
    
    将这个servlet映射到
    /product
    的URL模式上,然后您就可以通过

    在中,您只需设置HTML输入元素的
    value
    属性,即可将其显示为输入元素的值。由于这对像另一个答案中建议的那样以普通方式打印很敏感,因此您希望使用
    fn:escapeXml()
    来避免XSS攻击

    <%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
    ...
    <input type="text" name="name" value="${fn:escapeXml(product.name)}" />
    <input type="text" name="description" value="${fn:escapeXml(product.description)}" />
    <input type="text" name="price" value="${fn:escapeXml(product.price)}" />
    
    
    ...
    

    请注意,Scriptlet(那些
    东西)是一个脚本,不提供对请求属性的即时访问(即,其他答案中建议的
    样式将不起作用),也不提供标准XSS转义功能。

    如果您可以访问客户机的数据库,并且可以从服务器连接,则可以