B/S结构的系统,JSP/Servlet,没用框架,linux+mysql+Tomecat6.0,本人是学生,开发中遇到了以下困惑的问题,希望有经验者可以三言两语点醒一下!1、对用户操作间隔过久,在用户下次请求时,提示用户重新登录。
   我暂时的做法是,在用户登录后用session来保存用户当前的操作时间operateTime,然后在/*的过滤器中,每次都检验当前时间与session中保存时间的差值,如果大于规定间隔,则将保存用户操作权限的session,remove掉,否则将当前时间重新赋给operateTime。
    这样做基本能实现功能了,但是发现用户每点一个链接,都会向服务器发送多个请求(包括图片、js文件、css文件等),而这些请求都会经过过滤器,每次都会进行校验,效率不高,而且这样频繁的修改session值,对系统有什么影响吗?
    请大家说说看法,有什么更好的做法吗?
2、对于系统的版本信息、修改时间、公司等信息是如何保存的啊,是用xml文件吗?用properties文件可以吗?我想知道怎样做才是规范的做法。还有,诸如问题1所说的操作间隔时间的规定也应当是保存在文件中的,如何保存更规范?而且是希望能在前台做修改的,我现在用的是properties文件保存。
   3、软件更新问题。比如系统添加了新的功能,如何让用户更新(包括自动和手动)?更新包文件应当是什么类型的,包括什么内容,用户下载更新包后如何运行更新包达到更新的目的?(更新的内容可能包括新添加了页面或修改了页面,数据库中新增了数据等等)
4、如何快速的部署系统。系统用的是linux+mysql+Tomecat6.0,我们的代码是写了之后统一发到服务器上的,现在问题是,假如新来了一台服务器(linux系统),要怎样快速部署我们的工程,是需要我们一个个的安装mysql、Tomcat6.0、部署java的环境变量吗?这样系统移植起来比较麻烦,有什么快速的方法,比如像程序安装一样,双击一下就可以给我们安装好mysql、Tomcat并自动部署好工程,这样的需求可以实现吗?大家在公司中的规范做法又是怎么样的呢?
以上列出的问题,希望各位都能看一看,这些都不是什么难题,可是由于本人缺乏开发经验,不知道如何做才是个规范,怎样才是比较优化的做法,别BS我啊,呵呵~。这些问题问题并不需要全部回答,哪个问题有些个人看法都可以说说,有经验的说说自己的经验更好!请多表达出你的想法,也许你的三言两语会对我又极大的启示,极大的帮助!先谢谢各位了!

解决方案 »

  1.   


    1、对用户操作间隔过久,在用户下次请求时,提示用户重新登录。
      我暂时的做法是,在用户登录后用session来保存用户当前的操作时间operateTime,然后在/*的过滤器中,每次都检验当前时间与session中保存时间的差值,如果大于规定间隔,则将保存用户操作权限的session,remove掉,否则将当前时间重新赋给operateTime。
        这样做基本能实现功能了,但是发现用户每点一个链接,都会向服务器发送多个请求(包括图片、js文件、css文件等),而这些请求都会经过过滤器,每次都会进行校验,效率不高,而且这样频繁的修改session值,对系统有什么影响吗?
        请大家说说看法,有什么更好的做法吗?
    可以在web.xml里面设置session的超时信息的。或者是tomcat里面的server.xml,可以设置session的有效时间的2、对于系统的版本信息、修改时间、公司等信息是如何保存的啊,是用xml文件吗?用properties文件可以吗?我想知道怎样做才是规范的做法。还有,诸如问题1所说的操作间隔时间的规定也应当是保存在文件中的,如何保存更规范?而且是希望能在前台做修改的,我现在用的是properties文件保存。
     
    你搞个CVS吧。3、软件更新问题。比如系统添加了新的功能,如何让用户更新(包括自动和手动)?更新包文件应当是什么类型的,包括什么内容,用户下载更新包后如何运行更新包达到更新的目的?(更新的内容可能包括新添加了页面或修改了页面,数据库中新增了数据等等)每次你直接给新的war包以及对应的sql的脚本便可。4、如何快速的部署系统。系统用的是linux+mysql+Tomecat6.0,我们的代码是写了之后统一发到服务器上的,现在问题是,假如新来了一台服务器(linux系统),要怎样快速部署我们的工程,是需要我们一个个的安装mysql、Tomcat6.0、部署java的环境变量吗?这样系统移植起来比较麻烦,有什么快速的方法,比如像程序安装一样,双击一下就可以给我们安装好mysql、Tomcat并自动部署好工程,这样的需求可以实现吗?大家在公司中的规范做法又是怎么样的呢?你写个ant脚本,我们从编译到发布都是用ant脚本实现。 ant脚本打war包,然后调用ftp上传war包,然后telnet重启tomcat......以上列出的问题,希望各位都能看一看,这些都不是什么难题,可是由于本人缺乏开发经验,不知道如何做才是个规范,怎样才是比较优化的做法,别BS我啊,呵呵~。这些问题问题并不需要全部回答,哪个问题有些个人看法都可以说说,有经验的说说自己的经验更好!请多表达出你的想法,也许你的三言两语会对我又极大的启示,极大的帮助!先谢谢各位了!
      

  2.   

    呵呵,1楼的果然有经验!
    对问题1,web.xml文件里设置的session超时时间是指用户的操作间隔时间吗?还是就是从用户登录开始计时的时间?
      

  3.   

    1 对用户操作间隔过久,在用户下次请求时,提示用户重新登录
    应该这样啊,难道...
    你可以在web.xml里面设置session的超时值,比如设置为999999 我想就可以不超时了.2、对于系统的版本信息、修改时间、公司等信息是如何保存
    这个随便了,反正是一次性的,又不会经常改。3、软件更新问题。
    这个根据情况了,特别是数据库,一不小心用户的数据就可能丢失。
      

  4.   


    呵呵,从开始学习java(09年2月开始接触java),来到csdn就一直看到老紫竹的身影,还有许多精彩的博客、留言,很是佩服啊!很荣幸能看到老紫竹给我的留言!
    嗯,不过我没明白你对问题1的看法呢~~
    问题2,版本更新的话,应该会有修改吧,
    问题3,根据情况,都有哪些方面的情况呢,可以给我打个比方吗?
    不好意思,新手问的新手问题~~