web项目加入Struts,Hibernate,Spring后的运行机制

10 篇文章 0 订阅
4 篇文章 0 订阅

           首先我们要知道三大框具体的功能与作用,然后就可以大概的了解三大框架的结合点。

一、Struts框架的机制就是MVC:M-model层既实体层,就拿简单的登录界面来说,我们在网页上需要用户名和密码,而用户名和密码就可以封装成一个用户实体类。V-view视图层,我们在前台看到的用html,javaScript,jsp,css等编写的页面就是视图层,C-control控制层,我们得到了实体,就要对实体进行一系列的操作,如查找用户是否存在,插入删除等。

二、Hibernate框架的机制就是ORM,DAO层的持久化操作,以及对JDBC的封装:O-object层实体层,当我们运用了Hibernate框架后,我们就可以用hibernate来管理实体与数据库的关系连接。R-relationShip关系,多个实体间的对应关系。(如学生实体和老师实体的关系,是多对多)。M-mapping映射,实体到关系表的映射。(个人理解)

三、Spring面向抽象和面向接口,如我们在action层用到的sevice层的类都可以通过Spring框架来注入,而不用自己每次的new。面向切口可以用于事务管理,日志等,同样我们可以将多个不同操作的共同功能提取出来进行切口编程。


       我们都知道如果只加入了Struts框架的话的运行机制如:点击打开链接

从上图的DAO到db层都是Hibernate的工作,而Spring框架则贯穿了整个过程,如action层用了service层,service层用了DAO层,我们可以使用Spring框架对其进行注入,将类自行的注入给其他对象。同样可以在Service层进行事务管理。

       如果是含有Struts框架和hibernate框架的项目的话,web.xml和Struts.xml都不要进行更改,我们需要加入hibernate.cfg.xml的配置,并在加入Struts的访问层次上进行扩展,也就是在action进行扩展,当我们执行到Struts.xml的话我们会找到action名,然后查看后面的class类,执行actionClass的execute方法,在execute方法中我们会对实体进行操作,如插入到数据库操作,当没有Hibernate的时候我们会敲下面的代码:

try {
			Class.forName("com.mysql.jdbc.Driver");
			Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/hello?username=&password");
			Statement stat = conn.createStatement("insert into hello(username,password) values('"+username+"',");
		}
		catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
		}
			
		catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

而如果使用了hibernate的话则直接对jdbc进行封装,我们可以使用封装类直接得到session对象进行数据库的访问。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值