Spring mvc+hibernate+freemarker(开源项目)
今天我为大家做了一个 spring3 MVC 的例子,希望能对刚接触spring的朋友有所帮助。该流程属于大型项目的流程,涉及的知识比较希望大家耐心学习。
企业级项目实战(带源码升级版本)地址:http://zz563143188.iteye.com/blog/1845469
运维知识整理 http://zz563143188.iteye.com/blog/2094335
收集五年的开发资料下载地址: http://pan.baidu.com/share/home?uk=4076915866&view=share
项目源码请下载codeFactory20130321,lib20130321LI两个文件,
以下是相关资料连接:1.本工程内容较多,可能需要设计编译目录: http://zz563143188.iteye.com/blog/1826517
2.调试网页建议页面调试工具firebug http://zz563143188.iteye.com/blog/1825978
3.可以使用Spring mvc 单元测试 http://zz563143188.iteye.com/blog/1827454
4.Spring mvc整合hibernate http://zz563143188.iteye.com/blog/1831561
5.日志log4j配置springMvc例子 http://zz563143188.iteye.com/blog/1825387
6.由于webroot下面的内容很多,设置不编译和验证 http://zz563143188.iteye.com/blog/1826517
7. 根据jar生成源码工具 http://zz563143188.iteye.com/blog/1826988
8.java常用环境变量设置 http://zz563143188.iteye.com/blog/1827884
9.比较全的OA系统功能模块列表 http://zz563143188.iteye.com/blog/1860248
10.需求文档管理工具 http://zz563143188.iteye.com/blog/1830393
11.PowerDesinger逆向数据库物理模型及关系图 http://zz563143188.iteye.com/blog/1829068
12.发散性思维工具(思维导图)推荐 http://zz563143188.iteye.com/blog/1831562
13.推荐一款好用的笔记管理软件(Evernote) http://zz563143188.iteye.com/blog/1830965
14.数据库生成数据字典工具(PDMREAD)图解 http://zz563143188.iteye.com/blog/1828557
15.代码生动生成工具(POJO,DAO,Service,action)等层代码http://zz563143188.iteye.com/blog/1819765
16.spring3,struts2,hibernate,junit,设计模式视频教程下载 http://zz563143188.iteye.com/blog/1839517
17.UML 的九种模型图 http://zz563143188.iteye.com/blog/1841234
http://zz563143188.iteye.com/blog/1841225
18.Oracle笔记 五、创建表、约束、视图、索引、序列、同义词、表空间
http://zz563143188.iteye.com/blog/1841239
19.Java面试宝典2013版 http://zz563143188.iteye.com/blog/1843725
20.Java技术体系图(从程序员到CTO各阶段技 http://zz563143188.iteye.com/blog/1877266
21.百万级访问网站前期的技术准备 http://zz563143188.iteye.com/blog/1842135
22.关于一个大型web系统架构设计和技术选型的讨论 http://zz563143188.iteye.com/blog/1842128
23.高性能网站性能优化与系统架构 http://zz563143188.iteye.com/blog/1842129
24.java23种模式详解 (带源码有图) http://zz563143188.iteye.com/blog/1847029
25.软件开发文档范例 http://zz563143188.iteye.com/blog/1835305
26.软件开发模式对比(瀑布、迭代、螺旋、敏捷) http://zz563143188.iteye.com/blog/1843691
27.我心目中最好的框架组合 http://zz563143188.iteye.com/blog/1867767
28. 全国(大学)高等教育各学科视频教学全集 http://zz563143188.iteye.com/blog/1823042
更多高级应用(项目构架、工程、文档、研发管理) http://zz563143188.iteye.com/
github查看项目地址 : https://github.com/zl19861124/codeFactory
本人只是将www.jeecms.com进行改变。目的是为了让大家更加了解jeecms,这样可以让大家学习。
长虽然我工作很忙没有闲暇时间,但我还是愿意抽时间分享优秀的项目给大家学习。
架构分层图解:
1.后台工程 包命名规则以com.jeecms.cms.(分为以下图层),项目架构entity,dao,mng,action,html等结构如下图所示。
2.上图结构图在项目分布图如下。
3.数据库映射文件,下面有对象处在的包层及对象对应的数据库表。
4.java bean配置在entity包下面,Base包下面都是直接与数据表关联的对象。在这里创建字段属性及对象对应的xml映射的表字段属性的get,set方法。
5.我采用的spring mvc实现action,dao,manager依赖注入方法,所以需要将实现类在spring的配置文件中加载,统一首字母小写方式命名。
6.Dao在spring文件中
7.业务层的具体实现通过spring的注解实现,事务也交给spring(有网友建议readonly开关设置)
8.action控制层是业务层与视图层的桥梁,这里需要申明业务层接口,当然spring已经按类型注解。
9.资源文件是支持国际化的重要文件,这个也需要在springmvc中指定。
10.html的命名统一,上一次目录都是按照表名来定义。
开发流程详细介绍:
1.web.xml文件是工程运行的起点,需要在这里配置好所有的配置信息。引导页、spring、log4j,struts、hibernate、过滤器,监听、等等都是在这里配置好。
2.jeecms工程的访问目录及访问路径在web.xml中的配置
3.资源文件配置,资源文件的key命名规则用(对象.功能.信息)
4.数据库连接文件jdbc.propertiy的配置同spring放置在同一个目录下面。
如果是单元就在classpath:config下面,如果是web.xml加载则在web-inf/config下面
5.spring加载数据库jdbc文件,通过通配符来读出.properity文件的修正。 如果是单元就在classpath:config下面,如果是web.xml加载则在web-inf/config下面
6.jeecms自定义标签在spring中初始化,这些标签通过java实现。
7.springmvc在控制层返回的路径设置,jeecms_sys是action默认返回的目录。如果文件不在这个目录则无法找到相应的文件,并且配置了只能匹配.html文件。
8.定义springmvc的view目录及登陆地址。
9.在spring中配置好资源文件,使spring mvc在html文件能够读到资源文件信息。
10.配置数据库hibernate的xml文件hbm.xml文件
11.java对象与hbm.xml文件交换对象的bean对象创建。
12.DAO层配置,这是直接与数据库找交道的层。
13.业务层(service)对象配置,也就是常说的上通DAO层下达控制层的中间层
14.控制层也就是action层,是业务层与view层的桥梁
15.在spring文件中配置dao、service对象形成单例,以便在服务器启动的时候加载 。
16.到这里通过单元测试类test类测试业务层与数据的操作,需要添加junit4到工程中。https://github.com/zl19861124/jeecms/blob/master/src/com/jeecms/cms/test/test.java
17.好了到现在为止,springmvc业务代码就OK了。接下来开发html文件(数据显示用标签实现)。
18.编辑界面代码通过freemarker来实现。
19.到这里代码从数据库表到业务层到视图层的代码就完成了,接下来我们codeFactory发布到tomcat中去tomcat用户名是admin密码admin)
20.项目发布成功后访问地址 http://127.0.0.1:8088/codeFactory/jeeadmin/jeecms/index.do
21.登陆成功后进入后台界面:强大的后台管理系统不需要一行代码就完成了。到这里一步相信很多人已经糊涂了,这个流程太复杂了
22. 强大的功能制定,可以任由你选择。
23.当这一步项目就演示结束了,欢迎大家学习,严禁商用(消化理解jeecms后改进的,只希望更多人了解cms)。
24、感谢 www.jeecms.com提供了如何优秀的开源项目,以后还会推出权限、流程审批、maven、svn、代码自动生成(从建表到业务层代码界面显示,不需要写一行代码就自动实现)。
- 开发文档.pdf (9.9 MB)
- 下载次数: 7051
- Spring_mvc_hibernate_freemarker_开源项目_.part2.rar (4.7 MB)
- 描述: 同由于网页排版不好看,我将上面内容做成PDF文档
- 下载次数: 5537
- Spring_mvc_hibernate_freemarker_开源项目_.part1.rar (9.8 MB)
- 描述: 同由于网页排版不好看,我将上面内容做成PDF文档
- 下载次数: 5892
顶 7
踩 分享到:
![](http://zz563143188.iteye.com/images/sina.jpg)
![](http://zz563143188.iteye.com/images/tec.jpg)
评论
161 楼 dragon_hou 2015-10-30 太厉害了,我就是学了点基础,感觉好难提升,看项目估计看不懂。![](http://zz563143188.iteye.com/images/smiles/icon_idea.gif)
![](http://zz563143188.iteye.com/images/smiles/icon_idea.gif)
![](http://zz563143188.iteye.com/images/smiles/icon_idea.gif)
![](http://zz563143188.iteye.com/images/smiles/icon_idea.gif)
![](http://zz563143188.iteye.com/images/smiles/icon_idea.gif)
![](http://zz563143188.iteye.com/images/smiles/icon_idea.gif)
![](http://zz563143188.iteye.com/images/smiles/icon_cry.gif)
codeFactory20130321.rar 158 楼 zaiyueming 2015-01-14
![](http://zz563143188.iteye.com/images/smiles/icon_cry.gif)
![](http://zz563143188.iteye.com/images/smiles/icon_idea.gif)
org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Io 异常: The Network Adapter could not establish the connection)
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1225)
at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)
at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalDataSourceConnectionProvider.java:82)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:84)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2073)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1298)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:814)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:732)
at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1369)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at java.se 152 楼 lailaiping 2014-06-25 非常好 值得学习 151 楼 lehmann_ding 2014-05-05 网盘又能打开了,好人呀! 150 楼 leewei_0503 2014-05-02 codefactory中缺少\WEB-INF\tags\simpletable,请楼主补充一下,谢谢!
![](http://zz563143188.iteye.com/images/smiles/icon_idea.gif)
新的地址 http://pan.baidu.com/share/home?uk=4076915866&view=share
项目源码请下载codeFactory20130321,lib20130321LI两个文件, 148 楼 wataxi 2014-04-29 首先感谢博主的分享, 现在收集五年的开发资料及源码下载地址: http://pan.baidu.com/share/link?shareid=3739316113&uk=4076915866#dir/path=%2Fstudy 这个打不开了, 求解释~~ 147 楼 wawxy2009 2014-04-22 你太牛了,佩服 146 楼 hakunamatat 2014-04-17 2014-4-17 11:14:04 org.apache.catalina.core.AprLifecycleListener init
信息: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: E:\JAVAEE\MyEclipse\Common\binary\com.sun.java.jdk.win32.x86_64_1.6.0.013\bin;E:\apache-tomcat-6.0.14\bin
2014-4-17 11:14:05 org.apache.coyote.http11.Http11Protocol init
信息: Initializing Coyote HTTP/1.1 on http-8080
2014-4-17 11:14:05 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 368 ms
2014-4-17 11:14:05 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2014-4-17 11:14:05 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/6.0.14
2014-4-17 11:14:05 org.apache.catalina.loader.WebappClassLoader validateJarFile
信息: validateJarFile(E:\apache-tomcat-6.0.14\webapps\codeFactory\WEB-INF\lib\servlet-api.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
2014-4-17 11:14:05 org.apache.catalina.loader.WebappClassLoader validateJarFile
信息: validateJarFile(E:\apache-tomcat-6.0.14\webapps\codeFactory\WEB-INF\lib\servlet.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
SLF4J: The requested version 1.6.99 by your slf4j binding is not compatible with [1.5.5, 1.5.6, 1.5.7, 1.5.8, 1.5.9, 1.5.10]
SLF4J: See http://www.slf4j.org/codes.html#version_mismatch for further details.
2014-4-17 11:14:06 org.apache.catalina.core.ApplicationContext log
信息: Initializing Spring root WebApplicationContext
2014-4-17 11:14:06 org.apache.catalina.core.StandardContext listenerStart
严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;[Ljava/lang/Object;Ljava/lang/Throwable;)V
at org.apache.commons.logging.impl.SLF4JLocationAwareLog.info(SLF4JLocationAwareLog.java:159)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3830)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4337)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
2014-4-17 11:14:06 org.apache.catalina.core.StandardContext start
严重: Error listenerStart
2014-4-17 11:14:06 org.apache.catalina.core.StandardContext start
严重: Context [/codeFactory] startup failed due to previous errors
2014-4-17 11:14:06 org.apache.catalina.core.ApplicationContext log
信息: Closing Spring root WebApplicationContext
2014-4-17 11:14:06 org.apache.catalina.core.ApplicationContext log
信息: ContextListener: contextInitialized()
2014-4-17 11:14:06 org.apache.catalina.core.ApplicationContext log
信息: SessionListener: contextInitialized()
2014-4-17 11:14:07 org.apache.catalina.core.ApplicationContext log
信息: Initializing Spring root WebApplicationContext
2014-4-17 11:14:09 org.apache.catalina.core.ApplicationContext log
信息: Initializing Spring FrameworkServlet 'applicationServlet'
2014-4-17 11:14:09 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8080
2014-4-17 11:14:09 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2014-4-17 11:14:09 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/15 config=null
2014-4-17 11:14:09 org.apache.catalina.startup.Catalina start
信息: Server startup in 4656 ms
这个搜了一下说是jar包有高有低,我看了一下确实蛮多的。请问有什么方案解决吗? 145 楼 liupengjun1 2014-04-08 非常感谢博主的分享 144 楼 abc08010051 2014-03-19 真心赞
![](http://zz563143188.iteye.com/images/smiles/icon_idea.gif)
- Spring mvc+hibernate+freemarker(开源项目)
- Spring mvc+hibernate+freemarker(开源项目)
- Spring mvc+hibernate+freemarker(开源项目)
- jeecms2012 框架分析 Spring mvc+hibernate+freemarker(开源项目)
- jeecms2012 框架分析 Spring mvc+hibernate+freemarker(开源项目)
- Spring mvc+hibernate+freemarker(开源项目)
- Spring mvc+hibernate+freemarker(开源项目)
- Spring mvc+hibernate+freemarker(开源项目)
- jeecms2012 框架分析 Spring mvc+hibernate+freemarker(开源项目)
- Spring mvc+hibernate+freemarker(开源项目)
- Spring mvc+hibernate+freemarker(开源项目)
- Spring mvc+hibernate+freemarker(开源项目)
- Spring mvc+hibernate+freemarker(开源项目)
- Spring mvc+hibernate+freemarker(开源项目)
- jeecms2012 框架分析 Spring mvc+hibernate+freemarker(开源项目)
- Spring mvc + hibernate +freemarker(开源项目)
- Spring mvc+hibernate+freemarker(开源项目)
- SpringMVC+Hibernate 项目开发之二 (STS整合Maven)
- java 搭建基于springboot的ssh(spring + springmvc + hibernate)的gradle项目(基础篇)
- Spring mvc+hibernate+freemarker(实战)