发表于: 2017-09-21 23:44:05

1 774


今天完成的事情:准备了端口方面的小课堂

         研究了mysql的编码设置

         复习了linux的一些命令

         调整了任务五的代码 

//判断当前账号是否注册
@Override
public boolean checkUser(String username) throws Exception{
User user = (User) userDao.getUserByUsername(MD5Util.getMd5(username));
   return user != null;
}

//账号和密码都加密存到User表中
@Override
public void register(String username,String pwd) throws Exception{
User user = new User();
   user.setUsername(MD5Util.getMd5(username));
   user.setPassword(MD5Util.getMd5(pwd));
   user.setCreate_at(System.currentTimeMillis());
   user.setLogin_at(System.currentTimeMillis());
   userDao.addUser(user);
}

//判断当前用户输入的密码是否正确
@Override
public boolean checkPwd(String username,String pwd) throws Exception{
return MD5Util.getMd5(pwd).equals(userDao.getPasswordByName(MD5Util.getMd5(username)));
}

//当输入的用户账号存在且密码正确时,更新登录时间
@Override
public void login(String username) throws Exception{
User user = (User) userDao.getUserByUsername(MD5Util.getMd5(username));
   user.setLogin_at(System.currentTimeMillis());
   userDao.updateLogin_atByUser(user);
}
/**
* @Description RESTful的URL,方法是POST
* @return  跳到登录页
*/
@RequestMapping(value = "/login",method = RequestMethod.GET)
public String toLogin(){
return "login";
}

@RequestMapping(value = "/login",method = RequestMethod.POST)
public String login(HttpServletRequest request, HttpServletResponse response,
                   @Param("username")String username, @Param("password")String pwd)
throws Exception{
//把上一页的存到字符串 fulUrl 中
   String fullUrl = request.getHeader("Referer");
   request.getSession().setAttribute("path",fulUrl);

   //当输入的账号存在且密码正确时,更新当前用户的登录时间
   if(userService.checkUser(username)){
if(userService.checkPwd(username,password)){

//使用session认证
          AutoAuthenticate.sessionAuthenticate(request);
          return "redirect:/u/job";
      }else{
request.getSession().setAttribute("info","密码错误");
          request.getSession().setMaxInactiveInterval(1);
          return "redirect:"+fullUrl;
      }
}else{
request.getSession().setAttribute("info","账号不存在,请先注册");
       request.getSession().setMaxInactiveInterval(1);
       return "redirect:"+fulUrl;
   }
}

明天计划的事情:优化完成 任务五代码 提交任务五

遇到的问题:mysql 5.1的版本 与之后的版本 很多命令不一样

收获:

 Netstat 命令 以下参数是windows下  而 linux下更加复杂
  显示协议统计和当前的 TCP/IP 网络连接。该命令只有在安装了 TCP/IP 协议后才可以使用。
  netstat [-a] [-e] [-n] [-s] [-p protocol] [-r] [interval]
  参数
   -a 显示所有连接和侦听端口。服务器连接通常不显示。
  -e   显示以太网统计。该参数可以与 -s 选项结合使用。
  -n以数字格式显示地址和端口号(而不是尝试查找名称)。
  -s显示每个协议的统计。默认情况下,显示 TCP、UDP、ICMP 和 IP 的统计。-p 选项可以用来指定默认的子集。 
  -p protocol显示由 protocol 指定的协议的连接;protocol 可以是 tcp 或 udp。如果与 -s 选项一同使用显示每个协议的统计,protocol 可以是 tcp、udp、icmp 或 ip。
  -r显示路由表的内容。

  interval重新显示所选的统计,在每次显示之间暂停 interval 秒。按 CTRL+B 停止重新显示统计。如果省略该参数,netstat 将打印一次当前的配置信息。

telnet 命令 :telnet命令用于登录远程主机,对远程主机进行管理。telnet因为采用明文传送报文,安全性不好,很多Linux服务器都不开放telnet服务,而改用更安全的ssh方式了。但仍然有很多别的系统可能采用了telnet方式来提供远程登录,因此弄清楚telnet客户端的使用方式仍是很有必要的。

-8:允许使用8位字符资料,包括输入与输出; -a:尝试自动登入远端系统; -b<主机别名>:使用别名指定远端主机名称; -c:不读取用户专属目录里的.telnetrc文件; -d:启动排错模式; -e<脱离字符>:设置脱离字符; -E:滤除脱离字符; -f:此参数的效果和指定"-F"参数相同; -F:使用Kerberos V5认证时,加上此参数可把本地主机的认证数据上传到远端主机; -k<域名>:使用Kerberos认证时,加上此参数让远端主机采用指定的领域名,而非该主机的域名; -K:不自动登入远端主机; -l<用户名称>:指定要登入远端主机的用户名称; -L:允许输出8位字符资料; -n<记录文件>:指定文件记录相关信息; -r:使用类似rlogin指令的用户界面; -S<服务类型>:设置telnet连线所需的ip TOS信息; -x:假设主机有支持数据加密的功能,就使用它; -X<认证形态>:关闭指定的认证形态。

也可以telnet 主机名 端口号 测端口是否开放

/etc/services 是保存的端口记录文件

查看mysql编码情况:进入控制台,输入:show variables like "character_set_%";

设置相应的编码为utf8:SET character_set_client = utf8;

最好的办法还是更改配置文件 my.ini (my.conf)

任务开始时间:9.15

         预计完成时间:9.20

         是否有延期风险:延期两天

禅道链接:http://task.ptteng.com/zentao/my-task.html




返回列表 返回列表
评论

    分享到