J2EE学习笔记_SSH框架

1. 关于搭建3框架问题,MyEclipse版本用5.5或6.0.1版本的容易成功,具体原因是包冲突。注意搭建时3框架加入的次序。一种是自底向上,顺序为hibernate->spring->struts。一种是自顶向下,顺序是Struts->Spring->Hibernate。当然熟练到一定程度,可以不按这两种方式了。选择Spring框架和Hibernate框架时注意选择copy library选项,具体原因是包冲突时,删除相对容易些。
2. 选择Spring框架时加入AOP Libraries,Core Libraries,Persistence Core Libraries,以及Web Libraries类包就行了;选择Hibernate框架时,加入Hibernate __Core Libraries-<MyEclipse-Library>类包就可以了。如果报错的话一般是缺少类包,只要在网上下载最新版本的类包既可以了。
3. 整合SS时Spring的加载有两种方式:一种是在Struts-config.xml中实现,在</struts-config>之前加入

<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
   <set-property property="contextConfigLocation"
    value="/WEB-INF/applicationContext.xml" />
</plug-in>
注意将<action中的type属性改为type="org.springframework.web.struts.DelegatingActionProxy";另一种方式:在web.xml中实现,加载如下,
</context-param>
 <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>
   /WEB-INF/applicationContext.xml
  </param-value>
 </context-param>
<!--通过servlet加载--> 
 <servlet>
  <servlet-name>context</servlet-name>
  <servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class>
 </servlet>
 
<!--通过listener加载,两种方法选一即可以
<listener>
 <listener-class>
   org.springframework.web.context.ContextLoaderListener
 </listener-class>
</listener>-->
同样注意将Struts-config.xml的“<action”中的type属性改为type="org.springframework.web.struts.DelegatingActionProxy"。方式二可以加入多个Spring配置文件,本文中applicationContext.xml文件路径"/WEB-INF/applicationContext.xml"
4. 用Hibenate生成逆向工程时,使<generator class="increment" />,可以减少好多不必要麻烦
5. Spring整合Hibernate要用到事务提交机制,否则的话数据不能保存到数据库中,之所以MySQL可以保存,是因为MySQL本身的bug问题。

具体操作如下:在applicationContext.xml中,加入下列代码,
<!-- 声明一个 Hibernate 3 的 事务管理器供代理类自动管理事务用 -->
 <bean id="transactionManager"
  class="org.springframework.orm.hibernate3.HibernateTransactionManager">
  <property name="sessionFactory">
   <ref local="sessionFactory" />
  </property>
 </bean>
 
 <bean id="UsersDAOProxy"<!--此处bean id可以自己取-->
  class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">

  <!-- 注意这个属性, 详细意义请参考文章开头的参考资料, 必须为 true 使用CGLIB才不用强制编写DAO接口 -->
  <property name="proxyTargetClass">
   <value>true</value>
  </property>

  <property name="transactionManager">
   <ref bean="transactionManager" /><!--注意保持一致-->
  </property>
  <property name="target">
   <ref local="UsersDAO" /><!--注意此处local指的是本文件中可以操作entity的DAO,或自己写,或Hibernate自动生成-->
  </property>
  <property name="transactionAttributes">
   <props>
    <!-- 这里的方法签名可以精确到方法, 先懒惰一下全配置上 -->
    <prop key="*">PROPAGATION_REQUIRED</prop>
   </props>
  </property>
 </bean>
此处还要注意的一件事是,以前有DAO做的配置,全部要改成有DAO代理来配置。
6. 整合完毕后,一般报asm的错误,原因是Referenced Libraries中,asm.jar和asm-2.2.3.jar冲突,删掉asm-2.2.3.jar即可。
7. log4j.properties文件,在工程名上点击右键new一个file命名为log4j.properties,确定后。打开在里边写入:
# Configure logging for testing: optionally with log file
log4j.rootLogger=WARN, stdout
# log4j.rootLogger=WARN, stdout, logfile

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n

log4j.appender.logfile=org.apache.log4j.FileAppender
log4j.appender.logfile.File=target/spring.log
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n
后保存,重新发布工程,重启Tomcat,可以在console中看到出错信息,用于查找错误
8. 在spring中如何配置的log4j? 
在web.xml中加入以下代码即可。 
<context-param> 
<param-name>log4jConfigLocation</param-name> 
<param-value>/WEB-INF/log4j.properties</param-value> 
</context-param>


9.整合所需jar包

hibernate的配置包的导入

Hibernate3.jar hibernate核心包

antlr-2.7.6.jar 一个语言转换工具,Hibernate利用它实现 HQL 到 SQL 的转换模板相关操作需要包

commons-collections-3.1.jar collections Apache 的工具集

javassist-3.9.0.GA.jar 代码生成工具,  Hibernate用它在运行时扩展 Java类和实现,同cglib包  

dom4j-1.6.1.jar dom4j XML 解析器

jta-1.1.jar 标准的 JAVA 事务处理接口

slf4j-api-1.5.8.jar和slf4j-log4j12-1.5.0.jar hibernate使用的一个日志系统 

cglib.jar CGLIB 字节码解释器

asm.jar ASM字节码库 如果使用“cglib”则必要

asm-attrs.jar ASM字节码库 如果使用“cglib”则必要

如果想使用缓存需要加入:ehcache.jar EHCache缓存

连接数据库加入相关包....  


spring的配置包的导入

spring-beans.jar 访问配置文件、创建和管理bean 以及进行Inversion of Control / Dependency Injection(IoC/DI)操作相关的所有类

spring-context.jar 可以找到使用Spring ApplicationContext特性时所需的全部类,JDNI 所需的全部类,instrumentation组件以及校验Validation 方面的相关类

spring-core.jar Spring 框架基本的核心工具类

spring-jdbc.jar 包含对Spring 对JDBC 数据访问进行封装的所有类

spring-orm.jar 对映射框架的一些支持

spring-tx.jar 提供对事务的支持

如果还需要AOP的支持,还要加上aspectjrt.jar和aspectjweaver.jar  

struts2的配置包的导入

struts2-core-2.0.11.2.jar struts2核心包

freemarker-2.3.8.jar 模板相关操作所需包

ognl-2.6.11.jar ognl表达式所需的核心包

xwork-2.05.jar xwork的核心包

commons-logging-1.0.4.jar 主要用于日志处理

struts2+spring配置包:struts2-spring-plugin-2.0.11.2.jar

其它可选包:  

commons-beanutils-1.6.jar

commons-dbcp-1.2.2.jar

commons-pool-1.4.jar 

commons-fileupload-1.2.1.jar

commons-io-1.4.jar

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值