JAVA 静态类写法和调用

163 篇文章 0 订阅

js?还是指JsP的脚本段。

先看一般是如何显示数据吧,最后在介绍js:

我们可以使用JsP页面的脚本段,首先写个bean类:

public class somebean{

public string getname(){return "123";}

public void setname(string name){}

}

<!-- test.jsp-->

<%@ page contenttype="text/html;charset=utf-8" pageencoding="utf-8"%>

<%

somebean bean=new somebean();

out.println("bean-name is "+bean.getname());

%>

就是这样,脚本段里面的东西其实就是java代码,而JsP页面本质就是servlet。

我不太清楚你是否了解JsP的编译,如果你不知道的话我建议你到搜一下"JsP的java代码"一类的东西看看,这是基础。

你说的静态类应该是指类中包含静态域吧,除了内部类可以是静态的外,别的类都不行。

不论是静态域还是普通域,用上面的脚本段都可以搞定。

再看看struts,静态的显示我放在后面了:

首先我们来写一个action类:

public class Loginaction{

public string execute(){

return success;

}

public void setValue(somebean value){

this.value=value;

}

public somebean getValue(){

return this.value;

}

private somebean value;

}

再写出bean类:

public class somebean{

public string getname(){}

public void setname(string name){}

}

配置action应该不用说了,没什么特别的,不会就上网查吧。

我们现在说方法。

方法一:

使用ognL表达式。

你可以使用struts自带的标签,他们都支持ognL,比如s:property。

举个例子:

<!--test.jsp-->

<%@ page contenttype="text/html;charset=utf-8" pageencoding="utf-8"%>

<%@ taglib prefix="s" uri="/struts-tags" %>

<s:property value="value.name"/>

你访问Loginaction的时候s:property标签就会显示getValue().getname();

如果你想了解更多的struts2标签和ognL表达式建议去找更详尽的资料。

方法二:

当然是使用JsP本身的性质了。

通过request和session来获取值。

我们把action类改一下:

public class Loginaction{

public string execute(){

somebean value=new somebean();

value.setname("sfsfjsfje");

actioncontext context=actioncontext.getcontext();

//往request里放attribute

context.put("value",value);

//往session里放

context.getsession().put("value",value);

return success;

}

}

接下来我们改页面:

<!-- test.jsp -->

<%@ page contenttype="text/html;charset=utf-8" pageencoding="utf-8"%>

<%@ taglib prefix="s" uri="/struts-tags" %>

<%= ((somebean) request.getattribute("value")).getname() %>

<%= ((somebean) session.get("value")).getname() %>

ognL也可以显示静态域:

public class somebean{

public static string name="123";

public static string getalias(){return "abc";}

}

public class Loginaction{

public string execute(){return success;}

}

配置文件不写了。

页面:

<!--test.jsp-->

<%@ page contenttype="text/html;charset=utf-8" pageencoding="utf-8"%>

<%@ taglib prefix="s" uri="/struts-tags" %>

<!--还是用s:property-->

<s:property value="@somebean@name"/>

<s:property value="@somebean@getalias()"/>

当你访问Loginaction时就会显示somebean的name和getalias()。

不知道你是不是问的这个。

如果你要在js中调用数据也很容易:

<!-- test.jsp -->

<%@ page contenttype="text/html;charset=utf-8" pageencoding="utf-8"%>

<%@ taglib prefix="s" uri="/struts-tags" %>

<script language="javascript" type="text/javascript">

var name="<s:property value="@somebean@name"/>";

</script>

这样js中就有相应的数据了。

原文地址:https://www.weidianyuedu.com/content/4020737142840.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java中,内部类是定义在另一个类中的类。内部类可以访问它所在的外部类的成员,包括私有成员。下面是几种内部类的写法: 1. 成员内部类 成员内部类是定义在另一个类的内部的普通类,可以访问外部类的成员变量和方法。如下所示: ``` public class OuterClass { private int x = 10; public class InnerClass { public void printX() { System.out.println(x); } } } ``` 在外部类中创建内部类的实例: ``` OuterClass outer = new OuterClass(); OuterClass.InnerClass inner = outer.new InnerClass(); inner.printX(); // 输出 10 ``` 2. 静态内部类 静态内部类是定义在另一个类的内部的静态类,可以访问外部类的静态成员变量和方法。如下所示: ``` public class OuterClass { private static int x = 10; public static class InnerClass { public void printX() { System.out.println(x); } } } ``` 在外部类中创建静态内部类的实例: ``` OuterClass.InnerClass inner = new OuterClass.InnerClass(); inner.printX(); // 输出 10 ``` 3. 局部内部类 局部内部类是定义在方法或者代码块中的类,只能在定义它的方法或代码块中使用。如下所示: ``` public class OuterClass { public void print() { class InnerClass { public void printMessage() { System.out.println("Hello, World!"); } } InnerClass inner = new InnerClass(); inner.printMessage(); } } ``` 在外部类中调用方法: ``` OuterClass outer = new OuterClass(); outer.print(); // 输出 Hello, World! ``` 以上就是Java中三种内部类的写法

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值