一、entity、dao、service简述
entity是orm框架中数据库属性类,dao则对上屏蔽具体数据库的异同,service层增加日志、事务、安全性的相关逻辑,我只实现了最基本的crud逻辑
以文章类为例
public class articleDao{
@Autowired
private SessionFactory sessionFactory;
public void setSessionFactory(SessionFactory sessionFactory) {
this.sessionFactory = sessionFactory;
}
@SuppressWarnings("unused")
private Session getCurrentSession(){
return this.sessionFactory.getCurrentSession();
}
public void save(article art)
{
this.sessionFactory.getCurrentSession().save(art);
}
@SuppressWarnings("unchecked")
public Collection<article> getall()
{
Query query = this.sessionFactory.openSession().createQuery("from article");
return query.list();
}
}
public class ArticleService {
private articleDao articleDao;
public void setArticleDao(articleDao articleDao) {
this.articleDao = articleDao;
}
public void save(article art)
{
this.articleDao.save(art);
}
public Collection<article> getall()
{
return this.articleDao.getall();
}
}
二、前后台传参
后台传参有三种方式,常用的有方法参数传参,实体类属性传参
向前台传参,在springmvc中,视图解析器会使用model中的数据
后台:
public String showlogin(String username,String password,Map<String,String> model)
{
model.put("username", username);
return "index";
}
jsp:
<c:forEach items="${articles}" var="item">
<div id="ticle">
<h3><c:out value="${item.title}"/></h3>
<p><c:out value="${item.content}" /></p>
<div class="footer">
<p><span class="glyphicon glyphicon-user"></span> writed by zhangzhen</p>
</div>
</div>
</c:forEach>
jsp通过spring标签和jstl处理数据,但ajax可以获取数据后先进行一定处理在展示