框架主要包结构:service,serviceimpl,dao,daohibernate,action
主要配置文件:struts.xml,hibernate.cfg.xml,applicationContext.xml(为bean注入配置,可用注解代替)
调用流程: 通过url调用 --- struts.xml中的name节点 ---调用 result节点的指定页面,或者调用class的指定action类下的method方法 --- 在方法中调用service --- serviceimpl --- dao --- daohibernate --- HibernateTemplate或者SessionFactory
struts 将url映射到指定的action类或页面,一个url对应一个action 在action类中调用service进行业务层的处理 service调用相应的实现类 实现类调用dao层 dao调用相应的持久化方法,主要核心是调用HibernateTemplate模板,其中有默认的crud方法,如果要自定义sql,则要调用SessionFactory的getCurrentSession()方法得到session,在session中的createSQLQuery(String sql)传入自定义sql,得到结果;
注意:在action中很容易出现ServiceBean未注入的问题,需要在applicationContext.xml中配置bean注入;或者在serviceimpl上加@Service注解,同时在其构造方法上加@Autowied注解,构造方法参数为dao
前端中用标签的name映射到service泛型中的Bean类属性值,前端要用serialize()进行序列化。标签的name不存在时,可以在后端定义同名字符串,将会自动接收前端值。
全部评论