最近,在学习Spring,做这样一个简单的blog系统,主要是让自己动手练习使用Spring,熟练的使用才干进一步的深入学习。该项目使用Maven构建,使用git进行代码管理,通过这样一个小项目,熟悉了这两个工具的使用。代码托管在github上,感兴趣的同学能够一起来完好。

    项目地址:https://github.com/defshine/SpringBlog

项目主要使用SpringMVC和Hibernate,后台数据库使用MySQL。前端使用Tiles和Boostrap。

初步的设计,比較简单,数据设计,设计的pdm文件也在github上:

眼下后台管理主要设计实现四个功能模块:

1.发表文章。

2.文章管理

3.分类管理

4.评论管理

眼下实现的功能比較简单,在开发的过程中也遇到了一些小问题。

问题一:org.hibernate.HibernateException: No Session found for current thread

一開始集成springmvc和hibernate的时候,遇到这个问题,各种搜索,主要有两个原因:

1.sessionFactory的配置位置是否正确。

在web.xml中

应该配置在business-config中,而不是在mvc-core-config中。所以,要理清context的关系。这样的配置,sessionFactory会在rootWebApplicationContext中管理,而mvc是由子WebApplicationContext进行管理。

2.spring的事务配置是否正确。

首先是在xml中配置使用正确,是否使用正确注解。

然后,在service层相关的方法中,使用@Transactional注解。

而自己出现故障是在配置这个文件时,在头部引用了错误的xmlns。

问题二:springmvc无法获取PUT和DELETE请求的參数。

因为在设计API时候,參考了restful设计原则,更新和删除的时候使用PUT和DELETE请求,结果在cotroller的方法中无法通过httpServletRequest或者@
RequestParam注解获取请求參数。一种比較好的解决方法是使用@RequestBody注解获取參数。

在排查问题时候,再次感受谷歌搜索到强大。吐槽一下垃圾百度。

兴许的开发:

首先,完毕blog的展示,眼下前端页面已经做好。

然后,使用Spring中的知识点优化细节,如:国际化、主题等等。

最后,将这个小系统的一些功能细节完好,如:分页等等。

SpringNote01.基于SpringMVC-Hibernate的Blog系统的更多相关文章

  1. springMVC用法 以及一个简单的基于springMVC hibernate spring的配置

    替代struts 1  web.xml中配置springmvc中央控制器 <?xml version="1.0" encoding="UTF-8"?> ...

  2. springMvc+hibernate的web application的构建

    闲来没事,想整理下一些知识. 这篇文章是关于spring的web程序的搭建,有什么不对的地方希望大家批评指正. 首先我们要了解什么是spring,这里可能很多大家也都明白,无非是一个管理对象的一个容器 ...

  3. JAVA WEB快速入门之从编写一个基于SpringMVC框架的网站了解Maven、SpringMVC、SpringJDBC

    接上篇<JAVA WEB快速入门之通过一个简单的Spring项目了解Spring的核心(AOP.IOC)>,了解了Spring的核心(AOP.IOC)后,我们再来学习与实践Maven.Sp ...

  4. spring+springmvc+hibernate 礼品管理系统

    spring+springmvc+hibernate template礼品管理系统 1.简单介绍 如标题所示,这篇文章简单写了一个基于spring+springmvc+hibernate templa ...

  5. 前后端分离开发,基于SpringMVC符合Restful API风格Maven项目实战(附完整Demo)!

    摘要: 本人在前辈<从MVC到前后端分离(REST-个人也认为是目前比较流行和比较好的方式)>一文的基础上,实现了一个基于Spring的符合REST风格的完整Demo,具有MVC分层结构并 ...

  6. JSP+Spring+SpringMVC+Hibernate+Mysql实现的校园失物招领网站

    项目简介 项目来源于:https://github.com/wenlongup/LostAndFound 因原github仓库无数据库文件,经过本人修改,现将该仓库重新上传至个人gitee仓库. ht ...

  7. Maven搭建SpringMVC+Hibernate项目详解 【转】

    前言 今天复习一下SpringMVC+Hibernate的搭建,本来想着将Spring-Security权限控制框架也映入其中的,但是发现内容太多了,Spring-Security的就留在下一篇吧,这 ...

  8. springmvc+hibernate入门-揭开神秘的面纱

            Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块.使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还是 Struts 这 ...

  9. 转: 基于nginx的hls直播系统

    转自:http://blog.csdn.net/cjsafty/article/details/9108587 看点: 1. 详细解解答了 nginx rtmp配置过程. 前写了一篇基于nginx的h ...

随机推荐

  1. ZOJ-3410Layton's Escape(优先队列+贪心)

    Layton's Escape Time Limit: 2 Seconds      Memory Limit: 65536 KB Professor Layton is a renowned arc ...

  2. tangible T4 Editor 2.2.3 for VS2010 / VS2012 / VS2013 Preview

    tangible T4 Editor 2.2.3 for VS2010 / VS2012 / VS2013 Preview angible T4 Editor 2.2.3 plus UML model ...

  3. Struts2实现单文件上传

    首先配置一下web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi ...

  4. No.26

    "信是未见之事的实底,是所望之事的确据".

  5. Can you find it?(二分 二分+STL set map)

    Can you find it? Time Limit : 10000/3000ms (Java/Other)   Memory Limit : 32768/10000K (Java/Other) T ...

  6. kettle工具同步数据乱码-Linux下乱码问题二

    将写好的kettle工程部署到Linux下后,同步的数据都成了乱码,幸运的是数据库有备份. 下面就说一下,kettle工程如何同步两端编码格式都是utf8的数据库. 我们只需要更改kettle数据库连 ...

  7. OGG常见问题处理

    1403: ORA-01403: No data found 在运行PL/SQL块.存储过程.函数.触发器等,假设须要进行操作的记录没有查询到.则会返回1403的错误 Goldengate中的1403 ...

  8. libaio under MIPS architecture /在mips架构下使用的libaio

    First, you can find libaio source in http://libaio.sourcearchive.com/ Second,download the libaio_0.3 ...

  9. Java - 文件(IO流)

    Java - 文件 (IO)   流的分类:     > 文件流:FileInputStream | FileOutputStream | FileReader | FileWriter     ...

  10. 如何安装chrome扩展,以json-handle

    读取本地json文件 chrome插件安装 方式一,在线安装 直接插到json-handle地址,添加即可 https://chrome.google.com/webstore/detail/json ...