`
文章列表
There is no WRITEABLE property named 'id' in class 'com.study.bean.Student' 很奇怪,id是完全对应一致的,可是出现这个错误,在网上查了,说javabean里面的变量和SQLMAP里面的不一样,如javabean里面 Userid在SQLMAP里面 要写userid,只默认识别小写,不能写成大写。 经测试,在ibatis中对象属性的头两个字母不能大写,在javabean里写lUUID形式的,使用resultMap时不认该字段 写成llUUID就没事了      
//dwr 引用util.js,engine.js,beanName.js路径问题如果引用util.js,engine.js,beanName.js的jsp页面在webRoot下面,则<script type="text/javascript" src="dwr/engine.js"/></script> <script type="text/javascript" src="dwr/util.js"/></script> <script type=" ...
最近用dwr做了个登陆验证的例子,可真是几经波折呀(程序很简单)。 先贴个dwr的小例子:   dwr要验证的java方法(该方法返回值是ajax中回调函数的参数) public String login(String name, String pwd){  System.out.println(name+pwd);   if(null==name || "".equals(name.trim())){   System.out.println("kkkkkkkk");    return "1";  }  if( ...
/**     *   编写以下SessionCounter.java     *   并编译为SessiionCounter.class     *   然后放到你的网站的classpath的     *   SessionCount(自己建立此目录)下面     */         package   SessionCount;     import   javax.servlet.*;     import   javax.servlet.http.*;         public   class   SessionCounter   implements   HttpSessionL ...
一、这是jsp调用页testcount.jsp <%@ page import="java.util.Date" %> <%@ page import="count.CountXml" %> 计算器测试<br> <%        CountXml xmlcount=CountXml.getInstance();         if (session.isNew()){       xmlcount.addcount(new Date());//增加访问量       int n =xmlcount.getTot ...
有时要为每一篇文章统计其点击次数,如果每一次浏览都要更新一次库的话,那性能在访问量很大的情况下,服务器的压力就会很大了,比较好一点的方法就是先将要更新的数据缓存起来,然后每隔一段时间再利用数据库的批量处理,批量更新库。源码如下:     半分钟更新一次计数.     count包中三个*.java文件     1.CountBean.java     package count;     public class CountBean {  private String countType;      int countId;      public CountBean() {  } ...
今天在SSH中用到spring拦截器,所以先在一个只有spring的测试项目中写了一个拦截器的一个简单例子, 结果还遇到了一点小错误,一下就按时间发展顺序记述. Purview接口. package aop; public interface Purview {     void checkLogin(); }PurviesImpl ...
1.数据库表及字段命名、设计规范1.1数据库表数据库表的命名规范:表的前缀应该用系统或模块的英文名的缩写(全部大写或首字母大写)。如果系统功能简单,没有划分为模块,则可以以系统英文名称的缩写作为前缀,否则以各模块的英文名称缩写作为前缀。例如:如果有一个模块叫做BBS(缩写为BBS),那么你的数据库中的所有对象的名称都要加上这个前缀:BBS_ + 数据库对象名称,BBS_CustomerInfo标示论坛模块中的客户信息表 表的名称必须是易于理解,能表达表的功能的英文单词或缩写英文单词,无论是完整英文单词还是缩写英文单词,单词首字母必须大写。如果当前表可用一个英文单词表示的,请用完整的英文单词来表示 ...
1. 原始单据与实体之间的关系 可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对应多个实体,或多张原始单证对应一个实体。这里的实体可以理解为基本表。明确这种对应关系后,对我们设计录入界面大有好处。 〖例1〗:一份员工履历资料,在人力资源信息系统中,就对应三个基本表:员工基本情况表、社会关系表、工作简历表。这就是“一张原始单证对应多个实体”的典型例子。 2. 主键与外键 一般而言,一个实体不能既无主键又无外键。在E—R 图中, 处于叶子部位的实体, 可以定义主键,也可以不 ...
感觉上,spring似乎实现了这个接口 实例应用 概述:        Servlet监听器用于监听一些重要事件的发生,监听器对象可以在事情发生前、发生后可以做一些必要的处理。下面将介绍几种常用的监听器,以及它们都适合运用于那些环境。 分类及介绍:(红色表示重要) 1.  ServletContextListener:用于监听WEB 应用启动和销毁的事件,监听器类需要实现javax.servlet.ServletContextListener 接口。 2.  ServletContextAttributeListener:用于监听WEB应用属性改变的事件,包括:增加属性、删除属性、修改属性,监听 ...
ServletContext 被 Servlet 程序用来与 Web 容器通信。例如写日志,转发请求。每一个 Web 应用程序含有一个Context,被Web应用内的各个程序共享。因为Context可以用来保存资源并且共享,所以我所知道的 ServletContext 的最大应用是Web缓存----把不经常更改的内容读入内存,所以服务器响应请求的时候就不需要进行慢速的磁盘I/O了。 ServletContextListener 是 ServletContext 的监听者,如果 ServletContext 发生变化,如服务器启动时 ServletContext 被创建,服务器关闭时 Serv ...
现在正在做一个用户在线列表(已登陆),想用HttpSessionListener接口实现。   但发现好像HttpSessionListener只能统计在线人数。    不知有什么方法能实现?    就像聊天室里的那个在线列表一样的。   ---------------------------------------------------------------    package  SessionCounter;   import  javax.servlet.*;  import  javax.servlet.http.*;  import  java.util.*;  imp ...
继上次说到Listener的功效,这里就不得不说说另外一个接口HttpSessionListener了。 上次说到了ServletContextListener,它是用来监听Servlet Context的创建和销毁的状态。今天特别有兴趣在 聊聊另一个监听的接口,名字叫做HttpSessionListener。 在理解这个接口之前,先提出一个问题,就是假设我的web应用上想知道到底有多少用户在使用? 首先看一段代码。 package demo.listener; import javax.servlet.ServletContext;import javax.servle ...
在网站中经常需要进行在线人数的统计。过去的一般做法是结合登录和退出功能,即当用户输入用户名密码进行登录的时 候计数器加1,然后当用户点击退出按钮退出系统的时候计数器减1。这种处理方式存在一些缺点,例如:用户正常登录后,可能会忘记点击退出按钮,而直接关闭浏览器,导致计数器减1的操作没有及时执行;网站上还经常有一些内容是不 需要登录就可以访问的,在这种情况下也无法使用上面的方法进行在线人数统计。  我们可以利用Servlet规范中定义的事件监听器(Listener)来解决这个问题,实现更准确的在线人数统计功能。 对每一个正在访问的用户,J2EE应用服务器会为其建立一个对应的HttpSessio ...
闲来无事,做了一个AJAX聊天室,以前一直想做一个,因为我和几个朋友是Linux机子,尽管我们的机子上都有apache服务器,但要发送一个信息却不是很容易,老是要借助客户端,有时候吧Linux下的qq和gtalk之类的聊天软件太麻烦,所以呢,就写了一个聊天室。先说一下我实现的这个聊天室的聊天模式:    1,无须注册,登录之类,打开页面就可以聊天。    2,为避免过量冗余信息,客户端只获取在一定时间以后发送的信息,比如10秒内。    3,可以单对单聊天,仅限于一个对一个,如果想一对多同时聊天,那么就必须要注册登录才能解决。这样就简化了一些聊天的模式了,如果想要实现例如qq,msn,gtalk ...
Global site tag (gtag.js) - Google Analytics