- 浏览: 2182439 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (682)
- 软件思想 (7)
- Lucene(修真篇) (17)
- Lucene(仙界篇) (20)
- Lucene(神界篇) (11)
- Solr (48)
- Hadoop (77)
- Spark (38)
- Hbase (26)
- Hive (19)
- Pig (25)
- ELK (64)
- Zookeeper (12)
- JAVA (119)
- Linux (59)
- 多线程 (8)
- Nutch (5)
- JAVA EE (21)
- Oracle (7)
- Python (32)
- Xml (5)
- Gson (1)
- Cygwin (1)
- JavaScript (4)
- MySQL (9)
- Lucene/Solr(转) (5)
- 缓存 (2)
- Github/Git (1)
- 开源爬虫 (1)
- Hadoop运维 (7)
- shell命令 (9)
- 生活感悟 (42)
- shell编程 (23)
- Scala (11)
- MongoDB (3)
- docker (2)
- Nodejs (3)
- Neo4j (5)
- storm (3)
- opencv (1)
最新评论
-
qindongliang1922:
粟谷_sugu 写道不太理解“分词字段存储docvalue是没 ...
浅谈Lucene中的DocValues -
粟谷_sugu:
不太理解“分词字段存储docvalue是没有意义的”,这句话, ...
浅谈Lucene中的DocValues -
yin_bp:
高性能elasticsearch ORM开发库使用文档http ...
为什么说Elasticsearch搜索是近实时的? -
hackWang:
请问博主,有用solr做电商的搜索项目?
Solr中Group和Facet的用法 -
章司nana:
遇到的问题同楼上 为什么会返回null
Lucene4.3开发之第八步之渡劫初期(八)
SSH框架集成,可以说是JAVA Web开发中的一大利器,这些框架都经历了众多企业级开发的考验,散仙,今天写此篇文章的目的,第一呢,是自己好久没写过Web开发的例子,算是练练手,第二呢,也是最重要的一个目的,是为了某一个重要的人,而写的。
所以散仙尽量会以入门者的心态,来阐述整个小项目环境的搭建以及部署开发的流程,尽量让大家通俗易懂,一目明了。
在这之前,先谈谈SSH的使用状况,SSH框架集成,仍是当前中小型企业开发的首选利器,虽然近几年,使用Spring MVC+MyBatics+Spring有所增长,但以整体的趋势来看,SSH仍是当前开发的经典主流,因为使用SSH开发,足可以应对90%的企业级网站开发,当然更大型的网站架构以及开发可能会倾向于EJB+JPA+JSF的模式开发,这种情况,已经非常罕见了,
大部分的时候,我们使用不上这种网站架构。
下面开始进入正题,先看来下项目的开发环境:
散仙本次写此篇文章,除了有完整的环境搭建步骤外,还有一个显示数据库的数据,到前台的功能,其他的删除,添加,修改功能,留给各位学习的朋友,做为练习,如果有什么不明白的地方,可以留言给散仙。
数据库表的设计,主要有2个表,一个学生表,一个班级表,有学生表里面的班级id和班级表里面的id是主外键关系,建表时候,最好先建外键表,再建主键表,截图如下:
第一步,创建一个Web项目
第二步,添加Hibernate的功能,具体步骤,如下截图所示:
然后,就可以创建一个hibernate的数据源了,后面生成实体类会用到。截图如下:
第一步,添加Spring功能,截图如下:
第三步,添加Struts的功能:
完成后,截图如下:
web.xml配置如下:
按3层架构,写好的类结构图如下,Spring文件,为了直观,就分离开:
ac.xml里面的配置:
Struts的文件里内容:
项目运行的一个截图:
其他部分的,代码,散仙在这里就不截图了,后面散仙会把整个小项目例子上传上来,有需要的朋友们,可以下载下来,进行参考。
学习过程中,如遇到解决不了的问题,可以留言。
所以散仙尽量会以入门者的心态,来阐述整个小项目环境的搭建以及部署开发的流程,尽量让大家通俗易懂,一目明了。
在这之前,先谈谈SSH的使用状况,SSH框架集成,仍是当前中小型企业开发的首选利器,虽然近几年,使用Spring MVC+MyBatics+Spring有所增长,但以整体的趋势来看,SSH仍是当前开发的经典主流,因为使用SSH开发,足可以应对90%的企业级网站开发,当然更大型的网站架构以及开发可能会倾向于EJB+JPA+JSF的模式开发,这种情况,已经非常罕见了,
大部分的时候,我们使用不上这种网站架构。
下面开始进入正题,先看来下项目的开发环境:
名称 | 描述 |
Web容器 | Tomcat7 |
IDE工具 | Myeclipse10.1 |
平台 | Windows |
语言 | JAVA |
JDK | 1.7 |
数据库 | MySQL5.1 |
Spring | 3.0,myeclipse自带 |
Struts | 2.1,myeclipse自带 |
Hibernate | 3.3,myeclipse自带 |
对人要求 | 保持一份不浮躁的心情,和一种积极向上心态。 |
其他 | 若侥幸搭建成功,希望你能勤加练习,并记录总结下心得,当然如果失败,任何问题可以随时联系散仙得以解决。 |
散仙本次写此篇文章,除了有完整的环境搭建步骤外,还有一个显示数据库的数据,到前台的功能,其他的删除,添加,修改功能,留给各位学习的朋友,做为练习,如果有什么不明白的地方,可以留言给散仙。
数据库表的设计,主要有2个表,一个学生表,一个班级表,有学生表里面的班级id和班级表里面的id是主外键关系,建表时候,最好先建外键表,再建主键表,截图如下:
第一步,创建一个Web项目
第二步,添加Hibernate的功能,具体步骤,如下截图所示:
然后,就可以创建一个hibernate的数据源了,后面生成实体类会用到。截图如下:
第一步,添加Spring功能,截图如下:
第三步,添加Struts的功能:
完成后,截图如下:
web.xml配置如下:
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:ac*.xml</param-value> </context-param> <filter> <filter-name>osiv</filter-name> <filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class> </filter> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>osiv</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <login-config> <auth-method>BASIC</auth-method> </login-config> </web-app>
按3层架构,写好的类结构图如下,Spring文件,为了直观,就分离开:
ac.xml里面的配置:
<?xml version="1.0" encoding="UTF-8"?> <beans default-autowire="byName" xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd "> <!-- 配置数据源 --> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="username" value="root"></property> <property name="password" value="root"></property> <property name="url" value="jdbc:mysql://localhost:3306/tt"></property> <property name="driverClassName" value="com.mysql.jdbc.Driver"></property> </bean> <!-- sessionFactory工厂,Hibernate和Spring集成后,一般由Spring通过依赖注入负责管理 --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <!-- 加载实体类配置XML --> <property name="mappingResources"> <list> <value>com/entity/Classes.hbm.xml</value> <value>com/entity/Student.hbm.xml</value> </list> </property> </bean> <!-- 定义抽象BaseDao --> <bean id="baseDao" class="com.commons.BaseDao" abstract="true"> </bean> <!-- 定义抽象业务层 --> <bean id="baseSerivices" class="com.commons.BaseSerivices" abstract="true"></bean> <!-- 定义hibernate事务管理器 --> <bean id="tx" class="org.springframework.orm.hibernate3.HibernateTransactionManager"></bean> <!-- 定义事务通知 --> <tx:advice id="txAdvice" transaction-manager="tx"> <tx:attributes> <tx:method name="*" propagation="REQUIRED"/> <tx:method name="get*" propagation="SUPPORTS"/> <tx:method name="find*" propagation="SUPPORTS"/> </tx:attributes> </tx:advice> <!-- 定义aop切面 --> <aop:config> <aop:pointcut expression="execution(* com.service.*.*(..))" id="pc"/> <aop:advisor pointcut-ref="pc" advice-ref="txAdvice"/> </aop:config> </beans>
Struts的文件里内容:
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd"> <struts> <constant name="struts.objectFactory" value="spring"></constant> <package name="zhutingting" extends="struts-default"> <action name="showAll" class="studentAction" method="selectAll"> <result name="success">/index.jsp</result> </action> </package> </struts>
项目运行的一个截图:
其他部分的,代码,散仙在这里就不截图了,后面散仙会把整个小项目例子上传上来,有需要的朋友们,可以下载下来,进行参考。
学习过程中,如遇到解决不了的问题,可以留言。
- SSH集成例子.zip (843.4 KB)
- 下载次数: 209
发表评论
-
在spring-boot中使用@ConfigurationProperties
2017-10-28 19:24 1921@ConfigurationProperties注解的作用 ... -
如何在Spring Boot项目使用参数校验
2016-11-02 16:30 6552开发web项目有时候我们需要对controller层传过来的参 ... -
Spring-Boot中如何使用多线程处理任务
2016-08-25 19:36 5957[size=medium]看到这个标题,相信不少人会感到 ... -
使用SpringBoot1.4.0的一个坑
2016-08-16 10:08 7347时隔半年,再次使用Spring Boot快速搭建微服务,半 ... -
如何在Spring中注入ElasticSearch实例
2016-04-06 18:44 6301在企业级项目开发中,大多数公司都会集成Spring来简化开发 ... -
IntelliJ IDEA中使用svn遇到的小问题
2015-06-04 20:20 3480今天在用新装的IDEA 14. ... -
Spring Boot开发之弄月吟风 (三)
2015-04-27 21:11 8505今天来看下,如何在Spring Boot中使用热加载和集成V ... -
Spring Boot开发之流水无情(二)
2015-04-26 19:45 11769上篇散仙写了一个很 ... -
Spring Boot开发之明月千城(一)
2015-04-24 01:27 16608最近数据分析的项目也即将告一段落了,中间也积累了很多知识 ... -
记一次log4j日志文件小事故
2015-01-30 21:31 2501最近散仙在做公司的一个跟搜索有关的数据分析(Pig+Hadoo ... -
了解HTTP协议
2014-02-23 11:08 809http协议全称超文本传 ... -
Spring MVC+MyBatics+Spring集成小例子
2014-01-12 15:56 3160散仙,在前面的博客中写过一篇,Spirng MVC+Hiber ... -
Spring项目的几种乱码问题解决思路
2014-01-12 14:33 1688与Spring结合做Web项目时,常常会出现乱码情况,这时候, ... -
配置Mybatics的XML文件的自动提示功能
2014-01-12 14:03 3344配置Mybatics的mapper文件的自动提示功能, M ... -
Spring MVC+Hibernate+Spring集成小例子
2014-01-08 20:30 4529上次,散仙给了一个关于Sping MVC注解简单的小例子,那么 ... -
Spring MVC+SimpleJdbcDaoSupport增删改查小例子
2014-01-03 17:38 2416散仙,上次给的例子是基于Spring MVC+JDBC的方式做 ... -
基于Spirng MVC注解入门
2014-01-01 23:21 1284spring2.5引入注解式处理器支持,通过@Controll ... -
Spring+Spring MVC+JDBC增删改查小例子
2014-01-01 21:52 3759此篇文章,也是作为入门时的一个小练习例子,使用的是JDBC完成 ... -
Spring MVC入门小例子
2014-01-01 21:36 3265入门Spring MVC也有一段时间了,今天写篇文章总结一下 ... -
JSP下载中文名乱码问题
2013-12-30 19:02 1272上传下载功能,几乎是 ...
相关推荐
Struts2、Spring和Hibernate是Java Web开发中的三大框架,它们的组合被称为SSH2。SSH2框架集成可以实现MVC(Model-View-Controller)架构,提供强大的数据持久化、业务逻辑管理和用户界面控制能力。下面我们将详细...
Struts2+Spring+Hibernate和Struts2+Spring+Ibatis是两种常见的Java Web应用程序集成框架,它们分别基于ORM框架Hibernate和轻量级数据访问框架Ibatis。这两种框架结合Spring,旨在提供一个强大的、可扩展的、易于...
Struts2、Spring2和Hibernate3是Java Web开发中的经典技术栈,被广泛应用于企业级应用的构建。这个实例结合了这三大框架,提供了一个完整的功能模块,包括用户注册、数据查询、搜索以及分页显示,非常适合初学者进行...
【标题】"Spring+Struts2+Hibernate+MySQL-三大框架例子"是一个综合性的项目,展示了如何在Java Web开发中集成三大主流框架:Spring、Struts2和Hibernate,以及使用MySQL作为后端数据库。这个项目可能是一个学生分数...
Spring2则是Spring框架的一个版本,它提供了一个全面的编程和配置模型,用于简化企业级Java应用的开发。Spring的核心特性包括依赖注入(DI),面向切面编程(AOP),以及用于处理事务、数据访问和Web应用的模块。在...
Struts1、Hibernate和Spring是Java企业级开发中经典的三个框架,它们的组合通常被称为SSH(Struts1、Spring、Hibernate)集成框架。这个开发例子是基于SSH来实现一个基本的CRUD(创建、读取、更新、删除)功能,这...
在"Struts2+Hibernate+Spring三大框架集成范例"中,我们可以看到一个综合性的示例项目,这个项目包含了基本的登录、查询和数据操作功能,这些都是Web应用的核心部分。以下是这些框架集成的关键知识点: 1. **Struts...
Struts2、Hibernate和Spring是Java Web开发中的三大框架,它们各自负责不同的职责,而将它们集成在一起可以构建出高效、灵活的企业级应用。这个"struts2+hibernate+spring集成的增删改查例子"是一个典型的教程,旨在...
Struts2、Hibernate和Spring是Java开发中三大重要的框架,它们各自在Web应用程序开发中扮演着不同的角色。Struts2是MVC(Model-View-Controller)架构模式的一个实现,负责处理用户请求并控制应用程序流程;...
Struts2、Hibernate3和Spring是Java开发中的三大框架,它们的组合被称为“S2H3S”,在企业级应用开发中广泛应用。这个压缩包文件很可能是为了展示或教学这三者如何协同工作的一个小型示例项目。 Struts2是一个MVC...
这个"Struts2+Hibernate+Spring的好例子"是一个很好的学习资源,可以帮助开发者深入理解这三大框架的集成与协作。 Struts2作为MVC(Model-View-Controller)框架,主要负责处理HTTP请求,控制应用的流程。它提供了...
这个例子工程虽然简单,但它涵盖了这些框架的基础使用,对于初学者理解三大框架的集成和CRUD操作有着很好的指导意义。通过深入学习和实践,开发者可以进一步掌握更复杂的应用场景,提升自己的开发技能。
总之,Struts2+Spring+Hibernate的组合提供了强大的企业级应用开发能力,而这个Demo则展示了如何在MyEclipse 8.5环境下进行整合和配置,对于学习和理解SSH框架的集成具有很高的参考价值。通过熟练掌握这种技术栈,...
Struts、Spring和Hibernate是Java Web开发中的三大框架,它们各自负责不同的职责,组合使用能够构建出高效、灵活的企业级应用程序。在这个简单的例子开发中,我们将深入理解这三个框架的集成和工作原理。 **Struts...
"Struts2+Hibernate+Spring" 是一个经典的Java企业级应用程序开发框架组合,也被称为SSH框架。这个完整的例子是为那些已经对J2EE有一定基础的程序员设计的,旨在帮助他们理解和掌握这三大框架的集成使用。下面我们将...
SSH2框架整合指的是将Struts2、Hibernate和Spring三个开源框架集成在一起,以构建更高效、灵活的企业级Java Web应用程序。在这个例子中,使用的版本分别是Struts2.1.6、Hibernate3.3.2和Spring2.5.6。 首先,让我们...
Struts、Hibernate和Spring是Java开发中非常流行的三大框架,它们各自负责Web应用程序的不同层面:Struts处理MVC模式中的视图和控制器,Hibernate管理持久层的数据操作,而Spring则提供了一个全面的轻量级应用框架,...
在这个“struts1+spring+hibernate+freemarker一个小例子”中,我们将探讨这四个组件如何协同工作,以及它们各自的核心功能。 首先,Struts1是MVC(模型-视图-控制器)设计模式的一个实现,主要用于处理HTTP请求和...
在这个例子中,"一个Struts2+hibernate+spring整合的例子"展示了如何将这三个框架集成到一个项目中。首先,你需要理解每个框架的基本概念: 1. **Struts2**:它是基于MVC设计模式的,用于处理用户请求,调度控制...