工作笔记3.手把手教你搭建SSH(struts2+hibernate+spring)环境
上文中我们介绍《工作笔记2.软件开发经常使用工具》
从今天開始本文将教大家怎样进行开发?本文以搭建SSH(struts2+hibernate+spring)框架为例,共分为3步:
1)3个独立配置:struts2、 Hibernate、 Spring
2)2个整合:整合Sring和struts2、 整合Spring和Hibernate
3)资源分类
开发包、软件、框架源代码,已经共享到百度网盘:http://pan.baidu.com/s/1o6FkbA6
一、3个独立配置
1、Struts2:
1.1jar包
拷贝此路径下的全部jar包,并放置在WebRoot/WEB-INF/lib中,路径:
Struts2开发包__struts-2.1.8.1-all\struts-2.1.8.1\apps\struts2-blank-2.1.8.1\WEB-INF\lib全部包
1.2拷贝配置文件
1.2.1struts.xml
拷贝已有struts.xml文件,并放置在config中,路径:struts2-blank-2.1.8.1\WEB-INF\src\java或:struts2-blank-2.1.8.1\WEB-INF\classes
1.2.2web.xml,核心过滤器
拷贝下图中红色框部分至web.xml中
1.3改动struts.xml文件
在struts.xml中加入下图中红色框部分代码
2.Hibernate
2.1jar包
拷贝此路径下的全部jar包,并放置在WebRoot/WEB-INF/lib中:
核心包1个:hibernate3.jar,路径:hibernate-distribution-3.6.0.Final
依赖包6个:requested,路径:\hibernate-distribution-3.6.0.Final\lib\required中全部。
Jpa1个:hibernate-jpa-2.0-api-1.0.0.Final.jar,路径:hibernate-distribution-3.6.0.Final\lib\jpa
数据库连接池1个,c3p0-0.9.1.jar,路径:hibernate-distribution-3.6.0.Final\lib\optional\c3p0
数据库驱动jdbc:mysql-connector-java-5.1.7
2.2配置文件
2.1.1主配置文件,hibernate.cfg.xml
2.1.2日志文件,Log4j.properties
2.1.3映射文件,*.hbm.xml,与实体相关
2.3改动hibernate配置文件
改动:hibernate.cfg.xml,加入例如以下配置信息:
数据库连接信息
其它配置:自己主动建表、显示sql语句、配置二级缓存
导入映射文件
3.Spring
3.1jar包-5
拷贝此路径下的全部jar包,并放置在WebRoot/WEB-INF/lib中,路径:
核心包:spring.jar
依赖包,AOP相关3。原理:动态代理+cglib子类方式代理
Aspect:aspectjrt.jar、aspectjweaver.jar
Cglib:cglib-nodep-2.1_3.jar
日志,commons-logging.jar
3.2配置文件
改动applicationContext.xml或Beans.xml配置文件
注解方式
二、2个整合
4.整合spring和struts,目的:Action交由spring管理
4.1整合目的:
原来:通过反射,生成实例
如今:从spring容器中拿对象
4.2jar包
Struts2-spring-plugin-2.1.8.1,jar
4.3配置文件
配置文件:配置spring用于初始化容器对象的监听器
路径:Spring开发包__spring-framework-2.5.6.SEC01-with-dependencies\spring-framework-2.5.6.SEC01\docs\reference\html_single---15.2
5.整合spring和Hibernate
5.1整合目的
管理SessionFactory实例(仅仅须要一个)
声明式事务管理(xml/注解)
5.2步骤:
1、首先在applicationContext.xml中标注
2、新建实例User.java
3、建立相应的“实体映射类”User.hbm.xml
4、把User.hbm.xml,拖拽到hibernate.cfg.xml中
5.3运行JUnit后,自己主动建表
三、资源分类
源代码文件夹是classpath的根文件夹
WebRoot/WEB-INF目录不能直接訪问,须要经过Action携带信息
开发的时候,能够进行分类,可是实际输出的是一个文件夹
总结:
工作笔记3.手把手教你搭建SSH(struts2+hibernate+spring)环境的更多相关文章
- 手把手教你搭建SSH框架(Eclipse版)
原文来自公众号[C you again],若需下载完整源码,请在公众号后台回复"ssh". 本期文章详细讲解了SSH(Spring+SpringMVC+Hibernate)框架的搭 ...
- ssh(Struts2+hibernate+spring)简单分页
实体类+实体映射+entity(pagebean)+dao层+service层+action层
- 庐山真面目之十一微服务架构手把手教你搭建基于Jenkins的企业级CI/CD环境
庐山真面目之十一微服务架构手把手教你搭建基于Jenkins的企业级CI/CD环境 一.介绍 说起微服务架构来,有一个环节是少不了的,那就是CI/CD持续集成的环境.当然,搭建CI/CD环境的工具很多, ...
- 大数据江湖之即席查询与分析(下篇)--手把手教你搭建即席查询与分析Demo
上篇小弟分享了几个“即席查询与分析”的典型案例,引起了不少共鸣,好多小伙伴迫不及待地追问我们:说好的“手把手教你搭建即席查询与分析Demo”啥时候能出?说到就得做到,差啥不能差人品,本篇只分享技术干货 ...
- 手把手教你搭建 ELK 实时日志分析平台
本篇文章主要是手把手教你搭建 ELK 实时日志分析平台,那么,ELK 到底是什么呢? ELK 是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch.Logstash 和 Kiban ...
- 手把手教你搭建Pytest+Allure2.X环境详细教程,生成让你一见钟情的测试报告(非常详细,非常实用)
简介 宏哥之前在做接口自动化的时候,用的测试报告是HTMLTestRunner,虽说自定义模板后能满足基本诉求,但是仍显得不够档次,高端,大气,遂想用其他优秀的report框架替换之.一次偶然的机会, ...
- 手把手教你搭建FastDFS集群(下)
手把手教你搭建FastDFS集群(下) 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/u0 ...
- 手把手教你搭建FastDFS集群(中)
手把手教你搭建FastDFS集群(中) 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/u0 ...
- 手把手教你搭建FastDFS集群(上)
手把手教你搭建FastDFS集群(上) 本文链接:https://blog.csdn.net/u012453843/article/details/68957209 FastDFS是一个 ...
随机推荐
- openSUSE 国内镜像摘要
1. 北交(BJTU): http://mirror.bjtu.edu.cn/opensuse http://mirror.bjtu.edu.cn/packman/suse 2. 华中科大(HUST) ...
- qml动画控制器AnimationController
AnimationController: 一般的动画是使用定时器来完毕的,可是AnimationController同意给定的动画,手动控制,能够通过控制她的progress属性来操作动画的进度. c ...
- Java 信号 Semaphore 简介
Semaphore当前在多线程环境下被扩放使用.操作系统的信号量是个非常重要的概念,在进程控制方面都有应用. Java 并发库 的Semaphore 能够非常轻松完毕信号量控制,Semaphore能够 ...
- Cordova WP8 插件开发
原文:Cordova WP8 插件开发 前面博客中介绍了Cordova WP8平台上的安装部署,Cordova扩展可以利用WP8本地代码扩展WebApp的功能,调用本地能力需要开发相应的插件,下面以闪 ...
- JQuery EasyUI学习框架
前言 前端技术,新项目的开发拟使用EasyUI框架(基于EasyUI丰富UI组件库),项目负责人的提示EasyUI分配给我这个任务.发展前,我需要这对于一个新手EasyUI框架学习一些基本的入门.记录 ...
- cocos2d-x3.0 解释具体的新的物理引擎setCategoryBitmask()、setContactTestBitmask()、setCollisionBitmask()
转载请注明出处:游戏开发实验室http://blog.csdn.net/u010019717/article/details/32942641 我在编写游戏的时候遇到了这个问题. 物理引擎其它的内容 ...
- css3 3d旋转动画
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- 准确率和召回率(precision&recall)
在机器学习.推荐系统.信息检索.自然语言处理.多媒体视觉等领域,常常会用到准确率(precision).召回率(recall).F-measure.F1-score 来评价算法的准确性. 一.准确率和 ...
- Andio Studio
坑一:layout文件中提示(见图):(关键词检索:因为百度和google的时候都没看到这个东东,只在stackoverflow上看到这个提问,但是还没人回答.希望大家可以百度到我这条) ①:Chec ...
- 左右v$datafile和v$tempfile中间file#
v$datafile关于存储在文件中的数据视图的信息,v$tempfile查看存储在一个临时文件中的信息. 有两种观点file#现场,首先来看看官方文件的定义: V$DATAFILE This vie ...