会议室预约系统遇到的问题

最近在做一个会议室预约系统,这个系统是我系统完成的第一个项目,目前算是基本完工了吧,这两个星期遇到了各种各样的问题,下面就用博客记录下来,让大家也一起学习一下。

  1. 首先,我们在使用input标签提交form表单的时候一定要记得写name属性,而且name属性最好的写法就是和你的javabean中的各属性名称一样,(当然,javabean中的属性变量是要和对应数据库中的字段名一样);
  2. 其次在自动登录这里,我将数据存入了cookie,但是退出时一定要记得清空cookie;
  3. 其次在登录成功之后最好使用转发而不是用重定向,这是要考虑到安全性的问题,当然,这也是因为我没有设置在未登录的状态下不能预约会议室。
//这里是将用户数据存入cookie
if (autoLogin != null) {
    // 对中文进行编码
    String username_code = URLEncoder.encode(username, "UTF-8");
    Cookie cookie_username = new Cookie("cookie_username", username_code);
    Cookie cookie_password = new Cookie("cookie_password", password);
    // 设置cookie的持久化时间
    cookie_username.setMaxAge(1000 * 60 * 60);
    cookie_password.setMaxAge(1000 * 60 * 60);
    // 设置cookie的携带路径
    cookie_username.setPath(request.getContextPath());
    cookie_password.setPath(request.getContextPath());
    // 发送cookie
    response.addCookie(cookie_username);
    response.addCookie(cookie_password);
}
//这里是清除cookie
// 获得cookie中用户名和密码 进行登录的操作
    String cookie_username = null;
    String cookie_password = null;
    // 获得cookie
    if (cookies != null) {
    for (Cookie cookie : cookies) {
        cookie = new Cookie(cookie.getName(), null);
        cookie.setMaxAge(0);
        cookie.setPath(request.getContextPath());
        response.addCookie(cookie);
        // 获得名字是cookie_username和cookie_password
        if ("cookie_username".equals(cookie.getName())) {
            cookie_username = cookie.getValue();
         }
        if ("cookie_password".equals(cookie.getName())) {
            cookie_password = cookie.getValue();
         }
}
<input 
    type="date" name="date" 
    value="<%out.print(new java.text.SimpleDateFormat("yyyy-MM-dd").format(new Date()));%>"
    min="<%out.print(new java.text.SimpleDateFormat("yyyy-MM-dd").format(new Date()));%>"
    style="border-style: none none solid none; background-color: transparent;">

 以上的input标签内是使用了date的插件,这个value值就会在页面上显示当前的日期,min属性设置了最小可以选择的日期。

在弹框显示alert()方面还是设置了一个技巧的,就是当预订成功之后,在session中存储一个status值success,失败存储fail,已经有人预订成功则存储timerefuse,那么每次跳到页面的时候就会显示相应的信息,当然,弹框结束之后是要清除session的!!!

其次,我觉得在最重要的最头疼的还是linux的tomcat以及mysql总是出问题,比如我在将tomcat中的文件拖出来之后在放回去其实是更改了文件的权限,这样是不对的,最好的方法就是用记事本直接打开然后ctrl+a全部复制到notepad++中去修改,修改完之后在全部复制回来。

这里我需要记录一下,linux查看哪些端口被占用的方法:netstat -tunlp | grep 端口号;

接下来就是说mysql了,关于mysql的乱码问题解决方法,就是进入mysql后,先用show variables like ' character_set_%';看一下服务器端的默认编码格式,如果为latin1,那么久要改成utf-8了;网上有很多教程,但是我发现当时我装mysql的时候就没有my.ini等一系列文件,所以我就尝试了一下,使用 vi /usr/my.cnf进行修改,在里面强行加了[client]和[mysql],(当时里面只有一个[mysqld]),然后在[client]写入default-character-set=utf8(没有加“;”号),在[mysql]下面加入no-auto-rehash,default-character-set=utf8  两行;在[mysqld]下面加入character-set-server=utf8,这样我的mysql就可以正常读取数据库了。

 另外,在建立数据库这里,要使用到外键,这个其实还是很麻烦的。

这次我感觉最烦的还是前端的东西不够熟练,网页的框架是从网上找的,但是后期要改他的格式就很费劲,调了近一个星期的js和css。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值