Maven搭建springmvc+spring+hibernate+mysql框架

  1. 使用Maven搭建WEB项目


    2.工程建立后在pom文件中添加一下依赖包。我这里使用的数据库是MySQL,要更换其他的数据库自己导入驱动包即可。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
< project  xmlns = "http://maven.apache.org/POM/4.0.0"  xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd" >
   < modelVersion >4.0.0</ modelVersion >
   < groupId >com.dylan</ groupId >
   < artifactId >springmvc</ artifactId >
   < packaging >war</ packaging >
   < version >0.0.1-SNAPSHOT</ version >
   < name >springmvc Maven Webapp</ name >
   < url >http://maven.apache.org</ url >
   < properties >
         < spring.version >4.0.0.RELEASE</ spring.version >
         < hibernate.version >3.6.10.Final</ hibernate.version >
         < hibernate-common-annotations.version >4.0.2.Final</ hibernate-common-annotations.version >
         < hibernate-jpa.version >1.0.1.Final</ hibernate-jpa.version >
         < mysql.version >5.1.27</ mysql.version >
 
         <!-- 辅助依赖包 -->
         < cglib.version >2.2</ cglib.version >
         < jackson.version >1.8.4</ jackson.version >
     </ properties >
 
 
     < dependencies >
         <!-- javassist -->
         < dependency >
             < groupId >org.javassist</ groupId >
             < artifactId >javassist</ artifactId >
             < version >3.18.1-GA</ version >
         </ dependency >
 
         <!-- spring mvc -->
         < dependency >
             < groupId >org.springframework</ groupId >
             < artifactId >spring-web</ artifactId >
             < version >${spring.version}</ version >
         </ dependency >
         < dependency >
             < groupId >org.springframework</ groupId >
             < artifactId >spring-webmvc</ artifactId >
             < version >${spring.version}</ version >
         </ dependency >
 
         <!-- SPRING start -->
         < dependency >
             < groupId >org.springframework</ groupId >
             < artifactId >spring-core</ artifactId >
             < version >${spring.version}</ version >
         </ dependency >
         < dependency >
             < groupId >org.springframework</ groupId >
             < artifactId >spring-beans</ artifactId >
             < version >${spring.version}</ version >
         </ dependency >
         < dependency >
             < groupId >org.springframework</ groupId >
             < artifactId >spring-context</ artifactId >
             < version >${spring.version}</ version >
         </ dependency >
         < dependency >
             < groupId >org.springframework</ groupId >
             < artifactId >spring-aop</ artifactId >
             < version >${spring.version}</ version >
         </ dependency >
         < dependency >
             < groupId >org.springframework</ groupId >
             < artifactId >spring-tx</ artifactId >
             < version >${spring.version}</ version >
         </ dependency >
 
         < dependency >
             < groupId >org.springframework</ groupId >
             < artifactId >spring-expression</ artifactId >
             < version >${spring.version}</ version >
         </ dependency >
         < dependency >
             < groupId >org.springframework</ groupId >
             < artifactId >spring-aspects</ artifactId >
             < version >${spring.version}</ version >
         </ dependency >
         < dependency >
             < groupId >org.springframework</ groupId >
             < artifactId >spring-context-support</ artifactId >
             < version >${spring.version}</ version >
         </ dependency >
         < dependency >
             < groupId >org.springframework</ groupId >
             < artifactId >spring-orm</ artifactId >
             < version >${spring.version}</ version >
         </ dependency >
         < dependency >
             < groupId >org.springframework</ groupId >
             < artifactId >spring-jdbc</ artifactId >
             < version >${spring.version}</ version >
         </ dependency >
         <!-- SPRING end -->
 
         <!-- hibernate -->
         < dependency >
             < groupId >org.hibernate</ groupId >
             < artifactId >hibernate-core</ artifactId >
             < version >${hibernate.version}</ version >
         </ dependency >
         < dependency >
             < groupId >org.hibernate</ groupId >
             < artifactId >hibernate-ehcache</ artifactId >
             < version >${hibernate.version}</ version >
         </ dependency >
         < dependency >
             < groupId >org.hibernate</ groupId >
             < artifactId >hibernate-proxool</ artifactId >
             < version >${hibernate.version}</ version >
         </ dependency >
         < dependency >
             < groupId >org.hibernate.common</ groupId >
             < artifactId >hibernate-commons-annotations</ artifactId >
             < version >${hibernate-common-annotations.version}</ version >
         </ dependency >
         < dependency >
             < groupId >org.hibernate.javax.persistence</ groupId >
             < artifactId >hibernate-jpa-2.0-api</ artifactId >
             < version >${hibernate-jpa.version}</ version >
         </ dependency >
 
         <!-- jdbc -->
         < dependency >
             < groupId >mysql</ groupId >
             < artifactId >mysql-connector-java</ artifactId >
             < version >${mysql.version}</ version >
             < scope >runtime</ scope >
         </ dependency >
 
         <!-- json -->
         < dependency >
             < groupId >org.codehaus.jackson</ groupId >
             < artifactId >jackson-mapper-asl</ artifactId >
             < version >${jackson.version}</ version >
         </ dependency >
         < dependency >
             < groupId >org.codehaus.jackson</ groupId >
             < artifactId >jackson-core-asl</ artifactId >
             < version >${jackson.version}</ version >
         </ dependency >
 
 
         < dependency >
             < groupId >org.htmlparser</ groupId >
             < artifactId >htmlparser</ artifactId >
             < version >2.1</ version >
         </ dependency >
 
         < dependency >
             < groupId >commons-httpclient</ groupId >
             < artifactId >commons-httpclient</ artifactId >
             < version >3.1</ version >
         </ dependency >
         <!-- 辅助依赖包 _start <dependency> <groupId>cglib</groupId> <artifactId>cglib-nodep</artifactId> 
             <version>${cglib.version}</version> </dependency> -->
 
         <!-- web依赖包 -->
         < dependency >
             < groupId >javax.servlet</ groupId >
             < artifactId >servlet-api</ artifactId >
             < version >2.5</ version >
             < scope >provided</ scope >
         </ dependency >
 
         < dependency >
             < groupId >javax.servlet</ groupId >
             < artifactId >jstl</ artifactId >
             < version >1.2</ version >
         </ dependency >
         < dependency >
             < groupId >junit</ groupId >
             < artifactId >junit</ artifactId >
             < version >3.8.1</ version >
             < scope >test</ scope >
         </ dependency >
         <!-- dbcp的数据源 -->
         < dependency >
             < groupId >commons-dbcp</ groupId >
             < artifactId >commons-dbcp</ artifactId >
             < version >1.4</ version >
         </ dependency >
         < dependency >
             < groupId >commons-lang</ groupId >
             < artifactId >commons-lang</ artifactId >
             < version >2.6</ version >
         </ dependency >
 
         < dependency >
             < groupId >org.aspectj</ groupId >
             < artifactId >aspectjweaver</ artifactId >
             < version >1.8.5</ version >
         </ dependency >
         <!-- log4j日志包 -->
         < dependency >
             < groupId >log4j</ groupId >
             < artifactId >log4j</ artifactId >
             < version >1.2.17</ version >
         </ dependency >
     </ dependencies >
   < build >
     < finalName >springmvc</ finalName >
   </ build >
