搜档网
当前位置:搜档网 › struts2+spring3+hibernate整合教程

struts2+spring3+hibernate整合教程

struts2+spring3+hibernate整合教程
struts2+spring3+hibernate整合教程

Struts2+Spring3+hibernate3整合

(2011年7月末,最新)

上次下载了一个教程,上面写着:“献给我亲爱的老婆!”(羡慕不已)。想了想,我没老婆,难道没什么好写了!不难…

献给我暗恋过的每一个女人!(嘿嘿…)

如果在你遇到的女生中有一个幽默豁达的女生,不要犹豫,追上去,就娶她了!

一,需要的框架包

二,建立project,添加相应的.jar文件(重点)

1,eclipse中建立dynamic web project,这里是ssh_integrate_0100。

2,src中创建需要的类,这里以一个域模型为user的例子说明。(现在建立这些类,可以方便我们在搭建时候随时测试!)

User.java

IUserDao.java

UserDaoImpl.java

IUserService.java

UserServiceImpl.java

3,拷贝spring-framework-3.1.0\dist目录下的所有jar包,注意有一个不是jar的文件,当然拷过去也没事。

4,拷贝spring运行中需要的其他jar文件,主要是

https://www.sodocs.net/doc/201002120.html,mons-logging,可以从spring-framework-3.0.2.RELEASE-dependencies

中找到。

ii.Aspectjrt.jar和aspect-waver.jar,可以从spring-framework-2.5.6-with-dependencies/lib/aspectj下面找到(不知道为什

么,spring-framework-3.0.2.RELEASE-dependencies中没有aspectjrt的jar

包)

iii.aopalliance.Jar,apache-dbcp.jar,apache-pool.jar,可以从spring-framework-3.0.2.RELEASE-dependencies中找到。

5,建立beans.xml,这里使用的是annotation和component-scan,这样配置可以大大简化配置,所以是best-practice,其他配置请参考spring文档。

6,建立JUnit测试环境

新建一个source folder->test,右击新建一个JUnit Test Case,包名是https://www.sodocs.net/doc/201002120.html,er,选择测试类为UserServiceImpl 。

UserServiceTest.java

7,运行这个测试,我这里可以通过,如果你那里有问题,不要着急,认真看测试报的错误,如果错误很陌生,第一件要想到的就是:可能少添加包。看看depends或者去网上搜,应该不难了。这里贴出所有的包名:

8,整合hibernate,这个是比较难整合的,一定要细心,多参考文档,多搜索。

i.添加hibernate的jar包

包括三个部分,第一部分,hibernate所需要的基本包。有

hibernate-distribution-3.6.4.Final中的hibernate3.jar,lib\requery目录里面的

所有jar,lib\jpa中的jar。第二部分,annotation需要的jar。有

hibernate-annotations-3.4.0.GA下面的hibernate-annotation.jar,lib目录下的,

ejb3,hibernate-common-annotation和slf4j-api。第三部分是log4j日志需要

的包。apache-log4j-1.2.16下的log4j,slf4j-1.6.1下面的slf4j-log4j12-1.6.1.jar。

(总共13个包,一会会给截图)

ii.配置beans.xml,配置太长了,只好直接贴这里了。

xmlns:xsi="https://www.sodocs.net/doc/201002120.html,/2001/XMLSchema-instance"

xmlns:context="https://www.sodocs.net/doc/201002120.html,/schema/context"

xmlns:tx="https://www.sodocs.net/doc/201002120.html,/schema/tx"

xmlns:aop="https://www.sodocs.net/doc/201002120.html,/schema/aop"

xsi:schemaLocation="https://www.sodocs.net/doc/201002120.html,/schema/beans

https://www.sodocs.net/doc/201002120.html,/schema/beans/spring-beans-3.0.xsd

https://www.sodocs.net/doc/201002120.html,/schema/aop

https://www.sodocs.net/doc/201002120.html,/schema/aop/spring-aop-3.0.xsd

https://www.sodocs.net/doc/201002120.html,/schema/tx

https://www.sodocs.net/doc/201002120.html,/schema/tx/spring-tx-3.0.xsd

https://www.sodocs.net/doc/201002120.html,/schema/context

https://www.sodocs.net/doc/201002120.html,/schema/context/spring-context-3.0.xs d">

base-package="https://www.sodocs.net/doc/201002120.html,er">

class="org.springframework.orm.hibernate3.annotation.AnnotationSessio nFactoryBean">

https://www.sodocs.net/doc/201002120.html,er

org.hibernate.dialect.MySQLDialect

true

class="org.springframework.orm.hibernate3.HibernateTransactionManager

">

iii.修改User,在class上加上@Entity(name=”_user”),在getId()上加上@Id和@GeneratedValue标签。

iv.启动mysql数据库,创建hibernate数据库,创建_user表,

Create database hibernate;

Create table _user(id int primary key auto_incement,name

varchar(50),password varchar(50));

v.修改UserDaoImpl.java,

vi.运行UserServiceTest测试,我的报了个错,这个是最纠结的,我弄了半天,我是这样排查的,把lib里所有的包全删了,然后加上我以前建立的User

Library->spring3.1和hibernate,运行发现没有错(代码和配置没有错)。删

除spring3.1的user library加上准备好的spring_jar,运行发现没错。相反,

删除hibernate的user library加上准备好的hibernate_jar,运行发现出错了,

这说明是hibernate的包没有添加正确。我删除了所有的hibernate的包重新

和user library比对,再添加还出错,后来发现时少了一个包:hibernate-core,

