个人类网站类网站外贸网站建设深圳
- 作者: 五速梦信息网
- 时间: 2026年03月21日 11:13
当前位置: 首页 > news >正文
个人类网站类网站,外贸网站建设深圳,自在源码网,郑州高端网站公司SSH 为 strutsspringhibernate 的一个集成框架#xff0c;是目前较流行的一种JAVA Web应用程序开源框架。 Struts Struts是一个基于Sun J2EE平台的MVC框架#xff0c;主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求#xff0c;简单易用#xff0…SSH 为 strutsspringhibernate 的一个集成框架是目前较流行的一种JAVA Web应用程序开源框架。 Struts Struts是一个基于Sun J2EE平台的MVC框架主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求简单易用敏捷迅速在过去的一年中颇受关注。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中开发人员利用其进行开发时不用再自己编码实现全套MVC模式极大的节省了时间所以说Struts是一个非常不错的应用框架。 官方地址http://struts.apache.org Spring Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。 Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器。然而这仅仅是完整图景中的一部分Spring在使用IOC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。 Spring提供了唯一的数据访问抽象包括简单和有效率的JDBC框架极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象它能够在各种底层事务管理技术例如JTA或者JDBC事务提供一个一致的编程模型。Spring提供了一个用标准Java语言编写的AOP框架它给POJOs提供了声明式的事务管理和其他企业事务–如果你需要–还能实现你自己的aspects。这个框架足够强大使得应用程序能够抛开EJB的复杂性同时享受着和传统EJB相关的关键服务。Spring还提供了可以和IoC容器集成的强大而灵活的MVC Web框架。 官方地址spring: http://www.springsource.org Hibernate Hibernate是一个开放源代码的对象关系映射框架它对JDBC进行了非常轻量级的对象封装使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合既可以在Java的客户端程序实用也可以在Servlet/JSP的Web应用中使用最具革命意义的是Hibernate可以在应用EJB的J2EE架构中取代CMP完成数据持久化的重任。 官方地址http://www.hibernate.org 在SSH 的组合框架模式中三者各自的作用 Struts 是一个很好的MVC框架主要技术是Servlet和Jsp。Struts的MVC设计模式可以使我们的逻辑变得很清晰让我们写的程序层次分明。 Spring 提供了管理业务对象的一致方法并鼓励注入对接口编程而不是对类编程的良好习惯使我们的产品在最大程度上解耦。 Hibernate 是用来持久化数据的提供了完全面向对象的数据库操作。Hibernate对JDBC进行了非常轻量级的封装它使得与关系型数据库打交道变得非常轻松。 以下是SSH架构图 SSH架构图 Struts负责Web层 ActionFormBean接收网页中表单提交的数据然后通过Action进行处理再Forward到对应的网页在Struts-config.xml中定义了action-mappingActionServlet会加载进来。 Spring负责业务层管理即Service Service为Action提供统一的调用接口封装持久层的DAO并集成HibernateSpring可对JavaBean和事物进行统一管理。 Hibernate负责持久层完成数据库的CRUD操作 Hibernate有一组hbm.xml文件和PO是与数据库中的表相对应的然后定义DAO这些是与数据库打交道的类。 在StrutsSpringHibernate系统中对象之间的调用流程如下 Struts——Spring——Hibernate JSP——Action——Service——DAO——Hibernate 1.spring的配置文件bean.xml
?xml version1.0 encodingUTF-8?
beansxmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsdxmlns:txhttp://www.springframework.org/schema/txbean iddataSourceclasscom.mchange.v2.c3p0.ComboPooledDataSource destroy-methodcloseproperty namejdbcUrlvaluejdbc:mysql://localhost:3306/samblog?useUnicodetrueamp;characterEncodingUTF-8amp;autoReconnecttrue/propertyproperty nameuser valueroot/propertyproperty namepassword value123456/propertyproperty namedriverClass valueorg.gjt.mm.mysql.Driver//beanbean idsessionFactoryclassorg.springframework.orm.hibernate5.LocalSessionFactoryBeanproperty namedataSourceref beandataSource//propertyproperty namehibernatePropertiesvaluehibernate.dialectorg.hibernate.dialect.MySQL5Dialecthibernate.hbm2ddl.autoupdatehibernate.show_sqlfalsehibernate.format_sqlfalse/value/propertyproperty namemappingResourceslistvaluesite/sambloger/domain/Users.hbm.xml/valuevaluesite/sambloger/domain/Blog.hbm.xml/valuevaluesite/sambloger/domain/Category.hbm.xml/valuevaluesite/sambloger/domain/Comment.hbm.xml/value/list/property/beanbean idtransactionManagerclassorg.springframework.orm.hibernate5.HibernateTransactionManagerproperty namesessionFactory refsessionFactory//beantx:annotation-driven transaction-managertransactionManager/!– 配置Blog spring进行管理 服务层直接调用实现与数据库的CRUD–bean idblogDao classsite.sambloger.dao.impl.BlogDAOImplproperty namesessionFactory refsessionFactory//beanbean idblogService classsite.sambloger.service.impl.BlogServiceImpl scopeprototypeproperty nameblogDao refblogDao//beanbean idblogAction classsite.sambloger.action.BlogActionproperty nameblogService refblogService/property namecommentService refcommentService//bean!– 配置Comment –bean idcommentDao classsite.sambloger.dao.impl.CommentDAOImplproperty namesessionFactory refsessionFactory//beanbean idcommentService classsite.sambloger.service.impl.CommentServiceImpl scopeprototypeproperty namecommentDao refcommentDao//beanbean idcommentAction classsite.sambloger.action.CommentActionproperty namecommentService refcommentService/property nameblogService refblogService//bean!– 配置Users –bean idusersDao classsite.sambloger.dao.impl.UsersDAOImplproperty namesessionFactory refsessionFactory/property/beanbean idusersService classsite.sambloger.service.impl.UsersServiceImpl scopeprototypeproperty nameusersDao refusersDao//beanbean idusersAction classsite.sambloger.action.UsersActionproperty nameuserService refusersService/property/bean
/beans
2.struts的配置文件 struts.xml
?xml version1.0 encodingUTF-8 ?
!DOCTYPE struts PUBLIC -//Apache Software Foundation//DTD Struts Configuration 2.1//EN http://struts.apache.org/dtds/struts-2.1.dtd
strutspackage namesamblog extendsstruts-default namespace/action nameinit classblogAction methodinitresult namesuccess/bloglist.jsp/result/actionaction namegetBlog classblogAction methodgetBlogresult namesuccess/displayBlog.jsp/result/action action namegetAllNote classblogAction methodgetAllNoteresult namesuccess/notelist.jsp/result/actionaction nameaddComment classcommentAction methodaddCommentresult namesuccess typeredirect/getBlog/result/action/package
/struts
3.hibernate其中的一个配置文件
?xml version1.0 encodingutf-8?
!DOCTYPE hibernate-mapping PUBLIC -//Hibernate/Hibernate Mapping DTD 3.0//EN
http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd
!– Mapping file autogenerated by MyEclipse Persistence Tools
hibernate-mappingclass namesite.sambloger.domain.Blog tableblog!–id标签表示映射到数据库中是作为主键 其他property表示普通键–id nameid typejava.lang.Integercolumn nameid /generator classincrement //id !–该标签加N方 会有一个字段叫category_id作为外键参照1(Category)的主键字段 并且用来存储这个主键的信息–many-to-one namecategory classsite.sambloger.domain.Category lazyfalse cascadeallcolumn namecategory_id not-nulltrue //many-to-oneproperty nametitle typejava.lang.Stringcolumn nametitle length400 not-nulltrue //propertyproperty namecontent typejava.lang.Stringcolumn namecontent length4000 not-nulltrue //propertyproperty namecreatedTime typejava.util.Datecolumn namecreated_time length10 not-nulltrue //property !–在一对多的关联中在一的一方(Blog)设置inverse”true”让多的一方来维护关联关系更有助于优化因为可以减少执行update语句–set namecomments inversetruekeycolumn nameblog_id not-nulltrue //keyone-to-many classsite.sambloger.domain.Comment //set/class /hibernate-mapping
- 上一篇: 个人空间网站免费网站建设提案ppt
- 下一篇: 个人旅游网站模版前端网站开发实例视频
相关文章
-
个人空间网站免费网站建设提案ppt
个人空间网站免费网站建设提案ppt
- 技术栈
- 2026年03月21日
-
个人可以做哪些网站企业网站建设市场前景
个人可以做哪些网站企业网站建设市场前景
- 技术栈
- 2026年03月21日
-
个人可以做聊天网站备案吗扬中零壹网站建设
个人可以做聊天网站备案吗扬中零壹网站建设
- 技术栈
- 2026年03月21日
-
个人旅游网站模版前端网站开发实例视频
个人旅游网站模版前端网站开发实例视频
- 技术栈
- 2026年03月21日
-
个人免费建网站方法求做图的网站
个人免费建网站方法求做图的网站
- 技术栈
- 2026年03月21日
-
个人免费网站建设模板在线crm管理系统
个人免费网站建设模板在线crm管理系统
- 技术栈
- 2026年03月21日