</ project >

添加后的项目架构如下

3.在resources文件夹下面建立以下文件

    1.spring-mvc.xml

    

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
< beans  xmlns = "http://www.springframework.org/schema/beans" 
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" 
xmlns:p = "http://www.springframework.org/schema/p" 
xmlns:context = "http://www.springframework.org/schema/context" 
xmlns:mvc = "http://www.springframework.org/schema/mvc" 
xmlns:tx = "http://www.springframework.org/schema/tx"
xmlns:aop = "http://www.springframework.org/schema/aop"
xsi:schemaLocation="
     http://www.springframework.org/schema/beans 
     http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
     http://www.springframework.org/schema/context
     http://www.springframework.org/schema/context/spring-context-3.0.xsd
     http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
     http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
     http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
     ">
     
      < aop:aspectj-autoproxy  />
     < context:component-scan  base-package = "com.dylan.mvc" /> 
     < mvc:default-servlet-handler />
     <!-- 开启注解  -->
     < mvc:annotation-driven  /> 
     
     <!-- 默认的视图解析器 -->
     < bean  id = "defaultViewResolver"
         class = "org.springframework.web.servlet.view.InternalResourceViewResolver"
         p:order = "3" >
         < property  name = "viewClass"
             value = "org.springframework.web.servlet.view.JstlView"  />
         < property  name = "contentType"  value = "text/html"  />
         < property  name = "prefix"  value = "/"  />
         < property  name = "suffix"  value = ".jsp"  />
     </ bean >
     <!-- 注解式事务管理 -->
     < tx:annotation-driven  transaction-manager = "transactionManager" />
     
     < bean  id = "transactionManager"  class = "org.springframework.orm.hibernate3.HibernateTransactionManager" >
         < property  name = "sessionFactory"  ref = "hibernateSessionFactory"  />
     </ bean >
     <!-- 事务拦截 -->
     < bean  id = "transactionInterceptor"  class = "org.springframework.transaction.interceptor.TransactionInterceptor" >
         < property  name = "transactionManager"  ref = "transactionManager" />
         < property  name = "transactionAttributes" >
             < props >
                 < prop  key = "add*" >PROPAGATION_NESTED</ prop >
                 < prop  key = "save*" >PROPAGATION_NESTED</ prop >
                 < prop  key = "update*" >PROPAGATION_NESTED</ prop >
                 < prop  key = "remove*" >PROPAGATION_NESTED</ prop >
                 < prop  key = "delete*" >PROPAGATION_NESTED</ prop >
                 < prop  key = "clear*" >PROPAGATION_NESTED</ prop >
                 < prop  key = "restore*" >PROPAGATION_NESTED</ prop >
                 < prop  key = "replace*" >PROPAGATION_NESTED</ prop >
                 < prop  key = "process*" >PROPAGATION_NESTED</ prop >
                 < prop  key = "execute*" >PROPAGATION_NESTED</ prop >
                 < prop  key = "upload*" >PROPAGATION_NESTED</ prop >
                 < prop  key = "check*" >PROPAGATION_NESTED</ prop >
                 < prop  key = "load*" >PROPAGATION_REQUIRED</ prop >
                 < prop  key = "show*" >PROPAGATION_REQUIRED</ prop >
                 < prop  key = "download*" >PROPAGATION_REQUIRED</ prop >
                 < prop  key = "enter*" >PROPAGATION_REQUIRED</ prop >
                 < prop  key = "login*" >PROPAGATION_REQUIRED</ prop >
             </ props >
         </ property >
     </ bean >
     <!-- 类名Action结尾的类自动进行事务代理 -->
     < bean  id = "beanNameAutoProxyCreator"  class = "org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator" >
         < property  name = "proxyTargetClass"  value = "true" />
         < property  name = "beanNames" >
             < list
             < value >*Action</ value
             </ list >
         </ property >
         < property  name = "interceptorNames" >
             < list >
                 < value >transactionInterceptor</ value >
             </ list >
         </ property >
     </ bean >
