当前位置:  编程技术>WEB前端
本页文章导读:
    ▪JeeSite的开发环境部署 -- 异常:java.lang.ClassNotFoundException: javax.servlet.ServletContainerInitializer      JeeSite是一个 永久开源的企业信息管理系统 基础框架。主要定位于“企业信息管理”领域,可用作企业信息管理类系统、网站后台管理类系统等。JeeSite是非常强调开发的高效性、健壮性和安.........
    ▪JavaScript高级程序设计学习笔记--事件(二)(事件对象--DOM中的事件对象/IE中的事件对象/跨浏览器的事件对象)      事件对象    在触发DOM上的某个事件时,会产生一个事件对象event,这个对象中包含着所有与事件有关的信息。包括导致事件的元素、事件的类型,以及其他与特定事件相关的信息。.........
    ▪判断是否有flash插件      function hasPlugin( ga ){ var ga = ga.toLowerCase(); for( var i = 0; i < navigator.plugins.length; i++ ){ if( navigator.plugins[i].name.toLowerCase().indexOf( ga ) > -1 ){ return true; } } return false; } function hasIEPlugin( ga ){ t.........

[1]JeeSite的开发环境部署 -- 异常:java.lang.ClassNotFoundException: javax.servlet.ServletContainerInitializer
    来源: 互联网  发布时间: 2013-11-06

JeeSite是一个 永久开源的企业信息管理系统 基础框架。主要定位于“企业信息管理”领域,可用作企业信息管理类系统、网站后台管理类系统等。JeeSite是非常强调开发的高效性、健壮性和安全性的。

JeeSite是轻量级的,简单易学,本框架以Spring Framework为核心、Spring MVC作为模型视图控制器、Spring Data JPA + Hibernate作为数据库操作层,此组合是Java界业内最经典、最优的搭配组合。前端界面风格采用了结构简单、性能优良、页面精致的Twitter Bootstrap作为前端展示框架。

JeeSite 已内置 一系列企业信息管理系统的基础功能,目前包括两大模块,系统管理(SYS)模块和内容管理(CMS)模块。系统管理模块,包括企业组织架构(用户管理、部门管理、区域管理)、菜单管理、角色权限管理、字典管理等功能;内容管理模块,包括内容管理(文章、链接),栏目管理、站点管理、公共留言、文件管理、前端网站展示等功能。

JeeSite提供了常用工具进行封装,包括日志工具、缓存工具、服务器端验证、数据字典、当前组织机构数据(用户、区域、部门)以及其它常用小工具等。另外还提供一个基于本基础框架的代码生成器 ,为你生成基本模块代码,如果你使用了JeeSite基础框架,就可以很快速开发出优秀的信息管理系统。

===========开发环境搭建=================

我的开发环境是:MyEclipse8.x + Tomcat6.0.36 + MySQL5.2.x

JeeSite源码:http://126.am/9fzur4 

部署手册:

  • JeeSite介绍演示.docx
  • JeeSite开发手册.docx

    先请按照JeeSite开发手册部署项目,部署之后你会发现,运行Tomcat时报错:

    就是这个问题解决了好久都找不到原因,多方网上查资料和开发群帮助,发现时Jar包冲突和缺失的问题!!!

    正确的Jar包数量是95个,列表如下:(这个Jar包列表已经共享在开发群里面lib.rar了!)

     

    你可以试试,部署你的项目到tomcat之后,删除lib包里面所有的jar,然后把这里面的考进去,重启tomcat
    可以的话,再调整你的项目部署。
    希望遇到同样问题的同学不要想我一样纠结,速战速决,希望能给你带来帮助。
    没有成功的可以发邮件给我:jpr1990@126.com

     

     

    =======================介绍和资料见下面说明==================

    为何选择
  • 使用 Apache License 2.0 协议,源代码完全开源,无商业限制。
  • 使用目前最主流的J2EE开发框架,简单易学,学习成本低。
  • 数据库无限制,支持MySql、Oracle、SQL Server、H2等数据库。
  • 模块化设计,层次结构清晰。内置一系列企业信息管理的基础功能。
  • 权限控制精密细致,对所有管理链接都进行权限验证,可控制到按钮。
  • 提供基本功能模块的源代码生成器,提高开发效率及质量。
  • 提供常用工具类封装,日志、缓存、验证、字典、组织机构等,常用标签(taglib),获取当前组织机构、字典等数据。
  • 完全兼容目前最流行浏览器(IE6、IE7+、Firefox、Chrome)。
  • 使用技术

    1、Services相关

    • Core Framework:Spring Framework 3.2。
    • Security Framework:Apache Shiro 1.2。

    2、Web相关

    • MVC Framework:SpringMVC 3.2。
    • Layout Decoration:SiteMesh 2.4。
    • JavaScript Library:JQuery 1.9。
    • CSS Framework:Twitter Bootstrap 2.0.4。
    • JavaScript/CSS Compressor:YUI Compressor 2.4。
    • Front Validation:JQuery Validation Plugin 1.11。

    3、Database相关

    • ORM Framework:Spring-Data-JPA 1.3、Hibernate 4.1。
    • Connection Pool:BoneCP 0.7
    • Bean Validation:Hibernate Validation 4.3.0。
    • Cache:Ehcache 2.6。

    4、Tools 相关

    • Commons:Apache Commons
    • JSON Mapper:Jackson 2.1
    • Bean Mapper:Dozer 5.3.2
    • Full-text search:Hibernate Search 4.2(Apache Lucene 3.6)、IK Analyzer 2012_u6中文分词
    • Log Manager:Log4j 1.2
    安全考虑
  • 开发语言:系统采用Java 语言开发,具有卓越的通用性、高效性、平台移植性和安全性。
  • 分层设计:(数据库层,数据访问层,业务逻辑层,展示层)层次清楚,低耦合,各层必须通过接口才能接入并进行参数校验(如:在展示层不可直接操作数据库),保证数据操作的安全。
  • 双重验证:用户表单提交双验证:包括服务器端验证及客户端验证,防止用户通过浏览器恶意修改(如不可写文本域、隐藏变量篡改、上传非法文件等),跳过客户端验证操作数据库。
  • 安全编码:用户表单提交所有数据,在服务器端都进行安全编码,防止用户提交非法脚本及SQL注入获取敏感数据等,确保数据安全。
  • 密码加密:登录用户密码进行SHA1散列加密,此加密方法是不可逆的。保证密文泄露后的安全问题。
  • 强制访问:系统对所有管理端链接都进行用户身份权限验证,防止用户
  • 快速体验
  • 具备运行环境:JDK1.6、Maven3.0、MySql。
  • 修改src\main\resources\application.properties文件中的数据库设置参数。
  • 根据修改参数创建对应MySql数据库。
  • 运行bin\resresh-db\refresh-db.bat脚本,导入表结构及演示数据
  • 运行bin\jetty.bat,启动服务器(第一次运行,需要下载依赖jar包,请耐心等待)。
  • 最高管理员,用户名:thinkgem 密码:admin
  • 更多文档
    • JeeSite介绍演示.docx
    • JeeSite开发手册.docx
    作者:jpr1990 发表于2013-3-15 16:31:32 原文链接
    阅读:3 评论:0 查看评论

        
    [2]JavaScript高级程序设计学习笔记--事件(二)(事件对象--DOM中的事件对象/IE中的事件对象/跨浏览器的事件对象)
        来源:    发布时间: 2013-11-06

    事件对象    
    在触发DOM上的某个事件时,会产生一个事件对象event,这个对象中包含着所有与事件有关的信息。包括导致事件的元素、事件的类型,以及其他与特定事件相关的信息。例如,鼠标操作导致的事件对象中,会包含鼠标位置的信息,而键盘操作导致的事件对象中,会包含与按下的键有关的信息。所有浏览器对象都支持event对象,但支持方式不同。

    DOM中的事件对象

    兼容DOM的浏览器会将一个event对象传入到事件处理程序中。无论指定事件处理程序时使用什么方法(DOM0级或DOM2级),都会传入event对象。来看下面的例子

    var btn = document.getElementById("myBtn");
    btn.onclick = function(event){
    alert(event.type); //"click"
    };
    btn.addEventListener("click",function(event){
    alert(event.type); //"click"
    },false);

     

    这两个例子中的两个事件处理程序都会弹出一个警告框,显示由event.type属性表示的事件类型。这个属性始终都会包含被触发的事件类型。
    在通过HTML特性指定事件处理程序时,变量event中保存着event对象。请看下面的例子:

    <input type="button" value="Click me" onclick="alert(event.type)"/>

    Event对象包含与创建它的特定事件有关的属性和方法。触发的事件类型不一样,可用的属性和方法也不一样。不过,所有事件都会有下表列出的成员。

    属性/方法

    类型

    读/写

    说明

    bubbles

    Boolean

    只读

    表明事件是否冒泡

    cancelable

    Boolean

    只读

    表明是否可以取消事件的默认行为

    currentTarget

    Element

    只读

    其事件处理程序当前正在处理事件的那个元素

    Detail

    Integer

    只读

    与事件相关的细节信息

    eventPhase

    Integer

    只读

    调用事件处理程序的阶段:1表示捕获阶段,2表示“处于目标”,3表示冒泡阶段

    preventDefault()

    Function

    只读

    取消事件的默认行为。如果cancelable是true,则可以使用这个方法

    stopPropagation()

    Fucntion

    只读

    取消事件的进一步捕获或冒泡。如果bubbles为true,则可以使用这个方法

    target

    Element

    只读

    事件的目标

    type

    String

    只读

    被触发的事件的类型

    View

    AbstractView

    只读

    与事件关联的抽象视图。等同于发生事件的window对象



    在事件处理程序内部,对象this始终等于currentTarget的值,而target则只包含事件的实际目标。如果直接将事件处理程序制定为了目标元素,则this、currentTarget和target包含相同的值。来看下面的例子:

    var btn = document.getElementById("myBtn");
    btn.onclick = function(event){
    alert(event.currentTarget === this); // true
    alert(event.target === this) //true
    };

    这个例子检测了currentTarget和target与this的值。由于click事件的目标就是按钮,因此这三个值是相等的。如果事件处理程序存在于按钮的父节点中,那么这些值是不同的。

     

    document.body.onclick = function(event){
    alert(event.currentTarget === document.body); //true
        
    [3]判断是否有flash插件
        来源: 互联网  发布时间: 2013-11-06
    function hasPlugin( ga ){
    	var ga = ga.toLowerCase();
    	for( var i = 0; i < navigator.plugins.length; i++ ){
    		if( navigator.plugins[i].name.toLowerCase().indexOf( ga ) > -1 ){
    			return true;
    		}
    	}
    	return false;
    }
    function hasIEPlugin( ga ){
    	try{
    		new ActiveXObject( ga );
    		return true;
    	}catch( e ){
    		return false;
    		// 跳过
    	}
    }
    function hasFlash( flash ){
    	var result = hasPlugin( flash );
    	if( !result ){   // 判断是否为ie浏览器
    		result = hasIEPlugin( "ShockwaveFlash.ShockwaveFlash" )
    	}
    	return result;
    }
    alert(hasFlash("Flash"));           // 判断否是有flash插件

    作者:gtd03 发表于2013-3-15 16:50:48 原文链接
    阅读:50 评论:0 查看评论

        
    最新技术文章:
    ▪css white-space:nowrap属性用法(可以强制文字不...
    ▪IE里button设置border:none属性无效解决方法
    ▪border:none与border:0使用区别
    ▪html清除浮动的6种方法示例
    ▪三个不常见的 HTML5 实用新特性简介
    ▪css代码优化的12个技巧
    ▪低版本IE正常运行HTML5+CSS3网站的3种解决方案
    ▪CSS Hack大全-教你如何区分出IE6-IE10、FireFox、Chr...
    ▪ie6,ie7,ie8完美支持position:fixed的终极解决方案
    ▪小技巧处理div内容溢出
    ▪html小技巧之td,div标签里内容不换行
    ▪纯CSS实现鼠标放上去改变文字内容
    ▪li中插入img图片间有空隙的解决方案
    ▪CSS3中Transition属性详解以及示例分享
    ▪父div高度不能自适应子div高度的解决方案
    ▪告别AJAX实现无刷新提交表单
    ▪从零学CSS系列之文本属性
    ▪HTML 标签
    ▪CSS3+Js实现响应式导航条
    ▪CSS3实例分享之多重背景的实现(Multiple background...
    ▪用css截取字符的几种方法详解(css排版隐藏溢...
    ▪页面遮罩层,并且阻止页面body滚动。bootstrap...
    ▪CSS可以做的几个令你叹为观止的实例分享
    ▪详细分析css float 属性以及position:absolute 的区...
    ▪IE6/IE7/IE8/IE9中tbody的innerHTML不能赋值的完美解...
    ▪CSS小例子(只显示下划线的文本框,像文字一...
    ▪可以给img元素设置背景图
    ▪不通过JavaScript实现的自动滚动视差效果
    ▪div+CSS 兼容小摘
    ▪CSS的inherit与auto使用分析
     


    站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3