SSH框架
Hibernate单独使用
没有整合Spring
publci class BookDao{
public void save(Book book)
//加载Hibernate核心配置问价
Configuration cfg = new Configuration().configure();
//创建SessionFactory 对象
SessionFactory sf = cfg.buildSessionFactory();
//获得Session
Session session = sf.openSession()
//开启事务
Transactio tx = session.beginTransaction();
//操作方法
session.save(book);
//提交
tx.commit();
session.close();
}
业务层
public class BookService{
//注入DAO
private BookDao bookDao;
//提供一个Set方法
public void setBookDao(BookDao bookDao){
this.bookDao = bookDao;
}
public void save(Book book){
bookDao.save(book)
}
}
Service和dao都需要交给Spring管理
并且在Service中注入Dao
需要配置完成
<bean id = "bookDao"calss = "...BookDao">
</bean>
<bean id = "bookService" calss "...BookService">
//在Service中注入Dao
<property name = "bookDao" ref = "bookDao">
</bean>
在web层获取service
public class BookAction extends ActionSupport implements ModelDriven<Book>{}
//ModelDriven实现了模型驱动,需要手动new一个book
private Book book = new Book();
//提供一个getModel的方法
public Book getModel(){
return book;
}
// 执行的save方法
public String save(){
//或得业务层的类,调用业务层 的save方法
WebApplicationContext wap = WebApplicationContextUtils.getWebApplicationContext(...);
BookService bs = wap.getBean("bookService");
bs.save(book);
}
配置文件
web.xml核心过滤器的配置
<!-- Struts2的框架的核心过滤器的配置 -- >
<filter>
<filter-name>struts</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPreparAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts</filter-name>
<url-pattern>/*<url-pattern>
</filter-mapping>
<display-name></display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
<?welcome-file-list>
Spring的框架的核心监听器
<listener>
<listener-clsss>org.springframework.web.context.ContextLoader</listener-class>
</listener>
<context-param>
</context-param>