1、登录功能前台页面的创建
编写登录页面login.jsp,其中注册按钮提交使用javascript处理。
<input type="button" name="cmdCancel" value="注 册"class="defaultButton" onclick="onclick_reg(‘register/register.jsp’);">
javascript函数onclick_reg的关键代码:
function onclick_reg(url){
login.action=url;
login.submit();
}
编写登录成功页面,注意登录成功页面实际上就是进入主界面。
2、登录功能后台类的创建
编写登录业务逻辑处理类LoginBean.java,关键代码:
public User login(String username,String password) throws SQLException{
//第一步:访问数据库
DbHandle db =new DbHandle();
String sql="select * from user where username='"+username+"' and password='"+password+"'";
ResultSet rs=db.executeQuery(sql);
User user = new User();
//第三步:将登录用户的信息封装User中
if(rs.next()){
int userid = rs.getInt("id");
String username1 = rs.getString("username");
String password1 = rs.getString("password");
String sex = rs.getString("sex");
String profession = rs.getString("profession");
String favourite = rs.getString("favourite");
String type = rs.getString("type");
user.setId(userid);
user.setUsername(username1);
user.setPassword(password1);
user.setSex(sex);
user.setProfession(profession);
user.setFavourite(favourite);
user.setType(type);
//关闭数据库
db.close();
return user;
}
else{
//关闭数据库
db.close();
return null;
}
}
登录流程控制servlet类LoginServlet.java,登录成功后将用户信息放到session中以便后续功能使用,关键代码:
//调用业务处理类LoginBean进行登录
LoginBean loginBean = new LoginBean();
User user = new User();
try {
user = loginBean.login(username, password);
if(user!=null){
//如果登录成功,将登录用户的信息存放到session中,返回主界面
request.getSession().setAttribute("user", user);
request.getRequestDispatcher("main.jsp").forward(request, response);
}else{
//登录不成功,返回登录界面继续登录
request.getRequestDispatcher("login/login.jsp").forward(request, response);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("登录时访问数据库失败");
e.printStackTrace();
}
在菜单显示页面menu.jsp中,通过获取登录用户的类型从而控制菜单项的显示,管理员用户可以管理用户,针对注册用户进行删除,修改和查询,而普通用户不能进行管理。针对menu.jsp进行修改,关键代码如下:
<%
User user = (User)session.getAttribute("user");
String type = user.getType();
//如果当前登录用户为管理员,则具有管理用户权限
if(user.getType().equals("1")){
%>
<tr>
<td>
<a href="user/queryUser.jsp" target="content">用户管理</a>
</td>
</tr>
<%
}
%>
3、修改配置文件
<servlet>
<description></description>
<display-name>LoginServlet</display-name>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>com.servlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/LoginServlet</url-pattern>
</servlet-mapping>
简单的新闻发布系统--登录
最新推荐文章于 2022-03-29 23:13:46 发布