将Java变量打印到JSP页面
在JSP页面上打印java bean中创建的java变量时遇到问题。我尝试将get方法从javabean调用到JSP中,但收到语法错误,并仅使用我目前的知识来解决它将Java变量打印到JSP页面,java,jsp,Java,Jsp,在JSP页面上打印java bean中创建的java变量时遇到问题。我尝试将get方法从javabean调用到JSP中,但收到语法错误,并仅使用我目前的知识来解决它 public class StudentLoginBean { @ManagedBean( name="studentLoginBean" ) public String username; public String getUsername() { return username; } public void se
public class StudentLoginBean {
@ManagedBean( name="studentLoginBean" )
public String username;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
这就是我试过的
<% String username = StudentLoginBean.getUsername("username"); %>
<div class="marginTable" data-pubid="<%=username%>" data-count="5"></div>
请将bean的范围添加为ViewScoped、SessionScoped等
@ViewScoped
@ManagedBean(name=“studentLoginBean”)
希望这能奏效。谢谢我认为变量
username
的范围仅限于声明它的scriplet标记
使用
全局声明变量username
这是更新后的代码
<%! String username; %>
<% username = StudentLoginBean.getUsername(); %>
<div class="marginTable" data-pubid="<%=username%>" data-count="5"></div>
使用表达式语言${username}/${studentLoginBean.username}使用jstl使用@kevcodez建议的表达式语言解析Bean属性值。这里有一个关于如何使用jsp标记库的链接:我有一个问题。是否应该在类上注释@ManagedBean(name=“studentLoginBean”),比如@ManagedBean(name=“studentLoginBean”)公共类studentLoginBean{……}studentLoginBean.getUsername(“用户名”)
您没有接受字符串参数的get
方法。使用您实际定义的方法。还要在类的顶部添加@ViewScoped@ManagedBean(name=“studentLoginBean”)。确定。我知道我必须在JavaBean上添加这个。但是我在JSP页面中如何调用它呢?@Tester应该在某个范围内设置bean。我看到您试图在JSP中获取username的值,但是值集在哪里?值是在HTML页面的bean中设置的。我得到一个错误。“必需:无参数。找到:java.lang.String。原因:实际参数和形式参数列表的长度不同。”@ShrinivasShukla scriptlet()标记的全部内容进入_jspService(req,resp)方法。此外,所有的html和纯文本内容都进入这个方法。所以,这应该不是问题。我又犯了一个错误。“无法从静态上下文引用非静态方法getUsername()。这不是什么大问题。请将公共字符串getUsername()
更改为公共静态字符串getUsername()
。”。