> ><%=ub.getUserId() ><%=ub.getU ser name() ><%= ub.get PasswdO ><%= ub.getGrade() %x/ td > %x/ td > %> td > %> td > tr > <% } %> table >< br > center > body > html > 三、Model模型部分 UserBea n.java p ackage com.li.model; private int userid ; private Stri ng user name private Stri ng passwd ; private int grade ; public int getUserId() { retu rn userid p ublic class UserBea n { } public this } public void setUserId( int userid) { .userid = userid; Stri ng getUser name() { retu rn user name ; } public this } public void setUsername(Stri ng user name) { .user name = user name; return } Stri ng get Passwd() { passwd ; public this } public return } p ublic void setGrade( int grade) { this . grade = grade; } UserBea nDao.java p ackage com.l i.model; import java.sql.*; import java.util.*; p ublic class UserBea nDao { p rivate Stateme nt sm = n ull; p rivate ResultSet rs = n ull; p rivate Connection ct = n ull; p rivate int p ageCo unt = 0; p rivate int rowCo unt = 0; p rivate int p ageSize = 3; public void close() { II 关闭各种打开的资源 try { if (rs != n ull) { rs.close(); rs = n ull; } if (sm != n ull) { sm.close(); sm = n ull; } if (ct != n ull) { ct.close(); ct = null; } } catch (Exce pti on e) { e.prin tStackTrace();// 打印异常,以便修改 } } p ublic ArrayList getUserList() { ArrayList al = new ArrayList(); try { ct = new Co nn DB().getCo nn(); sm = ct.createStateme nt(); rs = sm.executeQuery("select * from users"); while (rs.n ext()) { void set Passwd(Stn ng p asswd) { .passwd = passwd; int getGradeO { grade ; UserBea n ub = new UserBea n(); ub.setUserld(rs.getl nt(1)); ub.setUser name(rs.getStri ng(2)); ub.set Passwd(rs.getStri ng(3)); ub.setGrade(rs.getI nt(4)); al.add(ub); // 将al 放到arrayList 中 } catch (Exce pti on e) { e.prin tStackTrace(); } fin ally { this.close(); } return al; } p ublic boolea n checkUser(Stri ng u, String p) { boolea n b = false; try { ct = new ConnDB().getConn();// 获取ConnDB 中的方法,操作数据库sm = ct.createStateme nt(); rs = sm.executeQuery("select p asswd from users where user name="' + u + "”'); if (rs. next()) { if (rs.getStri ng(1).equals( p)) { b = true; } } } catch (Exce pti on e) { e.prin tStackTrace(); } fin ally { //关闭各种打开的资源,释放内存 this.close(); } return b; Conn DB.java p ackage com.li.model; import java.sql.*; public p rivate 四、Controller 部分 Log in CheckServlet.java p ackage com.l i.c on troller; import java.i o.IO Exce pti on; import java.io .Prin tWriter; import java.util.ArrayList; import javax.servlet.ServletExce ptio n; import javax.servlet.htt p. Htt pServlet; import javax.servlet.htt p. Htt pServletRequest; import javax.servlet.htt p. Htt pServletRes ponse; import com.li.model.*; p ublic class Logi nCheckServlet exte nds Http Servlet { p ublic void doGet(Htt pServletRequest request, Htt pServletRes ponse response) throws ServletExce pti on, I OExce pti on { //得到用户名和密码 String u=request.get Parameter("user name"); String p=request.get Parameter(" passwd"); //使用模型,完成验证 UserBea nDao ubdao=new UserBea nDao(); request.setAttribute(" un ame", u); if(ubdao.checkUser(u, p)){ II 在跳转到wel.jsp request.getRequestDis patcher("wel.js p").forward(request,res pon se); }else{ request.getRequestDis patcher("lo nin.jsp ”).forward(request,res pon se); } class ConnDB { Conn ecti on Ct =n ull
|