但是为什么user library里面没有就能正常运行,而放到lib\目录下就出问

题,真是弄不明白了??高手指点啊,少包:hibernate-core

org.springframework.beans.factory.BeanCreationException: Error creating bean

with name 'userDao': Injection of resource dependencies failed; nested

exception is org.springframework.beans.factory.BeanCreationException: Error

creating bean with name 'sessionFactory' defined in class path resource

[beans.xml]: Invocation of init method failed; nested exception is

org.springframework.beans.BeanInstantiationException: Could not instantiate

bean class [org.hibernate.cfg.AnnotationConfiguration]: Constructor threw

exception; nested exception is https://www.sodocs.net/doc/201002120.html,ng.NoSuchFieldError: INSTANCE

9,整合struts

i.拷贝jar包

解压struts-2.2.3\apps目录下的blank.war,拷贝class\lib下面的所有jar文

件,还有、struts\lib目录下的struts-spring-plugin.jar,注意有一个文件是重

复的,javassist去除,再运行一遍上面的测试,没有问题则继续。

ii.建立struts.xml

iii.建立web.xml,启动applicationContext就是在这里建立的

xmlns="https://www.sodocs.net/doc/201002120.html,/xml/ns/j2ee"

xmlns:xsi="https://www.sodocs.net/doc/201002120.html,/2001/XMLSchema-instance"

xsi:schemaLocation="https://www.sodocs.net/doc/201002120.html,/xml/ns/j2ee

https://www.sodocs.net/doc/201002120.html,/xml/ns/j2ee/web-app_2_4.xsd">

Struts Blank

org.springframework.web.context.ContextLoaderListener

contextConfigLocation

classpath:beans.xml

struts2

org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAn dExecuteFilter

struts2