</ beans >

    2.spring-hibernate.xml 数据源配置

    

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<? xml  version = "1.0"  encoding = "UTF-8" ?>
< beans  xmlns = "http://www.springframework.org/schema/beans"
     xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"  xmlns:context = "http://www.springframework.org/schema/context"
     xmlns:aop = "http://www.springframework.org/schema/aop"  xmlns:util = "http://www.springframework.org/schema/util"
     xmlns:tx = "http://www.springframework.org/schema/tx"  xmlns:task = "http://www.springframework.org/schema/task"
     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
            http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
            http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
            http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.0.xsd
            http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd"
     default-autowire = "byName"  default-lazy-init = "false" >
     <!-- 自动扫描dao和service包(自动注入) <context:component-scan base-package="com.jason.sshIntegration.dao.*" 
         /> <context:component-scan base-package="com.jason.sshIntegration.service.*" 
         /> -->
     <!-- 引入属性文件 -->
     < context:property-placeholder  location = "classpath:config.properties"  />
     <!-- 加载service,此时要排除要controller,因为controller已经spring-mvc中加载过了 -->
     < context:component-scan  base-package = "com.dylan.mvc.*" >
         < context:exclude-filter  type = "annotation"
             expression = "org.springframework.stereotype.Controller"  />
     </ context:component-scan >
     <!-- 配置数据源 <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> 
         <property name="driverClassName" value="${jdbc.driverClassName}"></property> 
         <property name="url" value="${jdbc.url}"></property> <property name="username" 
         value="${jdbc.username}"></property> <property name="password" value="${jdbc.password}"></property> 
         </bean> -->
     < bean  id = "dataSource"  class = "org.apache.commons.dbcp.BasicDataSource" >
         < property  name = "driverClassName"  value = "${jdbc.driverClassName}" ></ property >
         < property  name = "url"  value = "${jdbc.url}" ></ property >
         < property  name = "username"  value = "${jdbc.username}" ></ property >
         < property  name = "password"  value = "${jdbc.password}" ></ property >
     </ bean >
     <!-- 配置SessionFactory -->
     < bean  id = "hibernateSessionFactory"  class = "org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean" >
         < property  name = "dataSource"  ref = "dataSource"  />
         <!-- <property name="entityInterceptor" ref="bdf2.unByteCodeProxyInterceptor" /> -->
         < property  name = "hibernateProperties" >
             < props >
                 < prop  key = "hibernate.dialect" >${hibernate.dialect}</ prop >
                 < prop  key = "hibernate.show_sql" >${hibernate.format_sql}</ prop >
                 < prop  key = "hibernate.hbm2ddl.auto" >${hibernate.hbm2ddl.auto}</ prop >
                 
                 <!-- <prop key="hibernate.current_session_context_class">thread</prop> -->
             </ props >
         </ property >
         < property  name = "useTransactionAwareDataSource"  value = "true"  />
         < property  name = "packagesToScan" >
             < list >
                 < value >com.dylan.mvc.entity</ value >
             </ list >
         </ property >
     </ bean >
     
 
     
