这是在自己看着视频所作的一些随堂感悟吧。。。

1..画图来使下一步代码实现的功能清晰,即功能分析

2.jsp动态网页技术,在客户端浏览器上要显示的内容,里面包含了.css样式,.js对应的事件请求和相应。对于自己编写的servlet的程序要部署到web.xml文件上。固定格式为:

<servlet> 

     <servlet-name>UserServlet</servlet-name> 

     <servlet-class>cn.lms.goods.user.web.servlet.UserServlet</servlet-class> 

   </servlet> 



   <servlet-mapping> 

     <servlet-name>UserServlet</servlet-name> 

     <url-pattern>/UserServlet</url-pattern> 

   </servlet-mapping>



3.注册信息模块功能分析: 1.表单校验:1.自身校验:1.输入框得到焦点,隐藏错误信息2.输入框失去焦点,进行校验3.提交时进行所有输入框校验


    2.需要访问服务器,后台服务器的校验:1.用户名是否注册 2.Email是否注册 3.验证码是否正确


4.$("").hover( function() {} )网页加载完毕后所发生的事件


5.访问数据库,需要Servlet程序,连接上JDBC,


6. .jsp里面包括了表单要提交给的Servlet程序,以及CSS对表单的装饰,还有.js对于页面的一些事件的响应和Servlet返回的一些数据的响应。.jsp表单里的东西提交给数据库。然后Servlet连接数据库。


根据服务器返回的值,在客户端判断是否已注册。


7.$.ajax({ 

url:"/goods/UserServlet",//要请求的Servlet 

data:{method:"ajaxValidateLoginname",loginname:value},//给服务器的参数 

type:"POST", 

dataType:"json", 

async:false,//是否异步请求,如果是异步,即async:true,那么不会等服务器返回,我们这个函数就向下运行了。 

cache:false, 

success:function(result) {//result服务器的返回的结果 

if(!result) { 

$("#" + id + "Error").text("用户名已存在!"); 

showError($("#" + id + "Error")); 

false; 

} 

}


8.在服务器上运行的是后端,在客户端运行的是前端


9.在myeclipse界面,摁下alt, shift还有s会出来一些方法的构造


10.UserDao相当于SQL,用来查询数据库的内容。UserService根据UserDao查询出来的对象来操作。接收客户端的请求及相应客户端的请求


11.当再次输入用户名之类的时会出现下拉框,这是因为之前输入的在之前的cookie里面有记录,写一个javascript来调去cookie里的内容来再次显示出来即可


12.UserDao是从数据库里拿东西,完成一些具体的实现方法,UserService调用UserDao具体的方法完成一些业务逻辑,像修改密码等等,UserServlet是往数据库中添加新用户


13.各个类经常使用的方法:自己重新定义了一个exception:  UserException.java


UserDao.java  sql语句:查找,修改。 

UserService.java  一般是调用UserDao中定义的方法 

UserServlet.java   CommonUtils.toBean(req.getParameterMap(), User.class);封装表单数据到user这个类中 

  User user = (User)req.getSession().getAttribute("sessionUser");从当前session中获取当前的用户名 

  req.setAttribute("msg", "您还没有登录!");响应客户端的请求,返回错误信息 

  return "f:/jsps/user/login.jsp";从定向到相对路径下的login.jsp网页 

  调用UserService中的方法 

  req.getSession().invalidate(); 

  Cookie cookie = new Cookie("loginname", loginname); 

  cookie.setMaxAge(60 * 60 * 24 * 10);//保存10天