/*

index.jsp

iv.建立https://www.sodocs.net/doc/201002120.html,erAction,这里只是简单调用UserService层保存数据,测试这样就够了。

v.这里还会错,是应为beans.xml中有去找db.properties文件,而这时默认的寻找路径是在webcontent下,所以会报错,简单处理一下就好了。

vi.建立一个简单的usermanager.jsp(参考struts.xml),部署系统运行,可以看到后台结果,User被保存了,到此整个系统搭建完毕。

用活教材,创设生动课堂

用活教材,创设生动课堂 发表时间:2019-01-25T15:14:31.257Z 来源:《创新人才教育》2019年第1期作者:程学军[导读] 用活教材,能有效地创设活的情境,从而促进学生自主学习,激发成就感和进取心。 广汉市金轮镇中心小学校程学军 【摘要】用活教材,能有效地创设活的情境,从而促进学生自主学习,激发成就感和进取心。活用教材,要以生为本,结合实际课堂教学、开发和创设教材,实现课堂教学最优化,让课堂充满生命的律动。【关键词】用活教材律动课堂方法策略 正文:让课堂充满生命的律动,焕发生命的精彩已成为新课程理念下小学数学课堂教学的核心价值取向。在不断地教学实践中,对课堂进行了大胆的改革,活用教材,以自主、合作、探索为主要形式,创设学生自主学习的律动课堂。 一、用“活”情境图,激发参与兴趣。 新教材通过游戏、对话、表格和图片等形式呈现教学内容,但是没有呈现结论,教材中的情景图大多是半成品,教学的灵活性增强了,教师可选择的空间扩大了。 我们的数学教学需要做的是让孩子愿意亲近数学、了解数学、喜欢数学,从而主动地从事数学学习。因此我们应该采取适合于他们的表现形式,使学生对于情景图没有枯燥感,而产生一种愿意甚至喜爱它们的积极感情。我们在教学中要用好教材中情景图的潜在资源,只要在设计教学内容时根据实际情况或用多媒体或用游戏表演等形式将情景图所提供的内容活起来,让学生经历情景图所描述的全过程,增加实际体验,切身感受数学的的奇妙与无处不在。我们在运用情景图的时候可以以故事的形式演绎“情景图”的情境,引发学生惊奇、新鲜、亲近的儿童情趣,有利于产生积极的情感,帮助学生在快乐的氛围中顺利掌握新的学习内容,特别是在计算教学中,用活情景图,引发学生的生活经验,给枯燥乏味的计算教学增添一些趣味。 比如《加法的初步认识》一课,我们可以先动态出示一个小朋友,手里拿着一只千纸鹤,再跑来两个小朋友分别手上也有一只千纸鹤,然后小朋友走到一起把纸鹤也放在一起,这时可以提问:你知道了什么?小朋友会给大家提出个什么问题呢?你愿意帮他们解决吗?通过这样处理,使原本静态的情景图变成了动态过程式的演示,在紧紧把握学生思维的前提下,让学生发现问题,提出问题、进而解决问题,帮助解决了问题,使数学知识的过程得以彰显。 教材中的情景图只有通过合理的设计使静态情景转化为动态情景一定能唤起学生已有的生活经验,使学生“触景生情”、“触景生需”、“触景生思”,让他们在特定的情境中感到数学学习的价值和现实意义,把对数学的学习当作解决问题的手段,而不是消极被动地应付,让孩子们把数学学习与现实生活紧密联系起来。 二、在“活”的情境中“动”起来。 《课标》指出:“学生的数学学习活动应当是一个生动活泼的、主动的和富有个性的过程。”数学教学是数学活动的教学,是师生之间、生生之间交流互动与共同发展的过程。 生本教育理念认为学生在交流、争执、论证的基础上才能得到提高,学习的过程主要是以学生的讨论为主,学习中的诸多问题是让学生在讨论、合作、探究中解决的,学习讨论是以学习小组的形式完成的。小组合作作为一项促进学习的机制,是律动课堂顺利实施的一个有效激励措施。通过实行小组合作,激发了学生课堂学习的积极性和主动性,不但使学生积极地参与课堂中来,相互督促掌握课本的相关知识,而且拓宽了学生的视野,记忆牢固,培养了学生相互帮助、协同配合的团队精神。例如:在教学《千克的初步认识》时,教师在活动导学阶段可以设计成:你想亲自动手称一称物品的质量吗?分组活动,明确组内成员职责及要求,然后每人称一样桌上的物品。 称一称:物品各自的质量 数一数:每种物品一千克所含的数量 掂一掂:用手掂一掂1千克物品,体验1千克有多重 找一找:找出准备的其他物品,不用称,用手掂出1千克想一想:生活中那些物品的质量用“克”做单位?哪些用“千克”做单位?练一练:到家里和商场找一找用克和千克来计量的物品 这样的教学设计,让学生勤于动手,敢于实践,得到的知识比较牢固。 三、扑捉生成资源,演绎精彩律动课堂 叶澜教授曾说: “课堂应是向求知方向挺进的旅程,随时都有可能发现意外的通道和美丽的图景,而不是一切都必须遵循固定的路线而没有激情的行程。”因此,教师要树立动态生成的正确观念,把握有利时机,运用有效策略充分将课堂中的随机事件转化为有效的教学素材。在备课时不仅要在研究教材、研究学生的基础上充分考虑多种教学预设外,还必须根据课堂的即时生成状况,随时作出充满教育智慧的调整。 例如,在听《商不变的性质》一课的教学时,在总结商不变的性质之后,一个学生举起手:“我觉得既然有商不变的性质,就有积不变的性质。”他的观点顿时引起大家的共鸣,授课老师稍作停留,回应道:“请说说你的想法。” 生1:两个因数同时乘以或除以一个相同的数,积不变。师:你同意他的观点吗?(生纷纷举手想发表意见)师:下面自由发表自己的观点,看看你怎样说服他人? 生2:如8×6=48,而(8×2)×(6×2)=192,两个因数都乘以2,积变了。(语音停,掌声起。接着又有学生举了同时除以一个数的例子发现也是不正确的) 师:那究竟有没有积不变的性质呢?若有,又该怎样表达?请同学们小组讨论。生3:我们发现一个乘以、另一个除以相同的数,积不变。

SSH框架搭建实例教程,课程设计

. SSH的理解及其应用实践

1.SSH是什么 (3) 2 Spring 介绍理解: (3) 2.1简单介绍 (3) 2.2各种特性 (3) 2.2.1轻量 (3) 2.2.2控制反转 (4) 2.2.3面向切面 (4) 2 .2.4容器 (4) 2.2.5框架 (4) 2.3总结 (4) 3.Hibernate介绍理解: (4) 3.1简单介绍 (4) 3.2核心接口 (5) .3.2.1 Session接口 (5) 3.2.2 .SessionFactory接口 (5) 3.2.3.Configuration接口 (5) 3.2.4.Transaction接口 (5) 3.2.5 Query和Criteria接口 (5) 4. Struts (6) 4.1什么是Struts框架 (6) 4.2 Struts 概览 (6) 4.2.1Client browser(客户浏览器) (6) 4.4 Struts中的Controller(控制器)命令设计模式的实现 (7) 4.5 在Struts框架中控制器组件的三个构成部分 (7) 4.7 Struts中的Model(模型) (8) 5.SSH整合步骤 (8) 5.1安装所需软件环境: (8) 5.1.1、首先安装JDK,配置Java环境变量 (8) 5.1.2安装MyEelipse (8) 5.1.3 数据库 (9) 5.1.4、 (9) 5.2环境配置好了就可以做SSH整合的项目 (9) 6.搭建框架并简单应用 (11) 6.1准备工作 (11) 6.2(建立项目,包结构,导入所需jar文件) (12) 6.3撰写资源文件 (15) 6.4在https://www.sodocs.net/doc/201002120.html,m 包下添加下列文件 (19) 6.5添加hibernate DAO 模板 (20) 6.6以上的工作还不够,我们还需要进行WEB方面的配置 (20) 7.测试: (23)

活用教学技能 实施有效教学

活用教学技能实施有效教学 发表时间:2009-07-07T11:19:10.013Z 来源:《中学课程辅导·教学研究》2009年第10期供稿作者:魏雪玲[导读] 本文主要从“备课技能和上课技能”两个方面,结合实践活动来探讨如何灵活运用各种教学技能进行有效教学。 摘要:本文主要从“备课技能和上课技能”两个方面,结合实践活动来探讨如何灵活运用各种教学技能进行有效教学。关键词:活用;教学技能;有效作者简介:魏雪玲,任教于广东省广州市增城荔江小学。在日常“英语教师教学技能”交流活动时,我们都能听到教师们就“怎样展开课堂英语教学活动的设计”进行讨论。然而,大家往往忽略了“备课”这一个环节的探讨。其实,教师要上出一节好课,不只是在课堂上,更重要的是要看教师备课技能。下面结合教材,谈谈如何活用教材。 一、备课技能--了解教材活用教材在新课标理念下,教科书已不是教学的全部内容,教材是可变的、发展的和开发的。在实际的英语教学过程中,可以根据教学的具体需要,灵活地使用教材,使教学内容贴近学生实际生活,从而优化课堂教学,更好地实现教学目标。 1.模块间的调整 模块间的调整是指根据学生的认知特点,对各模块的顺序进行调整。把有联系的教学内容进行调整、重组后再进行教学,帮助学生分散学习的难点和有效地建立相对完整的知识体系。如:在备六年级上学期的教材时,笔者发现:Module 1和 Module 3的教学内容是相关联的。所以,笔者把Module1和Module 3 先教,然后再教Module 2, 这样重新激活学生认知的兴奋点,也激发学生的求知欲,避免了系统知识的片断化,帮助他们建立完整的知识体系,使学生学得轻松,收到很好的课堂教学效果。 2.模块内的调整 模块内的调整是指教师根据模块内的知识的逻辑顺序,对教学内容作重新调整,从而更好地体现知识的系统性和完整性。如,三年级下册的Module 3主要学习国家名称及其国籍的单词和几个相关的句型。其中Unit 7课文长、句型复杂难懂,还出现了几个国籍的单词;而在Unit 8只出现几个国家的单词,课文短、句型简单易懂。这样的内容安排并不利于三年级学生的理解和学习,笔者把Unit 8提前教,然后再教Unit 7,结果学生不但轻松地理解和掌握了国家名称及其国籍的单词,而且也学会运用课文句型进行交际。 3.上下册内容的调整上下册内容的调整是指教师抓住教学内容的互相联系性,系统性的特点,巧妙地把有联系性的教学内容重点句型和语言的重难点结合起来教学。这样不但能分散语言教学难点,更能突出语言教学重点,会收到意想不到的效果。如:笔者教五年级上册Module 1 Unit 2的时候,就结合了五年级下册的Module 6的内容,对学生进行“Season”的教学,不但把重点内容季节和月份的词汇在“What season do you like best?/ Which is your favorite season? When is spring/summer/autumn/ winter in…?”的句子中熟练地运用,而且还进行形容词warm、hot、cool、cold的教学,使学生描述自己喜爱的季节的同时,写作能力也得到提高。课后,学生制作的精美海报Post 和描写的作文,不但能很好的勾画出季节的特点,而且,还能运用了刚学的好词好句,有些学生还能在海报中描绘了节日特点,并且描述出来,效果非常好。当然,教师在备课时对教材所采取的调整方法有很多,但是,无论设计得再完美的课,能否成为一节好课,还要看教师的上课技能。 二、上课技能--运用技能设计有效活动运用好各种教学技能,精心设计好各种教学活动,改变枯燥乏味的课堂,激发学生学习英语的兴趣,调动学生的学习积极性,使学生在参与教学活动的过程中享受学习的乐趣,感受运用英语的成功,从而增强学习的自信心。下面谈谈在教学活动中如何结合教材来运用Songs & Chants、TPR、 Games 等教学技能来设计教学活动的一些有效做法: 1.游戏Games 爱玩是小孩子的天性。在课堂教学过程中,设计游戏能营造轻松的课堂学习氛围,激发学生创新的欲望。心理学家研究表明:良好的心境可以使思想活跃,思维敏捷,表达欲更强。如在教完动词“ing”形式时,笔者设计了“老鹰抓小鸡”的游戏,帮助学生巩固动词的“ing”形式。选出9位同学,一位同学扮演“鹰”,一位同学扮演“母鸡”,其他组员扮演“小鸡”,“母鸡”和“小鸡”齐问“鹰”:What are you doing?”“鹰”要用:“I am dancing (swimming/singing /flying/jumping/running /catching you)回答,并表演出这些动作,当“鹰”回答:“I am catching you”时。“鸡群”要立即躲藏,否则被抓,并被“鹰”“吃”掉。学生们都跃跃欲试,争着表演,课堂呈现出争先恐后的乐学场面。学生在一轮轮的参与中,满足了自己的表现欲,掌握和巩固了新知识,学生在扮演“鹰”和“鸡”的过程中也发挥了想象力,把“鹰”的强悍、敏锐,“小鸡”的恐慌,“母鸡”的镇定、机智活现在我们面前。学生在参与游戏的同时,激发了他们的创新动力,增强了创新意识。 2.全身反应教学法“TPR” TPR(Total Physical Response全身反应教学法),是加州心理学家James J.Asher(詹姆士J.艾谢)提出来的。全身反应教学法注重的是语言学习中的互动模式,最能让学生在“做中学(Learn by doing)”。它完全以英语授课,凭借丰富的肢体语言、实物教具、图片等,让学生充分了解英语的意思。而且能立刻抓住学生的注意力,吸引学生参加活动,让他们在实际体验的活动中进行多种听、说训练,在循环反复的练习中学会英语、运用英语。从而帮助学生消除紧张心理,增强学生学习的自信心。如:笔者在教学学生学了颜色词后,对学生进行听的训练:听到老师读颜色词,就举出色卡或画出彩虹、或给物品涂上颜色等等。课堂上成了一个七彩的乐园:小手上摆动着学生们自己制作的色卡和彩虹,更可以看到形色各异的物品图片,令笔者不得不惊叹学生的杰作。从而也发展了学生的创造性思维和培养了动手能力。 3.改编儿歌(Songs)

SSH整合

MyEclipse6.0的SSH整合 Version 1.1 2010-6-20 目录 0.概述 (2) 1.准备环境 (2) 2.创建工程 (10) 3.添加Struts支持 (11) 4.添加Spring支持 (13) 5.配臵数据源 (17) 6.添加Hibernate支持 (28) 7.添加Hibernate反转工程 (35) 8.修改目录结构 (39) 9.测试Spring和Hibernate的整合 (41) 10.整合Struts和Spring (51) 11.测试SSH的整合 (52) 0.概述 MyEclipse 是 Eclipse 的一个优秀插件,用于 Java EE 的开发,提供了诸如数据库管理、文件配臵管理等的一站式服务。然而对

于 SSH 的整合,仅仅使用 MyEclipse 是无法成功实现的。这或许是MyEclipse 的 Bug,因为它自带的部分库文件并不能按照预期进行整合,需要我们手工干预。因此,我们编写这个这个文档,希望对以后的 SSH 整合技术有一定的帮助。 本公司使用 MyEclipse6.0 构建 SSH 项目。对公司开发部开会讨论,开发工具MyEclipse6.0。另外需要指出的是,SSH 的整合有很多方法,这里只介绍其中的一种。作为 Java EE 的开发,我们使用Tomcat5.5 作为 Web 容器,使用 MySQL 作为数据库。 1.准备环境 下面是我们需要使用的软件开发环境: MyEclipse6.0 Tomcat5.5 MySQL5.1 JDK6.0 需要指出的是,各个软件的版本号并不一定需要和上面列出的相同。但是,由于我们编写本教程时的 实验环境是由上述各版本系统搭建的,因此不能确保其它版本的软件是不是能够正常运行。另外由于 MyEclipse 中已经附带了 SSH 所需要的各种库文件,所以我们一般不再需要另外的准备。 对于软件的设臵,我们将 MySQL 数据库编码设臵为 UTF-8。具体方法为: 安装好 MySQL 后,打开 MySQL Server Instance Config Wizard,请根据下面的图示进行设臵: 1) 启动 MySQL 配臵向导界面,点击 Next 继续;

SSH2_增删查改实例

SSH2 增删查改实例 (0)软件和框架版本: MyEclipse 6.0.1 Tomcat 6.0.14 Sturts2 1.8 Hibernate 3 Spring 2.0 Mysql 5.1 (一)引入包(共73个,不一定都需要,但是我的项目是这么多,经过调试,有没包冲突)

(二)创建数据库表 建立数据库octtest,并创建user表,表里面一共4个字段:id,姓,名,年龄。 语句如下: create database octtest; user octtest; DROP TABLE IF EXISTS `users`; CREATE TABLE `users` ( `id` int(10) unsigned NOT NULL, `firstname` varchar(50) NOT NULL, `lastname` varchar(50) NOT NULL, `age` int(10) unsigned NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; (三)用myeclipse 中自带的hibernate reverse engineering 工具,根据刚才创建的user表,自动生成实体User 和相应的User.hbm.xml配置文件。 1)在myeclipse中的视图中创建连接数据库连接,如下图:

填入mysql数据库相应的路径,用户名,密码等信息。注意:这里要引入mysql-connector-java的jar包,需要从外部导入。 2)连接数据库正常后,选择octtest数据库中的user表,右键-》hibernate reverse engineering。自动生成实体User 和相应的User.hbm.xml配置文件。(正常情况下可以生成,但是笔者生成engineer有问题,所以只能够手动创建User类和相应的User.hbm.xml,,所以如果读者顺利创建,可跳过2a,2b两部) 2a)创建User实体类 User.java package com.bean; public class User { public Integer id; public String firstname; public String lastname; public int age;

ssh2实例(带截图)

Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解实例详解(一) 在JavaEE企业级开发中,以SSH2框架为核心的应用非常广,大象根据项目实践经验,通过一个实例,详细的为大家讲解如何实现全注解式的开发。 开发环境 JDK1.6.0_18 Eclipse3.2.1 MyEclipse5.1.0 Tomcat6.0.10 MySQL5.0.27 Navicat Lite for MySQL 8.1.20 每个人的开发环境可能会有差异,但有一点我需要说明的是,JDK的版本不得低于1.5,因为用到了很多1.5版才支持的新特性。Tomcat和MySQL请不要低于我所用的版本,因为我没在其它的版本上进行测试。Navicat则是MySQL数据库的图形化操作工具。我在这里假定各位目前已经设置好了开发环境,下面就开始详细的说明。 由于要阐述的内容比较多,大象决定将它们划分成个几章节来讲,这一章就主要来说说jar包的选择。 第一部分:选择必须的jar包 新建一个web项目,然后将必要的jar包COPY到lib里面。根据本文实例demo,大象给出下图中的最少jar包配置。 我对这些jar包进行一下说明,方便大家理解。

解压Struts2.1.6的lib文件夹,从中选出上面7个jar包添加到我们的工程库中。commons-logging、freemarker、ognl、struts2-core、xwork这5个还是struts2的核心包。但在Struts2.1.6这个版本中,还需要加上commons-fileupload包。如果没有,则启动就会报错,不过不需要像网上传言的那样还得加上commons-io的jar包,这些大象都亲自做过测试。在本实例中,我将对struts2也采取注解的方式,所以用到了struts2-convention-plugin-2.1.6.jar这个插件。因为要与spring整合,所以struts2-spring-plugin-2.1.6.jar也必不可少。 大象在这里偷个懒,直接将spring的完整jar包加了进来,如果各位想精简类库的话,就选取它的分类jar包吧。比如本例使用struts2作为MVC框架,所以spring的webmvc就不可能用到了。有想改的朋友请自己动手改下。另外有点我想说下,如果采取完整spring的jar包,还需要Spring2.5.6\lib\concurrent文件夹中的backport-util-concurrent.jar,如果不加这个,spring会报错。但是采取spring分类jar包的形式,这个可以不用加,至于具体使用什么需要依赖这个包,大象还没去测试过,这个有待验证。还有lib\slf4j下的日志包,目前很多都开始采用基于slf4j 接口的日志器,它的好处就是日志器是根据slf4j的接口来进行实现,可以在不改变代码的情况下更换日志器。最后Spring的源代码中使用的是commons-logging记录日志,因此这个包不能少,不过因为struts2也用到了,所以这里就省了。 Hibernate从3.3版开始,对jar包结构做了一次大的调整,我们只需要加入lib\required文件夹下面的6个jar包。请注意这6个jar包都是使用Hibernate所必须的。另外再加上hibernate 核心包。这里我将slf4j-api-1.5.2.jar换成了1.5.0,这是因为slf4j是一个通用日志接口,不提供任何实现,我在demo里面使用的是log4j,而hibernate包里面没有log4j的slf4j实现。而且如果版本不一致,会有异常,因此我就采用Spring2.5.6\lib\slf4j里面提供的配套版本。另外我将commons-collections-3.1.jar换成了Struts2.1.6里面的3.2版。

活用教材,打造高质量数学课堂

活用教材,打造高质量数学课堂 为什么我选择这样的一个主题作为我的培训内容呢,这是因为,教材数学教师每天要接触的书籍,然而在平时的教学中,我们应该怎样使用好它,才能使我们的教学活动真正能做到创造性地使用教材,很多老师在拿到教材的时候,可能更多的是在想这节课要教什么知识,对于怎么合理的运用教材,用活教材缺少更多的思考。同样的教材,不同的人会读出不同的感受,因为人的知识基础、专业素养、理解方式都不同。然而,读懂教材又是每个教师的本份,是教学的基本功,是教师的必备的品质。 一、目前教师在理解教材时存在的问题 由于部分教师的理解偏差与处理不当,直接影响了课堂的教学效率,例如: (一)直白的呈现教材知识。有些教师对教材认识不足,一边觉得教材难教,一边又草草对付。基本上是把书上提供的素材或练习搬给学生练习一遍,或如何解答讲解一番。至于教材为什么要这样安排,主题图为什么以这样的形式出现,为什么出现这样的练习题等等一干问题概不考虑。 (二)盲目的拔高教材难度。有的教师注重学生的考试能力,为了提高成绩,不顾学生实际,把群体目标升格为个体要求,减弱了学生对数学学习的兴趣。比如算法多样化对于个体来说,只要求其掌握其中一两种基本算法就可以了,并不要求一定要掌握多种算法。如果把多种算法强加于学生个体,无疑是加重了学生的负担,人为地拔高了学习要求。 (三)过度的挖掘教材内容。还有的教师觉得对教材挖掘得越深,拓展得越宽,其达成的效果也就越好。其实,过分或过度在某一处深挖,往往偏离

了设计的初衷,结果只能适得其反。不但使教学目标异化,有时也使学生在学习中无所适从,难以操作,从而最终影响学习目标的有效达成。 (四)人为的增加教材深度。有部分教师在开发教材时过分追求出奇制胜、强调深度挖掘,却忘了“深入”后的“浅出”。教学过程中,大多数学生其实并不能完全理解。究其原因,是教师在使用过程中没有正确理解与领会课标精神,没有深入研究与把握教材编写意图,没有认真探寻与分析孩子的学习起点与认知规律。 二、读懂教材才是硬道理 读懂教材到底应该读什么?懂什么?可以从哪些角度去解读教材呢?其实我们不难发现,教材所呈现的基本内容包括基础知识与技能,也包括过程与方法,还包括蕴含其中的情感态度与价值观。新的课程标准要求教师对所教数学教材的内容结构有统盘系统的掌握。教学时要注意所教知识与前后知识的联系,不能只掌握一册教材的内容。例如:学习分数,北师大版教材三年级下册“分数的初步认识”,学生只须掌握把一个个体看作整体“1”的分数即可。五年级上册“分数的再认识”学生要掌握把多个个体看作整体“1”的分数。这样安排教材符合孩子的年龄特点和认识规律。否则,把五年级的知识,提前到三年级教授,就会增加学习的难度,挫伤学生学习积极性。所以,作为数学教师就要了解教材的编排的知识体系和结构特点,科学合理地开展教学活动,实现教学的最终目标。 (一)读教材本身的特点。 教材的编写是建立在研究和使用的基础之上,注重知识的丰富性、逻辑性、实用性。体现着最新的教学理念,引导学生合理的学习方式,引领教师科学的教学方法,所以,教师既要相信教材,大胆使用教材,又要整体地通

SSH2整合

Spring+Hibernate+Struts2整合文档 一、Spring+Struts2整合: 1、spring配置在web.xml文件中的上下文监听器: contextConfigLocation /WEB-INF/applicationContext*.xml org.springframwork.web.content.ContextLoaderListener 2、struts2配置在web.xml文件中的过滤器: struts2 org.apache.struts2.dispatcher.FilterDispatcher org.springframework.web.context.ContextLoaderListener struts2 /* 3、设置struts.xml文件,就可以使用spring的IOC来管理struts的Action:

科学合理用好教材实现有效课堂教学-教育文档

科学合理用好教材 实现有效课堂教学 教材是知识的载体 , 是教师进行课堂教学的依据。多年 来, “教教材”限制了教师的思想 , 把教师禁锢在死框子里 , 影响 了教师教学水平的提高。它更限制了学生的思维 , 制约了学生的 发展。新课程倡导教师“用教材教” ,因此 , 作为教学一线的教师 应根据学生及教学的实际 , 灵活地、创造性地使用教材 , 选取更好 的内容对教材进行深加工 , 设计出活生生的、丰富多彩的课来 充分有效地将教材的知识激活 , 形成教师教学个性的教材知识。 巧用教材 , 提高效率 学生对数学的兴趣是他们学习数学的原动力 , 要提高数学课 的教学效率 , 就必须激发学生学习数学的兴趣。我们应积极主动 地对课程进行适当的修正和调适 , 灵活使用新教材 , 设计出新颖 的教学过程 , 把枯燥的数学知识转化为激发学生求知欲望的刺激 物, 引发他们的进取心 , 这也是衡量课程实施效果的一个重要因 素。 在教学“百以内的加减法”时 , 为了更好地让学生们掌握计 算能力 , 把枯燥的计算情趣化 , 采用了富有儿童色彩的 “小猫钓 帮白兔收萝卜”“小鸟回家”等游戏形式 , 让孩子们高高 形式 :如形式活泼又有竞争性的游戏比赛 : “争上游”“拍大 数” ;富于思考启发性的“猜谜”“问号旅鱼”“ 兴兴 学计算。在其他方面的教学当中 , 我采用了形式多样的游戏

游”等游戏一一展示

在学生面前 ,学生们都喜形于色 ,跃跃欲试 ,迫不及待地要参加 , 并自觉地遵守游戏规则 , 努力争取正确、迅速地完成游戏中的学 习任务 , 提高了学习效率 ,培养了学生良好的学习习惯和组织纪 律性。 活用教材 , 激发兴趣 我国大教育家孔子曾说过 : “喜之者不如好知者 , 好知者不 可以采用动画、故事等手段创设生动、有趣的问题情境 , 提供活 动材料 , 唤起学生的学习欲望 ,充分调动起学生思维的积极性 , 使 学生处于“心欲求而不得 , 口欲言而不能”的状态 , 从而积极主 动地投入到活动之中 , 自觉地去探索、去发现。 如在教学“ 10 的认识”时 ,我首先提问同学 : 我们学过的数 谁最大 ?同学们都异口同声地回答 :9 最大。于是 , 我就给同学们 讲了《 9骄傲的故事》 : “9”觉得自己是最了不起的数字 ,于是 就骄傲起来 ,谁都看不起。为了改掉“ 9”的骄傲情绪 ,“0”和 1”决定教育它。于是 , “0”跑到了“ 1”的后面 ,组合成了一 个数字,结果, “9”看了看 , 羞得低下了头。同学们 ,你想知 道, “1”和“ 0”组成了什么数字吗 ?“9”为什么感到如乐知者。”因而在教学中 , 根据学生的年龄特征和认知规律

SSH三大框架开发案例

jdk6+myeclipse8.5+tomcat6+oracle+spring2.0+hibernate3+struts2 好了,开始我们的第一个ssh2之旅吧。 首先先分析一下我们的第一个ssh2项目的需求,简单的说就是有一张表单,让你填写用户名和密码,提交后存入数据库。就这么简单,呵呵。 第一步:。我们首先新建一张mysql数据表。 Sql如下: Create table t_employee( Id integer not null primary key, Name varchar(20), Age varchar(20), Sex varchar(20), Tel varchar(20), Address varchar(20))

数据创建好后结构如下: 第二步 打开myeclipse,新建一个web项目,命名为ssh2-2, java ee规范我们选择5,如图 第三步务必小心的一步 导入ssh2的各个jar,步骤如下: 选中当前的项目后,点击菜单烂的myeclipse---project capablities----add hibernate项,跳

出如图 务必按照图示选择,尤其是copy checkde……一项,然后点击next,默认next,去掉specify database……复选框,next,去掉create session……复选框,finish。 再次选中选中当前的项目后,点击菜单烂的myeclipse---project capablities----add spring 项,跳出如图

依然务必按照如是选择,jar文件选择如下5个:

潜心钻研教材 实现有效教学

潜心钻研教材实现有效教学 伴随着基础教育课程体系的诞生,新课程走进学校,受到了教师、学生、家长的广泛认同。新理念下的课标教材注重可读性、实践性、综合性、创造性。然而教材是一个载体,它需要每个教师去研究、去挖掘,去创造。教师只有潜心钻研教材,感悟教材,领会教材,才能达到活用教材,实现有效教学的目的。基于此,笔者谈谈自己的几点体会。 一、深入学习《课程标准》,为钻研教材打好基础 《课程论》一书中指出:“课程编订的再好,教材编写得再好,没有合格而且称职的教师来教,也不能发挥其应有的作用,所以说教师是保证教育质量的关键。有好的教师,即使教材有缺陷,也可以弥补;没有好的教师,即使教材优点很多,也不能把它们发挥出来。”所以说,要创造性使用好新教材,就需要教师不断学习《课程标准》,结合课标理念,潜心钻研教材。再根据学科特点、教学目标、教材的编写意图及学生实际,来灵活有效组织教学,才能拓展课堂教学空间,实现有效教学。 二、准确把握教材的精髓,是实现有效教学的根本 (一)读懂教材,把握教学目标 一位特级教师说过:“教材是执行课程标准与体现课改精神的载体,也是众多教育专家和一线教师智慧的结晶,粗线条的阅读肯定是不行的。教材上的每个章节的每一道例题都有一定的教学目标,不仅如此,例题上的每一个要求和问题,其背后都蕴含着待定的意图,同样各道练习题也有不同层次的要求和目标。因此,仅仅看了表面内容就不假思索,大刀阔斧的变更教材,不是一个智者的教育行为。”可是在教学的很多时候,有些教师只是关注学生是否会做习题,对于其中每个环节的编排意图懒于钻研,导致目标达成的不理想。所以,要用好教材,教师就要先读懂教材。只有这样,才能正确的把握教学目标。如在教学人教版四年级下册“折线统计图”时,通过深读教材,认真分析。了解到折线统计图是在学生已经学过数据的收集和整理,会制作统计表,并能对统计表做简单的分析,在学会制作条形统计图的基础上进行教学的。而且,折线统计图和条形统计图一样都可以表示一定的数量,不同的是折线统计图通过把表示数据的点连接成折线来清楚直观的表示数量增减变化情况。读懂了教材,领悟了教材的编排意图。在教学

交换机ssh典型配置案例

交换机SSH应用配置: 网络连接: SSH终端与交换机建立本地连接,能ping通交换机即可。 交换机及终端配置过程: 在交换机上,SSH支持的认证方式有两种,分别为口令认证和RSA认证。此处采用的SSH客户端为免费的putty程序。 1、口令认证方式: 交换机上的配置: [Quidway] rsa local-key-pair create [Quidway] user-interface vty 0 4 [Quidway-ui-vty0-4] authentication-mode scheme [Quidway-ui-vty0-4] protocol inbound ssh [Quidway] local-user ssh1 [Quidway-luser-ssh1] password simple huawei [Quidway-luser-ssh1] service-type ssh [Quidway] ssh user ssh1 authentication-type password 注:此时添加的ssh用户ssh1的级别为默认的级别1,如果想要管理交换机还需在交换机上配置super password;也可以直接配置ssh1的级别为最高的level 3: [Quidway-luser-ssh1] service-type ssh level 3 客户端的配置: 在Host Name处输入交换机的ip地址:

交换机支持的SSH版本只能为1:

在下面的界面里面选择验证方式为SSH1,不选择验证参数:

单击Open按钮,出现登陆提示框,输入用户名及密码即可:

一个完整的SSH的例子源代码

一个完整的SSH的例子源代码 各个文件齐全 各个文件都是我从项目中一个一个拷贝出来的,一个都不少 Web.xml contextConfigLocation classpath:beans.xml org.springframework.web.context.ContextLoaderListener struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter struts2 /*

整合ssh+ajax案例

SSH+Ajax整合 前几周由于电脑出了点小问题,导致我的学习被耽误了一个多礼拜,还好利用元旦两天放假的时间,我终于把SSH整合技术,和Ajax(运用dwr框架)用户体验技术给补上了。不过这些只是些简单的小例子。SSH和Ajax还有很多很高深的东西还有待我们去发掘!!不多说废话了。我把我的配置步骤及环境一步一步的写出来,以供大家参考: 首先说下我的配置环境: 开发工具: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:如 图所示:

SSH框架整合详解(精典)

已经经过本人测试 第一步:准备工作 MyEclipse 6.0------T omcat6.0 所需jar文件:(所有jar文件已整理ssh_jars文件夹)注意:ssh_test项目中采用的是MySql 数据库。而本文档中配置的是Oracle数据库,注意其中配置的不同之处哦(在相应的地方有注明) 第二步:(建立项目,包结构,导入所需jar文件) 新建一个web project:

建立包结构如下: 各包功能说明: com.ssh.config : 配置文件(*.properties),如数据库配置信息com.ssh.resource : 资源文件 https://www.sodocs.net/doc/201002120.html,m : 公共工具(util)包

com.ssh.util.orm.hibernate : hibernate DAO 模板com.ssh.model : 各实体类文件 com.ssh.service : 业务逻辑包相当于biz com.ssh..test : 测试包 com.ssh.action : struts Action 包结构可以根据自己需要自行划分 导入jar文件: 新建一个User Library: sshJars 添加jar文件:

将新建的User Library: sshJars加入到项目中: 第三步:撰写资源文件 jdbc.properties 在jdbc.properties 里写上连接数据库的配置信息,此文件的配置信息用于在spring的配置文件中使用,数据库的配置信息也可以写到Spring 的配置文件中,这在一个jdbc.properties文件中是为了方便更改. 在com.ssh.resource包中新建下列文件:

ssh整合web导出excel案例

基于Spring,Struts2,Hibernate整合, jsp页面导出(下载)excel文件的简单应用 1)本例不采用Java任何导出excel文件常用的poi或者jxl 等第三方jar包,仅仅基于I/O,做一个最简单的ssh整合excel文件导出(下载)。 2)2-3为功能展示 a.主页展示 ·导出当前页到excel文件 ·导出全部到excel文件 b.详细信息展示(下属子地名) ·导出当前页到excel文件 3)4-7为ssh整合相关xml配置 a. Spring相关xml配置 b. Hibernate相关xml配置 c. Struts2相关xml配置 d. web.xml配置(Spring容器的实例化,struts过滤器的配置) 3)8-14为源代码 a.action代码 b.service代码(导出excel文件具体实现,包括下载文件名中文乱码问题,详见代码注释) c.dao代码 4)15-17为jsp页面 a.index.jsp(主页) b.list.jsp(列表显示) c.detail.jsp(详细信息-子地址列表显示)

1.导入相关jar包(ssh+dbcp) 2.本例导出全国地址详细信息,数据库中数据内容如下: 3.功能展示 a.主页

b.导出当前页(文件名为当前页起始id到结束id)

c.导出当前页的excel文件内容 d.导出全部

e.下属地名详细信息 f.导出下属地名

4.spring配置

相关主题