开学第一周
这是开学第一周,按照老样子王老师还是对我们进行了测试,开始拿到题目时,看到登录、注册,心想这次应该能做了吧,因为自己以前也做过,结果是要我们用老师给的html模板,当时觉得也没什么,因为jsp和html很像,结果却不是这样子,我因为着急基本上没看懂,后来又开始用自己的模板做,最后还是用老师给的模板做的,最大的错误就是没有坚持一个。
下课的我也是深刻的反省自己,自己好好理了理思路,最后问了同学才基本上把jsp+servlet运行的流程弄明白了,后来每天都坚持编程,最后根据自己自己的努力吧,把该系统的结构弄清楚了,自己把注册和登录的代码写完了,虽然写的慢,但是确实是学到了很多,我也开始重视servlet了,虽然是没有做出来,但是能进步就是最好的。
下面就是我写的代码:
dengluServlet.java
package servlet; import java.io.IOException; import javax.security.auth.message.callback.PrivateKeyCallback.Request; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.jasper.tagplugins.jstl.core.Out; import dao.Dao; import entity.User; /** * Servlet implementation class Login */ @WebServlet("/dengluServlet") public class dengluServlet extends HttpServlet { protected void service(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException { req.setCharacterEncoding("utf-8");//设置字符集 String name= req.getParameter("user"); String password= req.getParameter("pwd"); User user=new User(); user.setName(name); user.setPassword(password); Dao userdao = new Dao(); int flag = userdao.login(user);//执行Userdao里面的login方法判断登录的用户名密码是否正确 if(flag==1) { req.getRequestDispatcher("main.html").forward(req,resp); } else { req.setAttribute("message", "登录失败"); req.getRequestDispatcher("login.html").forward(req,resp); } }//获取jsp界面的method参数来判断执行什么方法 private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */
Login.java
package servlet; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import dao.Dao; import entity.User; /** * Servlet implementation class Login */ @WebServlet("/zhu/Login") public class Login extends HttpServlet { public void service(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException { req.setCharacterEncoding("utf-8");//设置字符集 String method= req.getParameter("method");//获取jsp界面的method参数来判断执行什么方法 if(method.equals("register")) { register(req,resp); } } private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public Login() { super(); // TODO Auto-generated constructor stub } public void register(HttpServletRequest req,HttpServletResponse resp)throws ServletException,IOException { String name = req.getParameter("name"); String password = req.getParameter("password"); String phonenumber = req.getParameter("phonenumber"); String danwei = req.getParameter("danwei"); Dao dao=new Dao(); User user=new User(); user.setName(name); user.setPassword(password); user.setPhonenumber(phonenumber); user.setDanwei(danwei); if(dao.adduser(user)) { req.setAttribute("message", "注册成功"); req.getRequestDispatcher("zhuce.jsp").forward(req,resp); } else { req.setAttribute("message", "注册失败"); req.getRequestDispatcher("zhuce.jsp").forward(req,resp); } } } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */
zhuce.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="GBK"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="GBK">
<title>注册页面</title>
</head>
<body>
<form action="Login?method=register" name="form1" method="post" onsubmit="return check()">
<h1>注册界面</h1>
<div>
用户姓名<input type="text" name="name"/>
</div>
<div>
用户密码<input type="text" name="password"/>
</div>
<div>
用户密码<input type="text" name="password1"/>
</div>
<div>
手机号码<input type="text" name="phonenumber"/>
</div>
<div>
用户单位<input type="text" name="danwei"/>
</div>
<div>
<input type="submit" value="注册"/>
<input type="reset" value="重置"/>
</div>
</form>
<script type="text/javascript">
function check() {
if(document.form1.name.value==""){
alert("请输入用户名");
return false;
}
if(document.form1.password.value==""){
window.alert("请输入用户密码");
return false;
}
if(document.form1.password1.value==""){
window.alert("请输入密码确认");
return false;
}
//检验密码与确认密码是否一致
if(document.form1.password1.value!=document.form1.password.value){
window.alert("您两次输入的密码并不相同");
return false;
}
if(document.form1.danwei.value==""){
window.alert("请输入所属单位");
return false;
}
return true;
}
</script>
<%
Object message = request.getAttribute("message");
if(message!=null && !"".equals(message)){
%>
<script type="text/javascript">
alert("<%=request.getAttribute("message")%>");
</script>
<%} %>
</body>
</html>
浙公网安备 33010602011771号