首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

SSH延续多次操作数据库后运行缓慢

2013-09-08 
SSH连续多次操作数据库后运行缓慢主要代码如下:action层:action namearticle_public classarticlePu

SSH连续多次操作数据库后运行缓慢
主要代码如下:
action层:


<action name="article_public" class="articlePublicAction">
<result name="ArticlePublicPage">/article_public.jsp</result>
<result name="Self" type="redirectAction">article_public</result>
</action>


public String execute()
    {
    articles=articleService.listPublish();
        //查询所有文章信息,显示文章信息列表
    return "ArticlePublicPage";
    }
    public String delete()
    {
    articleService.deleteArticle(articleid);
        //删除id=articleid的文章后跳转回文章列表
    return "Self";
    }

Service层:

public List<ArticleInfo> listPublish() {
                //将检索到文章的信息进行封装
List<ArticleInfo> result = new ArrayList<ArticleInfo>();
List<Map> list = articleDao.listPublish();
for (Map item : list) {
ArticleInfo ai = new ArticleInfo();
ai.setCategory((String) item.get("category"));
ai.setCreateTime((Date) item.get("createTime"));
ai.setId((Integer) item.get("id"));
ai.setTags((String) item.get("tags"));
ai.setTitle((String) item.get("title"));
ai.setType((Integer) item.get("type"));
result.add(ai);
}
return result;
}
public void deleteArticle(int id) {
Article article = articleDao.getArticle(id);
if (article != null) {
articleDao.deleteArticle(article);
}
}

DAO层:

@SuppressWarnings({ "unchecked", "rawtypes" })
public List<Map> listPublish() {
//这里不直接检索Article对象是为了去掉对文章正文的检索而降低检索效率
return this.getSession(true).createQuery("select new Map(a.id as id,a.type as type,a.title as title,a.tags as tags,a.category.name as category,a.createTime as createTime) from Article a where a.status=1 order by a.createTime desc").list();
}
public Article getArticle(int id) {

return this.getHibernateTemplate().get(Article.class, id);
}
public void deleteArticle(Article article) {


this.getHibernateTemplate().delete(article);
}



因为是测试,文章数据表只有几条纪录,而且内容只有几个字符,数据量极小。但是在连续两三次删除操作后,程序就运行缓慢,几乎停滞(程序没有崩溃,就是停住不动了)。可以确定不是运行出错,可能是设计存在缺陷,请各位帮我分析一下怎么回事。 ssh 数据库
[解决办法]
你是不是没有配置spring的事务管理?

热点排行