码迷,mamicode.com
首页 > 其他好文 > 详细

Servlet实现简单的登录页面

时间:2017-04-26 22:56:51      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:private   错误   static   serial   uid   protected   tac   方法   编码   

  1 package emp;
  2 
  3 import java.io.IOException;
  4 import java.io.PrintWriter;
  5 import java.sql.Connection;
  6 import java.sql.PreparedStatement;
  7 import java.sql.ResultSet;
  8 import java.sql.SQLException;
  9 
 10 import javax.servlet.ServletException;
 11 import javax.servlet.http.HttpServlet;
 12 import javax.servlet.http.HttpServletRequest;
 13 import javax.servlet.http.HttpServletResponse;
 14 
 15 import util.DBUtil;
 16 
 17 public class EmpServlet extends HttpServlet {
 18     private static final long serialVersionUID = 1L;
 19     private Connection conn;
 20     private PrintWriter pw;
 21     private String username1;
 22     private String password1;
 23 
 24     protected void doGet(HttpServletRequest request, HttpServletResponse response)
 25             throws ServletException, IOException {
 26 
 27     }
 28 
 29     protected void doPost(HttpServletRequest request, HttpServletResponse response)
 30             throws ServletException, IOException {
 31         //设置解码所使用的字符集,注意要与客户端保持一致
 32         request.setCharacterEncoding("utf-8");
 33         //告诉浏览器,服务器返回的数据类型和编码格式(通过设置content-type消息头的值)
 34         response.setContentType("text/html;charset=utf-8");
 35         //调用request对象提供的方法来读取请求参数值
 36         String name = request.getParameter("username");
 37         String passw = request.getParameter("password");
 38         try {
 39             //使用JDBC工具类来获取Connection对象
 40             conn = DBUtil.getConnection();
 41             //通过response(响应对象)获得一个输出流
 42             pw = response.getWriter();
 43             String sql = "select username,password from user_zyd where username=?";
 44             PreparedStatement ps = conn.prepareStatement(sql);
 45             //给sql赋值
 46             ps.setString(1, name);
 47             //查询返回的结果集(是一个集合)
 48             ResultSet rs = ps.executeQuery();
 49             while (rs.next()) {
 50                 //获取用户查询数据库的内容
 51                 username1 = rs.getString("username");
 52                 password1 = rs.getString("password");
 53                 System.out.println(username1);
 54                 System.out.println(password1);
 55                 //判断用户查询的内容是否正确
 56             }
 57             if (username1==null) {
 58                 pw.println("用户名或密码错误");
 59             } else if(username1.equals(name) & password1.equals(passw)){
 60                 pw.println("用户名或密码错误");
 61             } else {
 62                 pw.println("登陆成功");
 63             }
 64         } catch (SQLException e) {
 65             e.printStackTrace();
 66         } finally {
 67             DBUtil.close(conn);
 68             pw.close();
 69         }
 70     }
 71 }
 72 //db.properties
 73 # connection parameters
 74 driver=oracle.jdbc.driver.OracleDriver
 75 url=jdbc:oracle:thin:@localhost:1521:xe
 76 user=system
 77 password=123456
 78 # datasouce parameters
 79 initSize=1
 80 maxSize=2
 81 
 82 //DBUtil
 83 package util;
 84 
 85 import java.io.IOException;
 86 import java.sql.Connection;
 87 import java.sql.SQLException;
 88 import java.util.Properties;
 89 
 90 import org.apache.commons.dbcp.BasicDataSource;
 91 
 92 public class DBUtil {
 93     private static BasicDataSource ds;
 94     static {
 95         Properties p = new Properties();
 96         try {
 97             p.load(DBUtil.class.getClassLoader().getResourceAsStream("db.properties"));
 98             String driver = p.getProperty("driver");
 99             String url = p.getProperty("url");
100             String user = p.getProperty("user");
101             String password = p.getProperty("password");
102             String initSize = p.getProperty("initSize");
103             String maxSize = p.getProperty("maxSize");
104             ds = new BasicDataSource();
105             ds.setDriverClassName(driver);
106             ds.setUrl(url);
107             ds.setUsername(user);
108             ds.setPassword(password);
109             ds.setInitialSize(Integer.parseInt(initSize));
110             ds.setMaxActive(Integer.parseInt(maxSize));
111         } catch (IOException e) {
112             e.printStackTrace();
113             throw new RuntimeException(e);
114         }
115     }
116 
117     public static Connection getConnection() throws SQLException {
118         return ds.getConnection();
119     }
120 
121     public static void close(Connection conn) {
122         if (conn != null)
123             try {
124                 conn.close();
125             } catch (SQLException e) {
126                 e.printStackTrace();
127                 throw new RuntimeException(e);
128             }
129     }
130 }
  技术讨论:QQ:985851196

 

Servlet实现简单的登录页面

标签:private   错误   static   serial   uid   protected   tac   方法   编码   

原文地址:http://www.cnblogs.com/genhao/p/6771374.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!