欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    SSH框架 Ajax(运用dwr框架)综合小实例.doc

    • 资源ID:2387242       资源大小:1.65MB        全文页数:37页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    SSH框架 Ajax(运用dwr框架)综合小实例.doc

    SSH框架+Ajax(运用dwr框架)综合小实例首先说下我的配置环境:     开发工具:MyEclipes6.6     数据库:Mysql     首先在MySql中建立好数据库(抱歉,我还不会用hibernate的逆向工厂去生成数据库):     create database test;     use test;     create table userinfo     (     uid int primary key,     uName varchar(50),     uPass varchar(50),     )     /插入数据部分不写了,这个我想大家都应该会吧!     select * from userinfo;     /以下是我的数据库中的信息     数据库建好我们来搭建SSH框架吧!     1.首先创建web工程     2.在工程中添加SSH支持     SSH的添加顺序和他们的(SSH=Struts+Spring+Hibernate)缩写名字顺序是一致的,不知道起名字的时候是不是按照他们的引入顺序起的。注意:SSH支持引入的时候必须是这个顺序,否则里面会出现很多错误。解决起来很麻烦。尤其是spring的部分。所以此顺序大家要切记,不要弄反了!具体步骤如下:     工程上点击右键选择MyEclipes->Add Struts Capabilities.弹出Struts配置窗口之后修改包名,点击Finish即完成了Struts的配置工作了   接下来配置Spring,同样右键工程选择MyEclipes->Add Spring Capabilites:如图所示:    Struts+Spring已经顺利的配置好了,不过先不要忙着配置Hibernate,在配置Hibernate之前先完成数据库的映射。首先在工程的src目录上右键选择New->Package->创建新的Package(我创建的包名是:com.ssh.entity。这样取名完全是为了规范便于管理!)包建立好后,进入Hibernate逆向工厂将数据库引入进来。    此步骤有几点需要注意:     1.Driver template这里面有很多选项,这些都是MyEclipes所支持的数据库种类。由于我用的是MySql数据库,所以此处我选择的是你所看到的下拉列表框里的选项。     2.Connection URL这里会根据你选择的数据库自动生成一部分代码,具体你要连接数据库的地址,还有数据库名称就要自己填写了。我做的是本地连接,且所用数据库名称为test,所以“/”后面写的就是以上内容了。     3.Driver name这里可以随便起名字    以上步骤完成之后,我们便会在DB Browser的标题栏中看到一个我们引入的数据库了。双击数据库,或者在数据库上点击右键选择Open Connection至此,我们已经将数据库信息顺利的引入了MyEclipes中了。接下来,回到我们的编辑界面(会去的方法:同样点击进入Hibernate逆向工厂的小图标,选择有M字样的图标),在web工程下开始添加Hibernate支持。    进入此页面时,Create SessionFactory class是被选中的,由于SSH架构中,我们的连库事务都是交给spring进行托管的,不需要我们独立去创建SessionFactory,创建Session这些活动了,所以此项不需要选择。直接点击Finish完成即可。注意:当点击Finish的时候会弹出一个窗口:这是由于spring和hibernate包重复,MyEclipes给出的一个系统提示。我们不用管它,直接点击Keep Existing。然后继续执行下一步。     至此,SSH框架支持已经全部倒入成功了。这时候看我们的web工程会发现下图的现象:接下来,我们只要添加和去除几个包就可以解决了。 鼠标右键点击工程名称,在右键菜单中选择Properties:此时会弹出下图中的窗口,点击Java Build Path,就会变成我下图所示的样子了。选择Liberties,将里面的asm-2.2.3.jar和以log4j开头版本较低的jar包删除(如果有两个log4j JAR包的话则删除版本较低的,我的MyEclipes6.6里只有一个log4j所以我只删除了asm-2.2.3.jar这一个包)。 然后点击你的工程进入WebRoot文件夹下的lib文件夹同样删除这两个jar包。(如果不按照以上步骤,你也可以进入你工程的保存路径,同样找到工程下的WebRoot文件夹下的lib目录,删除以上两个jar包。) 然后进入你的MyEclipes安装路径,我的MyEclipes是安装在F:Program Files路径下的。然后按照以下路径去寻找两个jar包。 MyEclipse6.6myeclipseeclipsepluginscom.genuitec.eclipse.springframework_6.6.0.zmyeclipse660200810data1.2libdependenciesjakarta-commons 这是我们需要的那两个jar包的最终路径,所需要的jar包的名称分别是: commons-dbcp.jar和commons-pool.jar。 找到jar包后,将他们复制到你的工程目录下,引入工程目录有两种方式: 1  直接找到你的工程目录,进入WebRoot下的lib文件夹,将复制的jar包粘贴进来即可,然后进入MyEclipes刷新你的工程。 2  从MyEclipes点击你的工程,找到WebRoot下的lib文件夹,将复制的jar包粘贴进去,然后在工程上右键点击Properties->Java Build Path按下图操作,然后刷新工程即可: 此时我们已经将SSH所需的jar全部导入了,查看一下web工程下的WebRoot路径下的lib文件夹,我的MyEclipes6.6版本是42个文件,如果是6.0版本的话,应该是60多个。 接下来回到Database Explorer路径下,点击我们导入的数据库 按照上面的配置好后,点击下一步(Next), 如果涉及到多对多关系的话Enable many-to-many detection也要勾选上。 然后点击Finish完成即可。此时我们只要将spring和Struts中的配置完成,SSH就真正的搭建成功了。                    首先写好你的数据访问层和业务逻辑层。spring是通过Ioc(依赖注入)来管理程序中的依赖关系的。因此,在各层之间,我们只要声明上一层的接口即可,然后通过set方式,让spring去注入实现类。spring注入的是什么实现类我们只需要在spring中配置就可以了。在之一中我们已经将SSH加载部分弄好了,接下来我们开始写配置文件的部分。这是我的一个建好的工程中的所有包和文件    业务逻辑和数据访问层建好后,我们开始在spring中配置他们的注入关系。 <!- dao config -> <bean id="userDAO" class="com.ssh.dao.impl.userDAOImpl">   <property name="sessionFactory" ref="sessionFactory"></property> </bean> <!- biz config -> <bean id="userBIZ" class="com.ssh.biz.impl.userBIZImpl">   <property name="dao" ref="userDAO"></property> </bean> <!- action config -> <bean name="/user" class="com.ssh.struts.action.UserAction">   <property name="biz" ref="userBIZ"></property> </bean> 注意最后一个是spring与Struts的整合。这一步除了要在spring中配置外还需要在Struts中配置下面这些语句 type="org.springframework.web.struts.DelegatingActionProxy" 这里是将type的值改成引号中的写法。由于涉及到与dwr的结合,所以这里可以省去写:   <plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">    <set-property property="contextConfigLocation" value="classpath:applicationContext.xml"/>   </plug-in> 这部分内容,因为dwr已经在它的jar包中为我们装配好了这一切。 如果还要执行增删改事务的话,除了以上配置以外,我们还要在spring的配置文件里写上声明式事务。这样一个可以完成基本的增删改查功能的SSH框架才算基本搭建完毕。 spring的1.x声明式事务方式,依赖性很强。我这里使用的是spring2.0的声明式事务。2.0真正的实现了AOP编程思想,与面向对象编程思想有机的结合起来。可以说spring的AOP思想是面向对象思想的一个补充。 首先在在spring的配置文件中要做如下配置 <beans xmlns="http:/www.springframework.org/schema/beans"     xmlns:xsi="http:/www.w3.org/2001/XMLSchema-instance"     xmlns:aop="http:/www.springframework.org/schema/aop"     xmlns:tx="http:/www.springframework.org/schema/tx"     xsi:schemaLocation="http:/www.springframework.org/schema/beans     http:/www.springframework.org/schema/beans/spring-beans-2.5.xsd     http:/www.springframework.org/schema/aop     http:/www.springframework.org/schema/aop/spring-aop-2.0.xsd     http:/www.springframework.org/schema/tx     http:/www.springframework.org/schema/tx/spring-tx-2.0.xsd "> 这是spring配置文件的开头部分。 <!- spring2.0声明事务 -> <!-声明事务管理器,id是管理器的名字。class指定管理器引用的路径-> <bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">   <!-将sessionFactory属性注入到事务管理器中->   <property name="sessionFactory" ref="sessionFactory"/> </bean> <!-定义事务通知,id是通知的名字,transaction-manager的值为指定的事务管理器的id-> <tx:advice id="" transaction-manager="txManager">   <!-给通知的属性声明事务规则->   <tx:attributes>    <!-add*表示所有以add开头的方法都要按照以下规则运行,*表示通配符,read-only表示只读->    <tx:method name="add*" propagation="REQUIRED"/>    <tx:method name="del*" propagation="REQUIRED"/>    <tx:method name="update*" propagation="REQUIRED"/>    <tx:method name="*" propagation="SUPPORTS" read-only="true"/>   </tx:attributes> </tx:advice> <!-定义AOP指向的路径-> <aop:config>   <!-id为此切入点的名称,expression指遵循此规则的文件路径->   <!-execution(* com.ssh.biz.*.*(.)表示所有工程目录下com.ssh.biz目录下的所有类中的所有方法->   <aop:pointcut id="bizMethods" expression="execution(* com.ssh.biz.*.*(.)"/>   <!-将事务与切面组合->   <aop:advisor pointcut-ref="bizMethods" advice-ref="txAdvice"/> </aop:config>     至此大名鼎鼎的SSH终于算是全部配置完了!接下来我们将Ajax的dwr框架整合进这个SSH中。 首先将dwr.jar(dwr的jar包)放入到工程的WebRoot/lib文件夹下,然后在WebRoot目录下的web.xml配置文件中配置dwr。   <!- Ajax工程dwr的配置信息 ->   <servlet>    <servlet-name>dwr-invoker</servlet-name>    <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>    <!- 是否允许调试,如果要在浏览器中调试则必须设置为true ->    <init-param>     <param-name>debug</param-name>     <param-value>true</param-value>    </init-param>    <!- 是否进行日制管理,如果是在要设置此参数,通常可以省略 ->    <init-param>     <param-name>logLevel</param-name>     <param-value>WARN</param-value>    </init-param>    <!- 如果允许跨域请求,则必须将此值设置为false,默认值为true ->    <init-param>     <param-name>crossDomainSessionSecurity</param-name>     <param-value>false</param-value>    </init-param>   </servlet> <servlet-mapping>    <servlet-name>dwr-invoker</servlet-name>    <url-pattern>/dwr/*</url-pattern>   </servlet-mapping> 接下来在web.xml的同级目录下创建一个web.xml文件 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE dwr PUBLIC     "-/GetAhead Limited/DTD Direct Web Remoting 2.0/EN"     "http:/www.getahead.ltd.uk/dwr/dwr20.dtd"> <dwr>   <allow>   <!- creator为spring表示根据spring创建一个方法,JavaScript属性表示页面引用时的脚本对象名 ->     <create creator="spring" javascript="JGetAllUser">       <!-这里的value值与spring中id="userBIZ"是同一个值->       <param name="beanName" value="userBIZ"/>     </create>     <!-方法具有实体类返回值,那么就要为其创建一个bean,这个类就要根据match所指向的实体类进行创建->     <convert match="com.ssh.entity.Userinfo" converter="bean"></convert>   </allow> </dwr> 将这些话复制进去就可以了。有了以上的内置我们就可以启动服务器运行程序了。从IE窗口的地址栏输入http:/localhost:8080/工程名/dwr/index.html我们就可以看到以下内容了点击JGetAllUser进入到下面这样的页面按照上图提示,复制路径粘贴在jsp页面里,jsp如下图所示:看到getAllUserInfo方法中的JGetAllUser是不是很熟悉,没错这就是我们在dwr.xml里配置的JavaScript属性表示页面引用时的脚本对象名。刚才的工程/dwr/index.html页面中的JGetAllUser也是它。至此SSH+Ajax我们就真正的整合在一起了。这是最简单的配置。

    注意事项

    本文(SSH框架 Ajax(运用dwr框架)综合小实例.doc)为本站会员(laozhun)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开