</ beans >

    3.config.properties配置文件,里面包含数据库相关配置

    

?
1
2
3
4
5
6
7
8
9
10
11
12
#jdbc
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql: //localhost:3306/demo?useUnicode=true&characterEncoding=UTF-8
jdbc.username=root
jdbc.password=root
 
#hibernate
#更新|创建|验证数据库表结构|不作改变     默认update(create,validate,none)
hibernate.hbm2ddl.auto=update
hibernate.dialect=org.hibernate.dialect.MySQLDialect
hibernate.show_sql= true
hibernate.format_sql= true

    4.log4j.properties 日志输出配置文件

    

?
1
2
3
4
5
6
7
log4j.rootCategory=INFO, stdout  
   
log4j.appender.stdout=org.apache.log4j.ConsoleAppender  
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout  
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %t %c{ 2 }:%L - %m%n  
   
log4j.category.org.springframework.beans.factory=DEBUG

4.下面是在web.xml中的代码

    

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<? xml  version = "1.0"  encoding = "UTF-8" ?>
< web-app  xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
     xmlns = "http://java.sun.com/xml/ns/javaee"  xmlns:web = "http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
     xsi:schemaLocation = "http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
     id = "WebApp_ID"  version = "2.5" >
 
     < display-name >springmvc</ display-name >
 
 
     <!-- 加载所有的配置文件 -->
     < context-param >
         < param-name >contextConfigLocation</ param-name >
         < param-value >classpath:spring-*.xml</ param-value >
     </ context-param >
 
     <!-- 配置Spring监听 -->
     < listener >
         < listener-class >org.springframework.web.context.ContextLoaderListener</ listener-class >
     </ listener >
 
     <!-- 配置字符集 -->
     < filter >
         < description >字符集过滤器</ description >
         < filter-name >encodingFilter</ filter-name >
         < filter-class >org.springframework.web.filter.CharacterEncodingFilter</ filter-class >
         < init-param >
             < description >字符集编码</ description >
             < param-name >encoding</ param-name >
             < param-value >UTF-8</ param-value >
         </ init-param >
     </ filter >
     < filter-mapping >
         < filter-name >encodingFilter</ filter-name >
         < url-pattern >/*</ url-pattern >
     </ filter-mapping >
 
     <!-- 配置SpringMVC -->
     < servlet >
         < description >spring mvc servlet</ description >
         < servlet-name >springMvc</ servlet-name >
         < servlet-class >org.springframework.web.servlet.DispatcherServlet</ servlet-class >
         < init-param >
             < description >spring mvc 配置文件</ description >
             < param-name >contextConfigLocation</ param-name >
             < param-value >classpath:spring-mvc.xml</ param-value >
         </ init-param >
         < load-on-startup >1</ load-on-startup >
     </ servlet >
     < servlet-mapping >
         < servlet-name >springMvc</ servlet-name >
         < url-pattern >/</ url-pattern >
     </ servlet-mapping >
 
     < welcome-file-list >
         < welcome-file >/index.jsp</ welcome-file >
     </ welcome-file-list >
 
</ web-app >

到这里的话项目配置就已经完成了,我使用的是tomcat运行的,跑起来后可以在jsp页面中看到hello word(自己要显示的东西)说明项目已经搭建好了。

此文章只是自己的一个学习记录,有问题可联系QQ:654557402

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值