本文主要是介绍网上商城SSH各个类间的关系(一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
接着上一篇的SSH三者的牵线,整理了他们三个之间的关系。网上商城SSH主要是利用SSH这个框架进行开发的网站。网上商城除了基本的SSH框架之外,还有action、service、dao、vo包,他们各负责什么样的职责、是如何交互的、之间数据是如何传输的?下面让我们一起来期待:
其中,action继承ActionSupport,与页面WEB-INF下jsp交互,jsp中的路径直接到action中找对应的action方法。如何实现接受页面传来的参数呢?实现模型驱动即可,例如:
<pre name="code" class="java">public class UserAction extends ActionSupport implements ModelDriven<User>{ //接受参数,怎么做?实现模型驱动即可//模型驱动的对象private User user=new User();@Overridepublic User getModel() {//return null;return user ;}//注入UserServiceprivate UserService userService;public void setUserService(UserService userService) {this.userService = userService;}
}
service是业务层,还用用户来举例说用户模块的业务层代码可以接受到用户,注入UserDao调用UserDao方法:
/*** 用户名模块业务层代码(可以接收到用户名),调用UserDao* @author zhuoling**/
public class UserService {//注入UserDaoprivate UserDao userDao;public void setUserDao(UserDao userDao) {this.userDao = userDao;}
}
dao层是数据持久层,继承HibernateDaoSupport实现数据持久化:
public class UserDao extends HibernateDaoSupport{
{
这三者间我们可以较快的理解,他们是如何与SSH这个框架结合的呢?
在jsp中除了页面的设计,我们经常看类似这样的一句话:
action="${pageContext.request.contextPath}/user_regist.action"
其中${pageContext.request.contextPath}是获取前面的地址,如http://localhost:8080/shop/,然后user_registpage.action到user下找registpage()方法,所以registpage与对应action下的registpage()名称必须相同:
这篇关于网上商城SSH各个类间的关系(一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!