maven-framework-project
https://github.com/v5developer/maven-framework-project
该项目不再更新维护,请移步-
该项目基于maven3.0构建的,项目中融合了Struts1、Struts2、Spring、SpringMVC、Hibernate、Ibatis、MyBatis、Spring Data JPA、Spring JDBC、Spring DWR。页面展现这里使用Struts1、Struts2、SpringMVC(jsp视图、velocity视图、freemarker视图、pdf视图、excel视图、xml视图、json视图等)。是一个综合性的项目。
-
该项目后期会陆续集成一些好的框架进来比如说Spring Web Flow、Jbpm、WebService、Compass、Solr、nutch等。总之是一个综合性的项目。该项目不处理业务,主要是把目前自己工作中用到过的各种框架糅合到一个项目中。纯粹是一个jee框架的糅合,主要是介绍各种技术。
-
项目中的持久化框架sql语句的跟踪分别采用log4jdbc结合log4j和p6spy,在控制台可以看到完整的sql语句。
-
项目中使用阿里Druid数据源
-
项目中使用Spring Security做权限过滤
-
项目中使用Twitter的Bootstrap框架做ui
-
项目中使用Spring WS发布基于契约优先的WebService
-
Spring JAX-WS请参考http://jax-ws-commons.java.net/
-
Spring整合dwr时dwr版本很关键,否则报莫名其妙的错误,具体的整合方式参照http://www.butterdev.com/category/dwr/
项目包结构图
项目中所使用框架版本信息
- Struts1 1.3.10 参照spring-struts.xml、struts-config.xml、web.xml配置
- Struts2 2.3.8 参照spring-struts2-servlet.xml、struts.xml、web.xml配置
- Spring 3.2.1.RELEASE 参照applicationContext.xml配置
- Spring JDBC 参照spring-jdbc.xml配置
- Hibernate 4.2.0.Final 参照spring-hibernate.xml配置
- ibatis 2.3.4.726 参照spring-ibatis.xml配置
- MyBatis 3.1.1 参照spring-mybatis.xml配置
- Spring Data JPA 1.3.0.RELEASE 参照spring-data-jpa.xml配置
- DWR 3.0(该版本jar包在跟Spring整合使用注解方式时会有问题,建议使用项目中的dwr.jar) 参照spring-mvc-dwr.xml、web.xml配置
- Spring Security 3.1.3.RELEASE 参照spring-security.xml配置
- log4jdbc 1.2 采用log4jdbc跟踪sql语句 查看log4j.xml
- p6spy 1.3 采用p6spy跟踪sql语句 详细查看spy.properties文件
- spring rmi远程方法调用 参照spring-rmi.xml
- Spring MVC 参照spring-mvc-servlet.xml、web.xml
- jsp视图http://localhost:8080/maven-framework/hello/jsp.do
- velocity视图http://localhost:8080/maven-framework/hello/velocity.do
- freemarker视图http://localhost:8080/maven-framework/hello/freemarker.do
- 基于jxl方式的excel视图http://localhost:8080/maven-framework/jxl.do?output=excel
- 基于poi方式的excel视图http://localhost:8080/maven-framework/poi.do?output=excel
- 基于itext的pdf视图http://localhost:8080/maven-framework/itext.do?output=pdf
- rss视图http://localhost:8080/maven-framework/rss.do
- xml视图http://localhost:8080/maven-framework/xml.do
- json视图http://localhost:8080/maven-framework/json.do
- log4j视图http://localhost:8080/maven-framework/log4j.do
- 基于SimpleUrlHandlerMapping方式的rest方式http://localhost:8080/maven-framework/simpleurl/showuser/admin/admin.do
- 基于普通的rest方式http://localhost:8080/maven-framework/hello/showuser/admin/admin.do
- 基于rest方式的spring mvc crud详细查看ContactControll中的配置
- Spring Jax WS 参照spring-jax-ws-servlet.xml、web.xml 注意查看pom中wsimport的配置
- http://localhost:8080/maven-framework/service/hello?wsdl
- 生成客户端访问执行mvn jaxws:wsimport
- 客户端访问HelloWebServiceClient
- CXF集成Spring发布WebService 参照spring-cxf-servlet.xml、web.xml配置
- Xfire集成Spring发布WebService 参照spring-xfire-servlet.xml、web.xml配置
- 使用Spring WS编写基于契约优先的WebService 参照spring-ws-servlet.xml、web.xml、applicationContext.xml等配置
- 访问地址:
- 客户端访问
- 基于Spring WS方式的客户端调用StudentDetailsClient.java
- 基于SAAJ方式的客户端调用StudentDetailsClient.java
- 使用阿里Druid数据源 参照spring-data-jpa.xml、web.xml
- 使用Bootstrap框架美化页面
使用说明
- 手动创建数据库(framework、hibernate4、jdbc_ibatis_mybatis、spring_security)
- framework(自动创建表和导入数据) 用来演示spring data jpa
- hibernate4(自动创建表和导入数据) 用来演示 hibernate4
- jdbc_ibatis_mybatis(自动创建表和导入数据) 用来演示spring jdbc、ibatis、mybatis
- spring_security(自动创建表和导入数据) 用来演示spring security
- 修改jdbc.properties文件 里面存放数据库连接信息.主要这里的driver和jdbc url与大家平常见到的不太一致,这是由于使用了sql语句跟踪的框架
- log4jdbc (spring jdbc、ibatis、mybatis、spring data jpa、spring security使用他跟踪sql)
- p6spy (hibernate使用p6spy跟踪sql)
- log4jdbc要结合log4j来使用
- p6spy要结合spy.properties配置文件
- 注意查看log4j.xml文件
- 其中spring jdbc、ibatis、mybatis,使用同一个数据库
- 以上配置完成后您可采用一下方式运行该工程,详细使用方式请查看pom中的配置或者各插件的帮助文档
- 跳过单元测试 mvn -Dmaven.test.skip=true 参照http://maven.apache.org/surefire/maven-surefire-plugin/examples/skipping-test.html
- tomcat6 mvn tomcat:run
- tomcat7 mvn tomcat7:run
- jetty mvn jetty:run
- jboss mvn jboss:start mvn jboss:hard-deploy
- jboss-as mvn jboss-as:deploy mvn jboss-as:run
项目托管
https://github.com/v5developer/maven-framework-project
该项目不再更新维护,请移步SVN地址:http://maven-framework-project.googlecode.com/svn/trunk/(限于大陆google code 不稳定,导致经常无法访问,该地址已不在同步,建议使用github地址)- GitHub地址:https://github.com/sxyx2008/maven-framework-project/
最后希望有兴趣的朋友可以加入进来,大家一起完善他。把自己的技术分享出来。如有任何问题可以与我联系
联系方式
- QQ:184675420
- Email:[email protected]