写了个简单的随机生成密码的jsp页面mima.jsp
代码如下:
<%@ page language="java" contentType="text/html; charset=gb2312"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>密码生成器</title>
</head>
<body>
<jsp:useBean id="pass" scope="session" class="cc.PasswordBean"/>
<jsp:setProperty name="pass" property="numDigit" value="6"/>
<% cc.PasswordBean.createPassword(); %>
随机生成密码:<font color="#663366">
<jsp:getProperty name="pass" property="password"/></font><br></body>
</html>
javabean的代码如下:package cc;
import java.util.*;
import java.io.Serializable;
public class PasswordBean implements Serializable {
private int numDigit;
private long password;
public PasswordBean(){
numDigit=6;
password=123456;
}
public void setNumDigit(int n){
if(n<6)
numDigit=n;
else
numDigit=6;
}
public void createPassword(){
double d=Math.random();
int n=1;
for(int i=0;i<numDigit;i++)
n=n*10;
password=(long)(d*n)+1;
}
public int getNumDigit(){
return numDigit;
}
public long getPassword(){
return password;
}
}
我的javabean路径是C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\mima\WEB-INF\classes\cc,没有错误啊,怎么解决?谢谢
代码如下:
<%@ page language="java" contentType="text/html; charset=gb2312"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>密码生成器</title>
</head>
<body>
<jsp:useBean id="pass" scope="session" class="cc.PasswordBean"/>
<jsp:setProperty name="pass" property="numDigit" value="6"/>
<% cc.PasswordBean.createPassword(); %>
随机生成密码:<font color="#663366">
<jsp:getProperty name="pass" property="password"/></font><br></body>
</html>
javabean的代码如下:package cc;
import java.util.*;
import java.io.Serializable;
public class PasswordBean implements Serializable {
private int numDigit;
private long password;
public PasswordBean(){
numDigit=6;
password=123456;
}
public void setNumDigit(int n){
if(n<6)
numDigit=n;
else
numDigit=6;
}
public void createPassword(){
double d=Math.random();
int n=1;
for(int i=0;i<numDigit;i++)
n=n*10;
password=(long)(d*n)+1;
}
public int getNumDigit(){
return numDigit;
}
public long getPassword(){
return password;
}
}
我的javabean路径是C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\mima\WEB-INF\classes\cc,没有错误啊,怎么解决?谢谢
解决方案 »
- 关于在UTF-8编码的页面中调用内容为GB2312编码的问题?
- 向各位大侠请教,急!为什么我自己定义的tag,在运行时总是显示异常。
- 为何我的连接池出现这样的怪事??????????/
- 如何配置JSP+APACHE
- 很简单的问题,请问安装了jdk和tomcat后,还要作怎样的配置?
- 怎么把datetime的时间显示出只要年、月、日?在查询数据库时怎样查一段时间内的内容?
- 请问在何处能够下载到的JSP编辑器?
- 如何将在<textarea rows="14" name="Content" cols="74"></textarea>中输入的回车,变成页面得换行?
- tomcat 大问题呀!救我呀!!!!!!
- jsp+excel的中文显示!!!
- 很成問題的問題
- 问一个jsp页面跳转问题,求教
还有我粘贴你的代码测试了下,其中你的 PasswordBean 类的createPassword()方法有个错误,当你的double d 得到的数小于0.1时则返回的数不是个6位的数,需要加如if语句进行判断。
我觉得你那个不能加载的原因在你JSP页面中的<% cc.PasswordBean.createPassword(); %> 这句话明显错误,用类名直接调用了非静态方法。
我在测试中把它改为了
<%
cc.PasswordBean p=(cc.PasswordBean)session.getAttribute("pass");
p.createPassword();
%>
则能正确执行。
还有你写javaBean时要遵循一些原则,按道理你的createPassword方法应该改为setPassword.
不知道说得有没有道理,希望对你有点帮助。嘿嘿!
但是我感觉你这个写法更确切点
的确javabean写的不够规范
而且那个小错误我也没考虑,看了下随机的都是六位的,没考虑小于0.1的判断
你说的很好,我也最近才上手jsp,希望与你共同交流,谢谢