【SSH网上商城】——框架

2024-08-25 17:38
文章标签 框架 ssh 网上商城

本文主要是介绍【SSH网上商城】——框架,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

   刚刚开始敲网上商城,首先,对于编程工具的转换不是很适应,幸好之前使用Eclipse维护了ITOO,所以到Myeclipse还是觉得没有太大跨度的。其次,就是对于框架的各种不理解呀,一条线也要看着视频来回好几遍。

    今天我们就来学习一下SSH网上商城的框架吧。SSH为struts+spring+hibernate的一个集成框架。我们一个一个的说。

一、Struts

    Struts是基于JavaEE的MVC框架。对于Struts和Struts2的区别,只知道Struts2采用拦截器处理用户请求,从而使得业务逻辑控制器和ServletAPI脱离开,使编程更加灵活。刚刚接触,在此不过多阐述了。

    web.xml配置了Struts2的核心过滤器和Spring的核心监听器,感觉这是最基础的。

    

	<!-- 配置Spring的核心监听器 --><listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener><context-param><param-name>contextConfigLocation</param-name><param-value>classpath:applicationContext.xml</param-value></context-param><!-- 配置Struts2的核心过滤器 --><filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class></filter><filter-mapping><filter-name>struts2</filter-name><url-pattern>/*</url-pattern></filter-mapping>

    struts.xml中配置了Action访问资源的路径,每次跳转界面都要到这里进行一下配置。例如:

<!-- 配置用户模块的Action --><action name="user_*" class="userAction" method="{1}"><result name="registPage">/WEB-INF/jsp/regist.jsp</result><result name="input">/WEB-INF/jsp/regist.jsp</result><result name="loginPage">/WEB-INF/jsp/login.jsp</result><result name="login">/WEB-INF/jsp/login.jsp</result><result name="loginSuccess" type="redirectAction">index</result><result name="quit">/WEB-INF/jsp/regist.jsp</result><result name="checkcodeFail">/WEB-INF/jsp/regist.jsp</result></action>

  这里研究还不是很深入,只是知道简单的配置。就不多说了。

二、Spring

    对于spring的概念,在.net版的ITOO中就接触过了。这里给大家引入IOC(Inversion of Control),就是控制反转。

    (1)谁控制谁,控制什么:一直以来,我们直接new一个创建对象,这是程序主动去创建依赖对象;而IOC是有专门一个容器来创建这些对象,即由Ioc容器来控制对象的创建;谁控制谁?当然是IoC 容器控制了对象;控制什么?那就是主要控制了外部资源获取(不只是对象包括比如文件等)。
  (2)为何是反转,哪些方面反转了:有反转就有正转,传统应用程序是由我们自己在对象中主动控制去直接获取依赖对象,也就是正转;而反转则是由容器来帮忙创建及注入依赖对象;为何是反转?因为由容器帮我们查找及注入依赖对象,对象只是被动的接受依赖对象,所以是反转;哪些方面反转了?依赖对象的获取被反转了。

    简而言之:原来我们自己new对象,现在我们用对象的时候自动送到我们跟前。

    这里体现了一个“好莱坞原则”:别找我们,等我们找你。


三、Hibernate 

   百度百科Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

    (1)Hibernate是对JDBC的进一步封装。就是Hibernate和数据库有关系,对数据库有操作。

    (2)Hibernate是一个开放源代码的对象关系映射框架。它在对象和数据库之间做了一个映射,我们在对数据库进行操作时只需操作对象就可以了。

    (3)完成持久化重任。JDBC本身就是一种持久化机制。所以持久化也是强调使用Hibernate来做数据库交互。 

    此外,Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。在JAVA中用得最多获取session的方法就是SessionFactory。SSH网上商城用DAO层的类继承HibernateDaoSupport类。

    application.xml里面进行了一下配置:

	<!-- 事务管理器 --><bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"><property name="sessionFactory" ref="sessionFactory"/></bean>

刚刚接触,不当之处,还请指点!

 


这篇关于【SSH网上商城】——框架的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1106217

相关文章

Python Dash框架在数据可视化仪表板中的应用与实践记录

《PythonDash框架在数据可视化仪表板中的应用与实践记录》Python的PlotlyDash库提供了一种简便且强大的方式来构建和展示互动式数据仪表板,本篇文章将深入探讨如何使用Dash设计一... 目录python Dash框架在数据可视化仪表板中的应用与实践1. 什么是Plotly Dash?1.1

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

Python GUI框架中的PyQt详解

《PythonGUI框架中的PyQt详解》PyQt是Python语言中最强大且广泛应用的GUI框架之一,基于Qt库的Python绑定实现,本文将深入解析PyQt的核心模块,并通过代码示例展示其应用场... 目录一、PyQt核心模块概览二、核心模块详解与示例1. QtCore - 核心基础模块2. QtWid

最新Spring Security实战教程之Spring Security安全框架指南

《最新SpringSecurity实战教程之SpringSecurity安全框架指南》SpringSecurity是Spring生态系统中的核心组件,提供认证、授权和防护机制,以保护应用免受各种安... 目录前言什么是Spring Security?同类框架对比Spring Security典型应用场景传统

Python结合Flask框架构建一个简易的远程控制系统

《Python结合Flask框架构建一个简易的远程控制系统》这篇文章主要为大家详细介绍了如何使用Python与Flask框架构建一个简易的远程控制系统,能够远程执行操作命令(如关机、重启、锁屏等),还... 目录1.概述2.功能使用系统命令执行实时屏幕监控3. BUG修复过程1. Authorization

SpringBoot集成图片验证码框架easy-captcha的详细过程

《SpringBoot集成图片验证码框架easy-captcha的详细过程》本文介绍了如何将Easy-Captcha框架集成到SpringBoot项目中,实现图片验证码功能,Easy-Captcha是... 目录SpringBoot集成图片验证码框架easy-captcha一、引言二、依赖三、代码1. Ea

Gin框架中的GET和POST表单处理的实现

《Gin框架中的GET和POST表单处理的实现》Gin框架提供了简单而强大的机制来处理GET和POST表单提交的数据,通过c.Query、c.PostForm、c.Bind和c.Request.For... 目录一、GET表单处理二、POST表单处理1. 使用c.PostForm获取表单字段:2. 绑定到结

修改若依框架Token的过期时间问题

《修改若依框架Token的过期时间问题》本文介绍了如何修改若依框架中Token的过期时间,通过修改`application.yml`文件中的配置来实现,默认单位为分钟,希望此经验对大家有所帮助,也欢迎... 目录修改若依框架Token的过期时间修改Token的过期时间关闭Token的过期时js间总结修改若依

MyBatis框架实现一个简单的数据查询操作

《MyBatis框架实现一个简单的数据查询操作》本文介绍了MyBatis框架下进行数据查询操作的详细步骤,括创建实体类、编写SQL标签、配置Mapper、开启驼峰命名映射以及执行SQL语句等,感兴趣的... 基于在前面几章我们已经学习了对MyBATis进行环境配置,并利用SqlSessionFactory核

cross-plateform 跨平台应用程序-03-如果只选择一个框架,应该选择哪一个?

跨平台系列 cross-plateform 跨平台应用程序-01-概览 cross-plateform 跨平台应用程序-02-有哪些主流技术栈? cross-plateform 跨平台应用程序-03-如果只选择一个框架,应该选择哪一个? cross-plateform 跨平台应用程序-04-React Native 介绍 cross-plateform 跨平台应用程序-05-Flutte