JSP/Servlet/JDBC完成一个简单登录功能_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 1911 | 回复: 0   主题: JSP/Servlet/JDBC完成一个简单登录功能        下一篇 
zhe.wan
注册用户
等级:上尉
经验:568
发帖:20
精华:0
注册:1970-1-1
状态:离线
发送短消息息给zhe.wan 加好友    发送短消息息给zhe.wan 发消息
发表于: IP:您无权察看 2015-6-30 11:30:20 | [全部帖] [楼主帖] 楼主

JSP/Servlet/JDBC完成一个简单登录功能

JSP部分:

<form action="login" name="loginForm" method="post">
<table align="center">
<tr>
<td>用户名</td>
<td><input type="text" name="uname" /></td>
</tr>
<tr>
<td>密  码</td>
<td><input type="password" name="upwd" size="21" /></td>
</tr>
<tr>
<td><input type="submit" value=" 登录 " /></td>
<td><input type="button" value=" 注册 " click="window.location.href='reg.jsp'"/>
<font color="red"><%=request.getAttribute("error")==null ? "" : request.getAttribute("error")%></font>
</td>
</tr>
</table>
</form>


Xml部分:

<servlet>
<description>This is the description of my J2EE component</description>
<display-name>This is the display name of my J2EE component</display-name>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>com.jsp.servlet.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>


Servlet部分:

request.setCharacterEncoding("gbk");
response.setContentType("text/html;charset=gbk");
//获取用户名和密码
String uname = request.getParameter("uname");
String upwd = request.getParameter("upwd");
System.out.println(uname+" "+upwd);
//访问数据库
UserDao userdao = new UserDao();
User user = userdao.QueryByName(uname);
if(user==null){
      request.setAttribute("error","用户名不存在");
      request.getRequestDispatcher("/login.jsp").forward(request, response);
}else if(!user.getPwd().equals(upwd)){
      request.setAttribute("error","密码错误");
      request.getRequestDispatcher("/login.jsp").forward(request, response);
}else{
List<User> userList = userdao.QueryList();
//将登录用户名 与 用户列表存入request作用域
request.setAttribute("uname",uname);
request.setAttribute("userList",userList);
request.getRequestDispatcher("/main.jsp").forward(request, response);
}


Dao部分:

public User QueryByName(String uname) {
      User user =null;
      String sql = "select * from inf where name='"+uname+"'";
      try {
            conn=DBConnection.getConnection();
            stmt=conn.createStatement();
            rs=stmt.executeQuery(sql);
            if(rs.next()){
                  user = new User();
                  user.setId(rs.getInt(1));
                  user.setName(rs.getString(2));
                  user.setPwd(rs.getString(3));
                  user.setAge(rs.getInt(4));
                  user.setGender(rs.getString(5));
            }
      } catch (SQLException e) {
            e.printStackTrace();
      } finally{
      DBConnection.closeAll(rs, null, stmt);
}
return user;
}


DBconnection部分:

public static void init() {
      try {
            // 加载驱动类
            Class.forName("com.mysql.jdbc.Driver");
      } catch (ClassNotFoundException e) {
            e.printStackTrace();
            System.out.println("未找到驱动类...");
      }
      try {
            conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/wz", "root", "");
      } catch (SQLException e) {
            e.printStackTrace();
            System.out.println("数据库内部错误,请检查...");
      }
}




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论