您的位置:论坛首页 >> 软件论坛论坛  

用户登录验证的JSP完整程序

楼主: 2008-6-5 11:30:47
游客
 编辑  删除  回复  收藏  留言  好友   置顶   取消精华

原文:用户登录验证的JSP完整程序

  
public String validateUser(String inputUserid, String inputPwd)
throws SQLException
{
String returnString = null;
String dbUserid = "userid"; // 数据库的用户名
String dbPassword = "password" ; //数据库的密码
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:myDriver", dbUserid , dbPassword );
Statement stmt = con.createStatement();
String sql= "select USERID from USERTABLE where USERID = '" + inputUserid + "' and PASSWORD = '" + inputPwd +"' ;" ;
ResultSet rs = stmt.executeQuery(sql);
if (rs.next())
{
returnString = rs.getString("USERID");
}
stmt.close();
con.close();
return returnString ;
}

   如何设置application 变量

  application变量是对一个web application有效的全局变量,在保存一些全局有效的值时非常有用。与session变量不同,application变量可以用application.getAttribute()和application.setAttribute()来访问。

  在JSP中,可以自动引用application变量,指代当前的web 应用。

  在引用application 变量时,必须使用同步。并且,需要测试一个application属性是否已经存在。请仔细研究下面的代码,在下面,设置了一个叫"change"的application 属性,保存一个整型值。关于在servlet中使用application变量,方法与下面的代码一致,不过,需要先说明一个application如下:

servletContext application=getServletContext();

  后面的一段函数是env.Java的片断,可以看看在servlet中如何使用application变量的。

<%
Integer count = null;
synchronized (application)
{
count = (Integer) application.getAttribute("change");
if (count == null) count = new Integer(0);
count = new Integer(count.intValue() + 1);
application.setAttribute("change", count);
}

private void printApplication(PrintWriter pw, HttpServletRequest req)
throws IOException
{
ServletContext application = getServletContext();
pw.println("

Application Information:

");
pw.println("");
pw.print("
Major Version");
pw.println(application.getMajorVersion());
pw.print("
Minor Version");
pw.println(application.getMinorVersion());
pw.print("
Server Info");
pw.println(application.getServerInfo());
pw.print("
Real Path (of pathinfo)");
pw.println(application.getRealPath(req.getPathInfo()));
pw.print("
Mime-type (of pathinfo)");
pw.println(application.getMimeType(req.getPathInfo()));
pw.println("
");
pw.println("

Application Variables:

");
pw.println("");
Enumeration e = application.getAttributeNames();
while (e.hasMoreElements())
{
String name = (String) e.nextElement();
pw.print("
");
pw.print(name);
pw.print("
");
pw.println(application.getAttribute(name));
}
pw.println("
");
}
%>






Welcome, visitor: <%= count %>




   如何防止IE缓存jsp文件

  1.使用Java提供的方法,在jsp或者servlet中都可以

<%
response.setHeader("Pragma","No-cache");
response.setHeader("Cache-Control","no-cache");
response.setDateHeader("Expires", 0);
%>

  2.使用HTML标记,如下面:






   类似于asp中htmlencode函数的jsp函数

public static String asHTML(String text)
{
if (text == null)
return "";
StringBuffer results = null;
char[] orig = null;
int beg = 0, len = text.length();
for (int i = 0; i < len; ++i)
{
char c = text.charAt(i);
switch (c){
case 0:
case '&':
case '<':
case '>':
case '"':
if (results == null)
{
orig = text.toCharArray();
results = new StringBuffer(len+10);
}
if (i > beg)
results.append(orig, beg, i-beg);
beg = i + 1;
switch (c)
{
default: // case 0:
continue;
case '&':
results.append("&");
break;
case '<':
results.append("<");
break;
case '>':
results.append(">");
break;
case '"':
results.append(""");
break;
}
break;
}
}
if (results == null)
return text;
results.append(orig, beg, len-beg);
return results.toString();
}


 

 1楼: 2008-6-5 11:30:47
游客
 删除  留言  好友

我来坐会`````
 


回复帖子 RE: 用户登录验证的JSP完整程序

 1、第1个回帖者得3分,第2个回帖者得2分,其余得1个积分!

 2、如是求助帖,前10位有效回帖用户每人再各加10分!

 3、如果乱回求助帖,让原帖作者很不满意,他有权收回积分,系统也同时对您惩罚,扣除10个积分

帐号:
用户名 密码 (不填为游客)  注册新用户
内容:


撤消 恢复 粗体 斜体 下划线 左对齐 居中 右对齐 超级链接 取消超级链接 插入网上图片,支持格式为:gif、jpg、png、bmp 使用帮助 上传图片
表情符号:


附加码:
(附加码: 4295 )