【JavaWeb】Spring+SpringMVC+MyBatis+SpringSecurity+EhCache+JCaptcha 完整Web基础框架(前言)

  一直希望能够搭建一个完整的,基础Web框架,方便日后接一些外快的时候,能够省时省力,终于花了一周的时间,把这个东西搞定了。特此写下此博客,一来是纪念,二来是希望能够为别人提供方便。顺带说一下,恩,组合框架的各个部分用的版本有的是最新的,有的则不是,不敢保证最新版本下,按照这个整合方式,不会报错...

 

简单介绍一下,本框架的基本功能点:


 

  1. Spring:整个框架的主体部分,这个自不用说。
  2. SpringMVC:MVC部分我还是比较喜欢Spring的。
  3. MyBatis:选型的时候选择这个ORM主要也是考虑其灵活性的问题,毕竟我也不知道,今后会遇到怎样的需求,用Hibernate一来是不太会用,二来,我还是比较喜欢直接写SQL来的简单一点。
  4. SpringSecurity:这个主要是安全框架,负责用户登录验证及整站权限分配的相关事项(权限分配真的很有用,这个我就不多说了)。
  5. EhCache:一个非常流行又非常简单好用的缓存框架,并且目前已经支持分布式,如果觉得不好用,自己换成Redis也都OK。
  6. JCaptcha:一个简单的验证码生成框架(或者说工具)。
  7. Log4J:现在没人不知道这个日志框架吧...

  按照这样的选型,基本可以完成大部分网站的基础框架,如:

    1. 用户登录管理,
    2. 整站权限分配,
    3. 数据缓存,
    4. 登录验证码,
    5. 数据库操作,
    6. 统一异常处理,
    7. 日志输出。

  网上找了很多文章,大部分都是只有部分整合的,比如SSH整合,SSM整合,SpringMVC+SpringSecurity,等等,东一块,西一块,非常分散,而且每个人的配置方式还不一样,不统一,有的人喜欢注解配置,有的人喜欢XML配置,有的文章甚至直接就是有东没西,神龙见首不见尾。看的我是很郁闷,很蛋疼,因为当我好不容易搭好一个SSM框架,我发现,我要管理用户登录及权限分配的时候,咦,我还得去配置Security,然后又要找很多文章来补充知识,配置Security的时候,又要找验证码的框架,都搞好了以后,发现诶,缓存这个东西不都是任何一个网站必备的吗?所以就有了现在这篇文章,花了好大得劲,终于把所有都整合起来了。

但是,本文章,不提供项目源码!

只有自己亲手走过一遍,才真正学得会知识。作为一个程序员,我相信这样才是对我们是最好的一个方式。所以不要索要源码,不会给的。 先给出整个项目的

Pom.xml


 

  1   2          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  3     4.0.0
  4     com.magic.rent
  5     ssm
  6     war
  7     1.0-SNAPSHOT
  8     ssm Maven Webapp
  9     http://maven.apache.org
 10     
 11         
 12             atlassian
 13             atlassian
 14             http://maven.jahia.org/maven2/
 15         
 16     
 17     
 18         ssm
 19         
 20             
 21             
 22                 org.mybatis.generator
 23                 mybatis-generator-maven-plugin
 24                 1.3.2
 25                 
 26                     true
 27                     true
 28                 
 29             
 30         
 31     
 32     
 33         4.1.3.RELEASE
 34         4.3.3.RELEASE
 35     
 36     
 37         
 38         
 39             org.springframework
 40             spring-core
 41             ${spring.version}
 42         
 43 
 44         
 45             org.springframework
 46             spring-web
 47             ${spring.version}
 48         
 49 
 50         
 51             org.springframework
 52             spring-oxm
 53             ${spring.version}
 54         
 55 
 56         
 57             org.springframework
 58             spring-tx
 59             ${spring.version}
 60         
 61 
 62         
 63             org.springframework
 64             spring-jdbc
 65             ${spring.version}
 66         
 67 
 68         
 69             org.springframework
 70             spring-webmvc
 71             ${spring.version}
 72         
 73 
 74         
 75             org.springframework
 76             spring-aop
 77             ${spring.version}
 78         
 79 
 80         
 81             org.springframework
 82             spring-context-support
 83             ${spring.version}
 84         
 85 
 86         
 87             org.springframework
 88             spring-test
 89             ${spring.version}
 90         
 91 
 92         
 93             org.springframework
 94             spring-expression
 95             ${spring.version}
 96         
 97         
 98 
 99         
100         
101             org.springframework.security
102             spring-security-core
103             ${security.version}
104         
105         
106             org.springframework.security
107             spring-security-web
108             ${security.version}
109         
110         
111             org.springframework.security
112             spring-security-config
113             ${security.version}
114         
115         
116             org.springframework.security
117             spring-security-taglibs
118             ${security.version}
119         
120         
121             org.springframework.security
122             spring-security-crypto
123             ${security.version}
124         
125         
126 
127         
128         
129             org.aspectj
130             aspectjweaver
131             1.8.6
132         
133 
134         
135             org.aspectj
136             aspectjrt
137             1.8.6
138         
139         
140 
141         
142         
143             com.mchange
144             c3p0
145             0.9.5.1
146         
147 
148         
149         
150             javax.servlet
151             servlet-api
152             2.5
153         
154 
155         
156             javax.servlet.jsp
157             jsp-api
158             2.1
159             provided
160         
161         
162 
163         
164         
165             junit
166             junit
167             4.11
168             test
169         
170 
171         
172         
173             org.mybatis
174             mybatis
175             3.3.0
176         
177         
178         
179             org.mybatis
180             mybatis-spring
181             1.2.3
182         
183 
184         
185         
186             mysql
187             mysql-connector-java
188             5.1.6
189         
190 
191         
192             jstl
193             jstl
194             1.2
195         
196 
197         
198         
199             com.octo.captcha
200             jcaptcha
201             1.0
202         
203 
204         
205         
206             org.apache.commons
207             commons-lang3
208             3.4
209         
210 
211         
212         
213             net.sf.ehcache
214             ehcache-core
215             2.6.11
216         
217         
218         
219             org.mybatis
220             mybatis-ehcache
221             1.0.0
222         
223         
224         
225             net.sf.ehcache
226             ehcache-web
227             2.0.4
228         
229         
230             org.slf4j
231             slf4j-api
232             1.6.1
233         
234         
235             org.slf4j
236             slf4j-log4j12
237             1.6.2
238         
239         
240     
241 

项目结构截图


 

【JavaWeb】Spring+SpringMVC+MyBatis+SpringSecurity+EhCache+JCaptcha 完整Web基础框架(前言)_第1张图片

[图是高清的,我从1080P的屏幕下截取的]

[字太小可以下载到本地后放大,可以看得很清楚,亲测]

[回头有空,我再补一个目录结构文档]

你可能感兴趣的:(【JavaWeb】Spring+SpringMVC+MyBatis+SpringSecurity+EhCache+JCaptcha 完整Web基础框架(前言))