当前位置: 首页 > news >正文

青岛网站搭建公司seo人人网

青岛网站搭建公司,seo人人网,北京企业网站建设价格,成交型网站建设公司SSH 为 strutsspringhibernate 的一个集成框架,是目前较流行的一种JAVA Web应用程序开源框架。 Struts Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用开发的需求,简单易用&#xff0…

SSH 为 struts+spring+hibernate 的一个集成框架,是目前较流行的一种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-mapping>,ActionServlet会加载进来。

  Spring负责业务层管理,即Service:

  Service为Action提供统一的调用接口,封装持久层的DAO,并集成Hibernate,Spring可对JavaBean和事物进行统一管理。

  Hibernate负责持久层,完成数据库的CRUD操作:

  Hibernate有一组hbm.xml文件和PO,是与数据库中的表相对应的,然后定义DAO,这些是与数据库打交道的类。

  在Struts+Spring+Hibernate系统中,对象之间的调用流程如下:

                  

  Struts——>Spring——>Hibernate
  JSP——>Action——>Service——>DAO——>Hibernate

复制代码
1.spring的配置文件bean.xml
<?xml version="1.0" encoding="UTF-8"?>
<beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://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.xsd"xmlns:tx="http://www.springframework.org/schema/tx"><bean id="dataSource"class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close"><property name="jdbcUrl"value="jdbc:mysql://localhost:3306/samblog?useUnicode=true&amp;characterEncoding=UTF-8&amp;autoReconnect=true"></property><property name="user" value="root"></property><property name="password" value="123456"></property><property name="driverClass" value="org.gjt.mm.mysql.Driver"/></bean><bean id="sessionFactory"class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"><property name="dataSource"><ref bean="dataSource"/></property><property name="hibernateProperties"><value>hibernate.dialect=org.hibernate.dialect.MySQL5Dialecthibernate.hbm2ddl.auto=updatehibernate.show_sql=falsehibernate.format_sql=false</value></property><property name="mappingResources"><list><value>site/sambloger/domain/Users.hbm.xml</value><value>site/sambloger/domain/Blog.hbm.xml</value><value>site/sambloger/domain/Category.hbm.xml</value><value>site/sambloger/domain/Comment.hbm.xml</value></list></property></bean><bean id="transactionManager"class="org.springframework.orm.hibernate5.HibernateTransactionManager"><property name="sessionFactory" ref="sessionFactory"/></bean><tx:annotation-driven transaction-manager="transactionManager"/><!-- 配置Blog  spring进行管理  服务层直接调用实现与数据库的CRUD--><bean id="blogDao" class="site.sambloger.dao.impl.BlogDAOImpl"><property name="sessionFactory" ref="sessionFactory"/></bean><bean id="blogService" class="site.sambloger.service.impl.BlogServiceImpl" scope="prototype"><property name="blogDao" ref="blogDao"/></bean><bean id="blogAction" class="site.sambloger.action.BlogAction"><property name="blogService" ref="blogService"/><property name="commentService" ref="commentService"/></bean><!-- 配置Comment --><bean id="commentDao" class="site.sambloger.dao.impl.CommentDAOImpl"><property name="sessionFactory" ref="sessionFactory"/></bean><bean id="commentService" class="site.sambloger.service.impl.CommentServiceImpl" scope="prototype"><property name="commentDao" ref="commentDao"/></bean><bean id="commentAction" class="site.sambloger.action.CommentAction"><property name="commentService" ref="commentService"/><property name="blogService" ref="blogService"/></bean><!-- 配置Users --><bean id="usersDao" class="site.sambloger.dao.impl.UsersDAOImpl"><property name="sessionFactory" ref="sessionFactory"></property></bean><bean id="usersService" class="site.sambloger.service.impl.UsersServiceImpl" scope="prototype"><property name="usersDao" ref="usersDao"/></bean><bean id="usersAction" class="site.sambloger.action.UsersAction"><property name="userService" ref="usersService"></property></bean>
</beans>
2.struts的配置文件 struts.xml
<?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><package name="samblog" extends="struts-default" namespace="/"><action name="init" class="blogAction" method="init"><result name="success">/bloglist.jsp</result></action><action name="getBlog" class="blogAction" method="getBlog"><result name="success">/displayBlog.jsp</result></action> <action name="getAllNote" class="blogAction" method="getAllNote"><result name="success">/notelist.jsp</result></action><action name="addComment" class="commentAction" method="addComment"><result name="success"  type="redirect">/getBlog</result></action></package>
</struts>    
3.hibernate其中的一个配置文件  
<?xml version="1.0" encoding="utf-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-mapping><class name="site.sambloger.domain.Blog" table="blog"><!--id标签表示映射到数据库中是作为主键 其他property表示普通键--><id name="id" type="java.lang.Integer"><column name="id" /><generator class="increment" /></id>
<!--该标签加N方 会有一个字段叫category_id作为外键参照1(Category)的主键字段 并且用来存储这个主键的信息--><many-to-one name="category" class="site.sambloger.domain.Category"  lazy="false" cascade="all"><column name="category_id" not-null="true" /></many-to-one><property name="title" type="java.lang.String"><column name="title" length="400" not-null="true" /></property><property name="content" type="java.lang.String"><column name="content" length="4000" not-null="true" /></property><property name="createdTime" type="java.util.Date"><column name="created_time" length="10" not-null="true" /></property>
<!--在一对多的关联中,在一的一方(Blog)设置inverse=”true”让多的一方来维护关联关系更有助于优化,因为可以减少执行update语句--><set name="comments" inverse="true"><key><column name="blog_id" not-null="true" /></key><one-to-many class="site.sambloger.domain.Comment" /></set></class>
</hibernate-mapping>
http://www.ds6.com.cn/news/101280.html

相关文章:

  • 平面设计大赛网站简短的软文范例
  • 做推广哪个平台网站好公众号推广方案
  • 邵阳网站建设哪家好长春关键词搜索排名
  • 长春网站建设联系吉网传媒优微信怎么引流营销呢
  • 中国建设企业银行官网站网络推广渠道和方式
  • 中山做网站的公司网络营销课程个人总结3000字
  • 做古代风格头像的网站网上营销策略有哪些
  • 公网动态ip如何做网站seo高效优化
  • 用国外服务器做赌博网站婚恋网站排名前三
  • 宁波网站建设优化找哪家搜索引擎营销特点是什么
  • 网站开发项目总结模板今日热榜
  • wordpress多站点管理自媒体seo优化
  • 上海企业信息查询系统官网上海知名seo公司
  • 动态网站建设作业谷歌官网入口手机版
  • 新图闻的品牌建设经验网站seo文章
  • 长沙开发网站的公司交换友情链接是什么意思
  • 网站站长统计怎么弄权威解读当前经济热点问题
  • 淘宝联盟怎么做网站推广友情链接交换网
  • 专业网站托管市场监督管理局投诉电话
  • 海口网站建设公司营销型网站建设多少钱
  • 阿里云服务器开源做几个网站搜索优化引擎
  • 为什么要做网站建设信息互联网推广
  • 福州市城乡建设局网站数字化营销
  • 网站logo素材搜索引擎营销的英文缩写是
  • 电子商务网站建设基础项目实训报告网络销售怎么做
  • 上海网站制作公司培训课程总结
  • 建设官方网站怎么登录seo去哪里培训
  • 网站二维码链接怎么做搜索关键词优化排名
  • 招聘做微信公众号网站维护优化师是干嘛的
  • wordpress收费模板seo百度刷排名