Servlet<4>
2014-11-25 16:37
148 查看
下午弄了一下午这个登录 蛋疼的要死= =不过最好还是成功了 = =
用的是mysql的数据库 账号root 密码root
建db_jsp userName password
model
util
web
xml
jsp文件
login.jsp
main.jsp
用的是mysql的数据库 账号root 密码root
建db_jsp userName password
model
package com.ruanku.model; public class User { private int id; private String userName; private String password; public User() { super(); // TODO Auto-generated constructor stub } public User(String userName, String password) { super(); this.userName = userName; this.password = password; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }dao
package com.ruanku.dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import com.ruanku.model.User; public class UserDao { public User login(Connection con,User user)throws Exception{ User resultUser=null; String sql="select * from t_user where userName=? and password=?"; PreparedStatement pstmt=con.prepareStatement(sql); pstmt.setString(1, user.getUserName()); pstmt.setString(2, user.getPassword()); ResultSet rs=pstmt.executeQuery(); if(rs.next()){ resultUser=new User(); resultUser.setUserName(rs.getString("userName")); resultUser.setPassword(rs.getString("password")); } return resultUser; } }
util
package com.ruanku.util; import java.sql.Connection; import java.sql.DriverManager; public class DbUtil { private String dbUrl="jdbc:mysql://localhost:3306/db_jsp"; private String dbUserName="root"; private String dbPassword="root"; private String jdbcName="com.mysql.jdbc.Driver"; public Connection getCon()throws Exception{ Class.forName(jdbcName); Connection con=DriverManager.getConnection(dbUrl, dbUserName, dbPassword); return con; } public void closeCon(Connection con)throws Exception{ if(con!=null){ con.close(); } } public static void main(String[] args) { DbUtil dbUtil=new DbUtil(); try { dbUtil.getCon(); System.out.println("连接成功"); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
web
package com.ruanku.web; import java.io.IOException; import java.sql.Connection; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import com.ruanku.dao.UserDao; import com.ruanku.model.User; import com.ruanku.util.DbUtil; public class LoginServlet extends HttpServlet{ /** * */ private static final long serialVersionUID = 1L; DbUtil dbUtil=new DbUtil(); UserDao userDao=new UserDao(); @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doPost(request, response); } @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String userName=request.getParameter("userName"); String password=request.getParameter("password"); Connection con=null; try { User user=new User(userName,password); con=dbUtil.getCon(); User currentUser=userDao.login(con, user); if(currentUser==null){ request.setAttribute("error", "用户名或密码错误"); request.setAttribute("userName", userName); request.setAttribute("password", password); request.getRequestDispatcher("login.jsp").forward(request, response); }else{ HttpSession session=request.getSession(); session.setAttribute("currentUser", currentUser); response.sendRedirect("main.jsp"); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
xml
<servlet> <servlet-name>loginServlet</servlet-name> <servlet-class>com.ruanku.web.LoginServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>loginServlet</servlet-name> <url-pattern>/login</url-pattern> </servlet-mapping>
jsp文件
login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <form action="login" method="post"> <table> <tr> <th colspan="2">用户登录</th> </tr> <tr> <td>用户名:</td> <td><input type="text" id="userName" name="userName" value="${userName }"/></td> </tr> <tr> <td>密码:</td> <td><input type="password" id="password" name="password" value="${password }"/></td> </tr> <tr> <td><input type="submit" value="登录"/></td> <td><font color="red">${error }</font></td> </tr> </table> </form> </body> </html>
main.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> 主页!当前登录用户:${currentUser.userName } </body> </html>
相关文章推荐
- javax.servlet.jsp.JspTagException: Don't know how to iterate over supplied "items" in <forEach>
- php+js+mysql设计的仿webQQ-<4>登陆和注册
- LINUX块设备驱动<4>
- servlet查询所有消息"List<Message>",并跳转到页面"messageList.jsp"进行显示
- 【Java.Web】Servlet/Filter中的 <url-pattern>
- web.xml中出现<servlet-name>default</servlet-name>是什么意思?
- javax.servlet.jsp.JspTagException: Don't know how to iterate over supplied "items" in &lt;forEach&gt
- u-boot-2010.06在TQ2440上的移植<4>--支持nandflash启动
- Box2d源码学习<4>数学库API的实现
- <bean id="ViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
- <mvn:default-servlet-handler/>标签作用
- Java笔记7 Java基础加强<4>泛型
- Hello Dojo ! 开始学习Dojo <4>
- 关于servlet服务端接收客户端发送的List<?>数据的问题
- Socket:java与C之间的文件传送<4>(JAVA与C通信)
- <jsp:include> 嵌套Servlet请求,导致Stream closed异常
- c语言深入理解<4>
- Servlet<1>
- Invalid <url-pattern> in servlet mapping
- 品茶看<Servlet&JSP>-EL表达式