苏州北大青鸟|电脑人才培训中心『官方网站』

高中生毕业了做什么?高中生学什么好 苏州北大青鸟、苏州北大青鸟学费、苏州北大青鸟地址
ACCP7.0培训-入手最快 JAVA培训—收入最高 .NET培训—就业面最宽 网络营销培训—需求量最大
高中毕业学什么好 大学生找不到工作怎么办 学什么技术有前途(好转行) 初中(中专)毕业学什么好
当前位置: 主页 > 青鸟百科 >

基于JSP求职招聘网站的设计

时间:2012-05-28 16:58来源: 作者: 点击:
1         系统实现
1.1 用户登录
速达求职网设置了三种类型用户:个人用户、企业用户、管理员。不同的用户有不同的权限。这些判断都是在后台里进行判断的没有相应的界面。
1.      用户从首页index.jsp的登录框登录,用户提交登录后进入index1.jsp界页进行用户类型判断如果是个人用户进入login.jsp界页进行用户名和密码的判断,如果为企业用户则进入login1.jsp界页进行相应的判断,如果登录名是admin,密码是admin1234就直接进入管理员页面。个人用户登录成功进入person/pindex.jsp页面,企业用户进入company/cindex1.jsp页面。
2.      核心代码如下:
StringstrRadiobutton=request.getParameter("radiobutton").trim();
String username = request.getParameter("username");
String password = request.getParameter("password");
Request.getParameter(“name”)获得属性为name的值。
username.equals("admin")&&password.equals("admin1234")判断管理员用户,
strRadiobutton.equals("2")判断企业用户,如果不是管理员又不是企业用户,else则为个人用户。
用户名和密码判断:
ResultSet res=stmt.executeQuery("select * from puser(cuser) where pusermane='"+username+"' and ppassword='"+password+"'");在puser(cuser)表里查找出一行用户名为username并且密码为password,如果res.next()存在说明用户名和密码是对的,就进入相应的界面。
session.putValue("regid",id);session.putValue("logname",username);
session.putValue("loginSign","OK");
其中regid,logname,loginSign都是传递变量的名称,id,username是变量名,用双引号括起来的OK是值。Session是一次会话只要浏览器不关闭就不会关闭会话一般默认保存30分钟,在别一个页面获得session对话所传递的值的方法:(String)session.getValue(“”)(括号里为前面所传递的变量名)如要获得session.putValue(“regid”,id)所传递的id的值的方法:
String id=(String)session.getValue(“regid”)。本页面中运用session是为了在以后的业面里判断用户的用户名和是否登录等。
数据库连接语句
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); Stringurl="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=candylau";
String user="sa";
 String password="sa";
Connection conn= DriverManager.getConnection(url,user,password);
Statement
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);

Class.forName(“”)是显示加载com.microsoft.jdbc.sqlserver.SQLServerDriver类,调用newInstance()产生这个类的实例。url数据源的名称,user用户名,password密码,Connection是建立数据库的连接。Conn.createStatement 用Connection接口创建一个Statement实例执行需要的查询。ResultSet.TYPE_SCROLL_SENSITIVE:该常数的作用是指定数据库游标可以在记录集中前后移动,并且当数据库用户获取的记录集对其他用户的操作敏感,就是说,当前用户正在浏览记录集中,但是其他用户的操作使数据库中的数据发生了变化,当前用户所获取的记录集中的数据也会同步发生变化(这样有可能会导致非常严重的错误发生,建议慎重使用该常数)。ResultSet.CONCUR_UPDATABLE:该常数的作用是指定当前记录集的操作方式(concurrency mode)为可能更新,一旦使用了这个常数,那么用户就可以使用updateXXX()等方法更新记录集中的数据。数据库的连接至关重要,在网站的建设中很多页面的数据都要和数据库进行交互。

1.1 个人用户功能实现
根据图2我们可以看出个人用户的功能模块有:个人中心(创建简历名)、个人资料(修改密码)、我的简历、投递记录(职位搜索、职位申请)、我要退出。
(1)    个人中心代码的实现
String regid=(String)session.getValue("regid");
String username=(String)session.getValue("logname");
String loginSign=(String)session.getValue("loginSign");
if(loginSign.equals("OK"));
{}else {
out.println("<script language=\"JavaScript\" type=\"text/javascript\">alert(\"请登录!\");window.location.href=\"http://localhost:8080/candylau/index.jsp\";</script>");
}
前面提到的session的用法,if(loginSign.equals(“OK”))判断loginSign的值是不是“OK”,如果是,就会看到图3的界面,否则提示“请登录”,确定后回到首页。
res=stmt.executeQuery("select resumename from presname where cid='"+regid+"'");
if(res.next())
{res=stmt.executeQuery("select resumename from presname where cid='"+regid+"'");
i=0;
while(res.next())
{ i++;}
title=new String[i];
i=0;
res=stmt.executeQuery("select resumename from presname where cid='"+regid+"'");
while(res.next()){
title[i]=res.getString("resumename");%>
<table>
<tr>
<td>简历名称:<%= title[i] %></td>
<td><a href="watch.jsp?cid=<%=regid%>&jlname=<%=title[i]%>">浏览</a>  <a href="baseinfo.jsp?id=<%=regid%>&jlname=<%=title[i]%>">修改</a>  
<a href="del.jsp?id=<%=regid%>&jlname=<%=title[i]%>">删除</a></td>
</tr><% session.putValue("jlname",title[i]); %>
<%session.putValue("id",regid);%></table>
<% i++;}
res.close();} 
注意:第一个if(res.next())是判断resumename是不是存在,如果存在必须在定义一次res,不然在后面就会出现数组溢出出错。这是因为在if判断是已经读取了一行数据,当执行 while(res.next())就会少搜索一行,使得数组溢出出错。
在浏览、修改、删除时使用herf=””?cid=<%regid%>&jlname=<%=title[i]%>在起引号里的页面里是用request.getParameter()方法来获得cid和jlname的值的。用herf=””?cid=<%regid%>&jlname=<%=title[i]%>方法是为了实现对不同的简历的浏览、修改、删除时互不影响。

浏览简历,herf=”watch.jsp”?cid=<%regid%>&jlname=<%=title[i]%>,在watch.jsp页面编写是获得regid、jlname值的方法String id=request.getParameter(“cid”); String jlname = new String(request.getParameter( "jlname" ).getBytes( "ISO8859_1" ), "GBK" );这里必须得进行编码转换,否则所的到的汉字回是“????”,并且在页面开始就要用到request.setCharacterEncoding("GBK");把整个页面的编码转换为gbk,这在本网站中的每给页面都用了这段代码。


 


标签:

(原文标题:基于JSP求职招聘网站的设计

(责任编辑:苏州北大青鸟



相关新闻

  • .NET下JSON程序的常用操作技巧
  • 基于WEB的成本管理系统的设计
  • 基于WEB的学生成绩管理系统的设计及
  • 基于WEB的汽车信息网站的设计
  • 基于WEB的信息信息发布系统的设计及
  • 基于WEB的JSP实验室管理系统的设计
  • 基于WEB的企业人事管理系统的设计
  • 基于JSP的商场进销存管理系统的设计
  • 基于JSP的网络交易市场物业管理系统
  • 基于WEB的毕业设计选题系统的设计及
    更多
    分享按钮
    ------分隔线----------------------------
    招生专题