- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章Java框架搭建之Maven、Mybatis、Spring MVC整合搭建(图文)由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
本文主要介绍了java框架搭建之maven、mybatis、spring mvc整合搭建(图文),分享给大家,具体如下:
ssm(spring+springmvc+mybatis),目前较为主流的企业级架构方案。标准的mvc设计模式,将整个系统划分为显示层、controller层、service层、dao层四层,使用springmvc负责请求的转发和视图管理,spring实现业务对象管理, mybatis作为数据对象持久化引擎.
框架详情 。
spring 是一个轻量级的java开发框架,它是为了解决企业应用开发的复杂性而创建的。spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何java应用都可以从spring中受益。 简单来说,spring是一个轻量级的控制反转(ioc)和面向切面(aop)的容器框架.
springmvc 属于springframework的后续产品,分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制.
mybatis 是一个基于java的持久层框架。mybatis提供的持久层框架包括sql maps和data access objects(dao)它消除了几乎所有的jdbc代码和参数的手工设置以及结果集的检索。mybatis 使用简单的 xml或注解用于配置和原始映射,将接口和 java映射成数据库中的记录.
1. 下载eclipse 。
到网站下载 http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/marsr 。
选择自己所要的版本 。
2. 新建maven项目 。
选择file –> new –> maven project 。
可看到下面界面 。
点击next,可看到下面界面,我们选择maven-archetype-webapp 。
点击next,可看到。group id为包名,artifact id为项目名。这里我们输入group id=com.cjt, artifact id=mymaven.
最后点击finish成功创建项目 。
3. 项目运行前准备工作 。
新建项目之后,可以看到错误,这是build path与没有引入javaee包引起的.
1)设置build path 。
右键项目 –> build path --> configure build path… 。
然后选择libraries 。
maven默认是选择一个library的,这个错误的,我们双击这个来edit.
下面界面我们选择alternate jre或者workspace default jre。这里我们选择alternate jre.
2)引入javaee包 。
在pom.xml上引入javaee包 。
1
2
3
4
5
6
|
<!-- 导入java ee jar 包 -->
<dependency>
<groupid>javax</groupid>
<artifactid>javaee-api</artifactid>
<version>
7.0
</version>
</dependency>
|
4. 项目配置文件设置 。
1) 设置pom.xml 。
我们现在设置pom.xml,下载jar包,这个过程可能有点慢 。
pom.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
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
|
<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.cjt</groupid>
<artifactid>mymaven</artifactid>
<packaging>war</packaging>
<version>
0.0
.
1
-snapshot</version>
<name>testmaven01 maven webapp</name>
<url>http:
//maven.apache.org</url>
<properties>
<!-- spring版本号 -->
<spring.version>
4.0
.
2
.release</spring.version>
<!-- mybatis版本号 -->
<mybatis.version>
3.2
.
6
</mybatis.version>
<!-- log4j日志文件管理包版本 -->
<slf4j.version>
1.7
.
7
</slf4j.version>
<log4j.version>
1.2
.
17
</log4j.version>
</properties>
<dependencies>
<dependency>
<groupid>junit</groupid>
<artifactid>junit</artifactid>
<version>
3.8
.
1
</version>
<scope>test</scope>
</dependency>
<!-- 导入java ee jar 包 -->
<dependency>
<groupid>javax</groupid>
<artifactid>javaee-api</artifactid>
<version>
7.0
</version>
</dependency>
<!-- spring核心包 -->
<dependency>
<groupid>org.springframework</groupid>
<artifactid>spring-core</artifactid>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupid>org.springframework</groupid>
<artifactid>spring-web</artifactid>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupid>org.springframework</groupid>
<artifactid>spring-oxm</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-jdbc</artifactid>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupid>org.springframework</groupid>
<artifactid>spring-webmvc</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-context-support</artifactid>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupid>org.springframework</groupid>
<artifactid>spring-test</artifactid>
<version>${spring.version}</version>
</dependency>
<!-- mybatis核心包 -->
<dependency>
<groupid>org.mybatis</groupid>
<artifactid>mybatis</artifactid>
<version>${mybatis.version}</version>
</dependency>
<!-- mybatis/spring包 -->
<dependency>
<groupid>org.mybatis</groupid>
<artifactid>mybatis-spring</artifactid>
<version>
1.2
.
2
</version>
</dependency>
<!-- 导入java ee jar 包 -->
<dependency>
<groupid>javax</groupid>
<artifactid>javaee-api</artifactid>
<version>
7.0
</version>
</dependency>
<!-- 导入mysql数据库链接jar包 -->
<dependency>
<groupid>mysql</groupid>
<artifactid>mysql-connector-java</artifactid>
<version>
5.1
.
30
</version>
</dependency>
<!-- 导入dbcp的jar包,用来在applicationcontext.xml中配置数据库 -->
<dependency>
<groupid>commons-dbcp</groupid>
<artifactid>commons-dbcp</artifactid>
<version>
1.2
.
2
</version>
</dependency>
<!-- jstl标签类 -->
<dependency>
<groupid>jstl</groupid>
<artifactid>jstl</artifactid>
<version>
1.2
</version>
</dependency>
<!-- 日志文件管理包 -->
<!-- log start -->
<dependency>
<groupid>log4j</groupid>
<artifactid>log4j</artifactid>
<version>${log4j.version}</version>
</dependency>
<!-- 格式化对象,方便输出日志 -->
<dependency>
<groupid>com.alibaba</groupid>
<artifactid>fastjson</artifactid>
<version>
1.1
.
41
</version>
</dependency>
<dependency>
<groupid>org.slf4j</groupid>
<artifactid>slf4j-api</artifactid>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupid>org.slf4j</groupid>
<artifactid>slf4j-log4j12</artifactid>
<version>${slf4j.version}</version>
</dependency>
<!-- log end -->
<!-- 映入json -->
<dependency>
<groupid>org.codehaus.jackson</groupid>
<artifactid>jackson-mapper-asl</artifactid>
<version>
1.9
.
13
</version>
</dependency>
<!-- 上传组件包 -->
<dependency>
<groupid>commons-fileupload</groupid>
<artifactid>commons-fileupload</artifactid>
<version>
1.3
.
1
</version>
</dependency>
<dependency>
<groupid>commons-io</groupid>
<artifactid>commons-io</artifactid>
<version>
2.4
</version>
</dependency>
<dependency>
<groupid>commons-codec</groupid>
<artifactid>commons-codec</artifactid>
<version>
1.9
</version>
</dependency>
</dependencies>
<build>
<finalname>testmaven01</finalname>
</build>
</project>
|
2) 创建jdbc.properties 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
driver=com.mysql.jdbc.driver
url=jdbc:mysql:
//localhost:3306/test
username=root
password=
#定义初始连接数
initialsize=
1
#定义最大连接数
maxactive=
20
#定义最大空闲
maxidle=
20
#定义最小空闲
minidle=
1
#定义最长等待时间
maxwait=
60000
|
3) log4j.properties 。
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
|
### set log levels ###
#log4j.rootlogger = debug , stdout , d , e
log4j.rootlogger = debug , stdout , d
### output to the console ###
log4j.appender.stdout = org.apache.log4j.consoleappender
log4j.appender.stdout.target = system.out
log4j.appender.stdout.layout = org.apache.log4j.patternlayout
#log4j.appender.stdout.layout.conversionpattern = %d{absolute} %5p %c{
1
}:%l - %m%n
log4j.appender.stdout.layout.conversionpattern = %-d{yyyy-mm-dd hh:mm:ss} [%c]-[%p] %m%n
### output to the log file ###
log4j.appender.d = org.apache.log4j.dailyrollingfileappender
log4j.appender.d.file = ${springmvc.root}/web-inf/logs/log.log
log4j.appender.d.append =
true
log4j.appender.d.threshold = debug
log4j.appender.d.layout = org.apache.log4j.patternlayout
log4j.appender.d.layout.conversionpattern = %-d{yyyy-mm-dd hh:mm:ss} [ %t:%r ] - [ %p ] %m%n
### save exception information to separate file ###
log4j.appender.d = org.apache.log4j.dailyrollingfileappender
log4j.appender.d.file = ${springmvc.root}/web-inf/logs/error.log
log4j.appender.d.append =
true
log4j.appender.d.threshold = error
log4j.appender.d.layout = org.apache.log4j.patternlayout
log4j.appender.d.layout.conversionpattern = %-d{yyyy-mm-dd hh:mm:ss} [ %t:%r ] - [ %p ] %m%n
|
4) 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
|
<?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:p=
"http://www.springframework.org/schema/p"
xmlns:context=
"http://www.springframework.org/schema/context"
xmlns:mvc=
"http://www.springframework.org/schema/mvc"
xsi:schemalocation="http:
//www.springframework.org/schema/beans
http:
//www.springframework.org/schema/beans/spring-beans-3.1.xsd
http:
//www.springframework.org/schema/context
http:
//www.springframework.org/schema/context/spring-context-3.1.xsd
http:
//www.springframework.org/schema/mvc
http:
//www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">
<!-- 自动扫描该包,使springmvc认为包下用了
@controller
注解的类是控制器 -->
<context:component-scan base-
package
=
"com.cjt.controller"
/>
<!--避免ie执行ajax时,返回json出现下载文件 -->
<bean id=
"mappingjacksonhttpmessageconverter"
class
=
"org.springframework.http.converter.json.mappingjacksonhttpmessageconverter"
>
<property name=
"supportedmediatypes"
>
<list>
<value>text/html;charset=utf-
8
</value>
</list>
</property>
</bean>
<!-- 启动springmvc的注解功能,完成请求和注解pojo的映射 -->
<bean
class
=
"org.springframework.web.servlet.mvc.annotation.annotationmethodhandleradapter"
>
<property name=
"messageconverters"
>
<list>
<ref bean=
"mappingjacksonhttpmessageconverter"
/> <!-- json转换器 -->
</list>
</property>
</bean>
<!-- 定义跳转的文件的前后缀 ,视图模式配置-->
<bean
class
=
"org.springframework.web.servlet.view.internalresourceviewresolver"
>
<!-- 这里的配置我的理解是自动给后面action的方法
return
的字符串加上前缀和后缀,变成一个 可用的url地址 -->
<property name=
"prefix"
value=
"/web-inf/jsp/"
/>
<property name=
"suffix"
value=
".jsp"
/>
</bean>
<!-- 配置文件上传,如果没有使用文件上传可以不用配置,当然如果不配,那么配置文件中也不必引入上传组件包 -->
<bean id=
"multipartresolver"
class
=
"org.springframework.web.multipart.commons.commonsmultipartresolver"
>
<!-- 默认编码 -->
<property name=
"defaultencoding"
value=
"utf-8"
/>
<!-- 文件大小最大值 -->
<property name=
"maxuploadsize"
value=
"10485760000"
/>
<!-- 内存中的最大值 -->
<property name=
"maxinmemorysize"
value=
"40960"
/>
</bean>
</beans>
|
5) spring-mybatis.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
|
<?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:p=
"http://www.springframework.org/schema/p"
xmlns:context=
"http://www.springframework.org/schema/context"
xmlns:mvc=
"http://www.springframework.org/schema/mvc"
xsi:schemalocation="http:
//www.springframework.org/schema/beans
http:
//www.springframework.org/schema/beans/spring-beans-3.1.xsd
http:
//www.springframework.org/schema/context
http:
//www.springframework.org/schema/context/spring-context-3.1.xsd
http:
//www.springframework.org/schema/mvc
http:
//www.springframework.org/schema/mvc/spring-mvc-4.0.xsd">
<!-- 自动扫描 -->
<context:component-scan base-
package
=
"com.cjt.service"
/>
<!-- 引入配置文件 -->
<bean id=
"propertyconfigurer"
class
=
"org.springframework.beans.factory.config.propertyplaceholderconfigurer"
>
<property name=
"location"
value=
"classpath:jdbc.properties"
/>
</bean>
<bean id=
"datasource"
class
=
"org.apache.commons.dbcp.basicdatasource"
destroy-method=
"close"
>
<property name=
"driverclassname"
value=
"${driver}"
/>
<property name=
"url"
value=
"${url}"
/>
<property name=
"username"
value=
"${username}"
/>
<property name=
"password"
value=
"${password}"
/>
<!-- 初始化连接大小 -->
<property name=
"initialsize"
value=
"${initialsize}"
></property>
<!-- 连接池最大数量 -->
<property name=
"maxactive"
value=
"${maxactive}"
></property>
<!-- 连接池最大空闲 -->
<property name=
"maxidle"
value=
"${maxidle}"
></property>
<!-- 连接池最小空闲 -->
<property name=
"minidle"
value=
"${minidle}"
></property>
<!-- 获取连接最大等待时间 -->
<property name=
"maxwait"
value=
"${maxwait}"
></property>
</bean>
<!-- spring和mybatis完美整合,不需要mybatis的配置映射文件 -->
<bean id=
"sqlsessionfactory"
class
=
"org.mybatis.spring.sqlsessionfactorybean"
>
<property name=
"datasource"
ref=
"datasource"
/>
<!-- 自动扫描mapping.xml文件 -->
<property name=
"mapperlocations"
value=
"classpath:com/cjt/mapping/*.xml"
></property>
</bean>
<!-- dao接口所在包名,spring会自动查找其下的类 -->
<bean
class
=
"org.mybatis.spring.mapper.mapperscannerconfigurer"
>
<property name=
"basepackage"
value=
"com.cjt.dao"
/>
<property name=
"sqlsessionfactorybeanname"
value=
"sqlsessionfactory"
></property>
</bean>
<!-- (事务管理)transaction manager, use jtatransactionmanager
for
global tx -->
<bean id=
"transactionmanager"
class
=
"org.springframework.jdbc.datasource.datasourcetransactionmanager"
>
<property name=
"datasource"
ref=
"datasource"
/>
</bean>
</beans>
|
上面的文件都创建在resources文件夹下 。
5. 数据库代码自动生成 。
1)新建表 。
首先,我们新建表user_t,字段如下:
2)下载包 。
下载包有:mybatis-3.2.6.jar、mybatis-generator-core-1.3.3.jar、mysql-connector-java-5.1.39-bin.jar 。
3)运行-自动生成代码 。
新建一个文件夹,下面包括如下文件 。
generatorconfig.xml是生成代码的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
|
<?xml version=
"1.0"
encoding=
"utf-8"
?>
<!doctype generatorconfiguration
public
"-//mybatis.org//dtd mybatis generator configuration 1.0//en"
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"
>
<generatorconfiguration>
<!-- 数据库驱动-->
<classpathentry location=
"mysql-connector-java-5.1.39-bin.jar"
/>
<context id=
"db2tables"
targetruntime=
"mybatis3"
>
<commentgenerator>
<property name=
"suppressdate"
value=
"true"
/>
<!-- 是否去除自动生成的注释
true
:是 :
false
:否 -->
<property name=
"suppressallcomments"
value=
"true"
/>
</commentgenerator>
<!--数据库链接url,用户名、密码 -->
<jdbcconnection driverclass=
"com.mysql.jdbc.driver"
connectionurl=
"jdbc:mysql://localhost:3306/test"
userid=
"root"
password=
""
>
</jdbcconnection>
<javatyperesolver>
<property name=
"forcebigdecimals"
value=
"false"
/>
</javatyperesolver>
<!-- 生成模型的包名和位置-->
<javamodelgenerator targetpackage=
"com.cjt.domain"
targetproject=
"src"
>
<property name=
"enablesubpackages"
value=
"true"
/>
<property name=
"trimstrings"
value=
"true"
/>
</javamodelgenerator>
<!-- 生成映射文件的包名和位置-->
<sqlmapgenerator targetpackage=
"com.cjt.mapping"
targetproject=
"src"
>
<property name=
"enablesubpackages"
value=
"true"
/>
</sqlmapgenerator>
<!-- 生成dao的包名和位置-->
<javaclientgenerator type=
"xmlmapper"
targetpackage=
"com.cjt.dao"
targetproject=
"src"
>
<property name=
"enablesubpackages"
value=
"true"
/>
</javaclientgenerator>
<!-- 要生成的表 tablename是数据库中的表名或视图名 domainobjectname是实体类名-->
<table tablename=
"user_t"
domainobjectname=
"user"
enablecountbyexample=
"false"
enableupdatebyexample=
"false"
enabledeletebyexample=
"false"
enableselectbyexample=
"false"
selectbyexamplequeryid=
"false"
></table>
</context>
</generatorconfiguration>
|
然后我们用cmd命令进入到新建的文件夹下面,输入:
java -jar mybatis-generator-core-1.3.3.jar -configfile generatorconfig.xml -overwrite 。
最后,代码生成了.
备注:代码自动生成这里通过命令行的方式,读者也可以通过eclipse的插件方式生成.
6. 代码开始 。
新建包,如下: (箭头的都是上面自动生成的代码) 。
iuserservice.java 。
1
2
3
4
|
public
interface
iuserservice {
public
user getuserbyid(
int
id);
}
|
userserviceimpl.java 。
1
2
3
4
5
6
7
8
9
10
11
12
|
@service
public
class
userserviceimpl
implements
iuserservice {
@autowired
private
iuserdao userdao;
public
userserviceimpl() {
system.out.println(
"userserviceimpl"
);
}
public
user getuserbyid(
int
id) {
return
userdao.selectbyprimarykey(id);
}
}
|
usercontroller.java 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
@controller
@requestmapping
(
"/user"
)
public
class
usercontroller {
public
usercontroller() {
system.out.println(
"usercontroller"
);
}
@resource
private
iuserservice userservice;
@requestmapping
(
"/showuser"
)
public
string toindex(httpservletrequest request,model model) {
system.out.println(
"usercontroller showuser"
);
int
id = integer.parseint(request.getparameter(
"id"
));
user user = userservice.getuserbyid(id);
model.addattribute(
"user"
, user);
return
"showuser"
;
}
}
|
在web-inf下新建一个目录jsp,下面新建文件showuser.jsp 。
showuser.jsp 。
1
2
3
4
5
6
7
8
9
10
11
12
|
<%@ page language=
"java"
contenttype=
"text/html; charset=utf-8"
pageencoding=
"utf-8"
import
=
"java.util.*,com.cjt.domain.*"
%>
<!doctype html
public
"-//w3c//dtd html 4.01 transitional//en"
"http://www.w3.org/tr/html4/loose.dtd"
>
<html>
<head>
<meta http-equiv=
"content-type"
content=
"text/html; charset=utf-8"
>
<title>insert title here</title>
</head>
<body>
${user.username}
</body>
</html>
|
最后,附上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
|
<?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"
xsi:schemalocation=
"http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version=
"3.0"
>
<display-name>archetype created web application</display-name>
<!-- spring和mybatis的配置文件 -->
<context-param>
<param-name>contextconfiglocation</param-name>
<param-value>classpath:spring-mybatis.xml</param-value>
</context-param>
<!-- 编码过滤器 -->
<filter>
<filter-name>encodingfilter</filter-name>
<filter-
class
>org.springframework.web.filter.characterencodingfilter</filter-
class
>
<async-supported>
true
</async-supported>
<init-param>
<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>
<!-- spring监听器 -->
<listener>
<listener-
class
>org.springframework.web.context.contextloaderlistener</listener-
class
>
</listener>
<!-- 防止spring内存溢出监听器 -->
<listener>
<listener-
class
>org.springframework.web.util.introspectorcleanuplistener</listener-
class
>
</listener>
<!-- spring mvc servlet -->
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-
class
>org.springframework.web.servlet.dispatcherservlet</servlet-
class
>
<init-param>
<param-name>contextconfiglocation</param-name>
<param-value>classpath:spring-mvc.xml</param-value>
</init-param>
<load-on-startup>
1
</load-on-startup>
<async-supported>
true
</async-supported>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<!-- 此处可以可以配置成*.
do
,对应struts的后缀习惯 -->
<url-pattern>/</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>/index.jsp</welcome-file>
</welcome-file-list>
</web-app>
|
上面,代码生成完成了.
可以下载项目:https://github.com/cjt321/mavenspirngmvcmybatis 。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我.
原文链接:https://www.cnblogs.com/alunchen/p/5632497.html 。
最后此篇关于Java框架搭建之Maven、Mybatis、Spring MVC整合搭建(图文)的文章就讲到这里了,如果你想了解更多关于Java框架搭建之Maven、Mybatis、Spring MVC整合搭建(图文)的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
为了构建 CentOS 6.5 OSM 切片服务器,我正在寻找一些文档和/或教程。 我试过this one正如我在我的 previous post 中所说的那样但它适用于 Ubuntu 14.04,而
我正在寻找可用于集成任何源代码控制管理系统的通用 git 桥(如 git-svn、git-p4、git-tfs)模板。 如果没有这样的模板,至少有一些关于如何在 git 端集成基本操作的说明(对于其他
1、前言 redis在我们企业级开发中是很常见的,但是单个redis不能保证我们的稳定使用,所以我们要建立一个集群。 redis有两种高可用的方案: High availabilit
简介 前提条件: 确保本机已经安装 VS Code。 确保本机已安装 SSH client, 并且确保远程主机已安装 SSH server。 VSCode 已经安装了插件 C/
为什么要用ELK ELK实际上是三个工具,Elastricsearch + Logstash + Kibana,通过ELK,用来收集日志还有进行日志分析,最后通过可视化UI进行展示。一开始业务量比
在日常办公当中,经常会需要一个共享文件夹来存放一些大家共享的资料,为了保证文件数据的安全,最佳的方式是公司内部服务器搭建FTP服务器,然后分配多个用户给相应的人员。今天给大家分享FileZilla搭
最近由于业务需要,开始进行 Flutter 的研究,由于 Flutter 的环境搭建在官网上有些细节不是很清楚,笔者重新整理输出 1. 配置镜像 由于在国内访问 Flutter
目录 1. 安装go软件包 2. 配置系统变量 3. 安装git 4. 设置go代理 5. 下载gin框架 6. 创建项目 7.
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任
上篇文章给大家介绍了使用docker compose安装FastDfs文件服务器的实例详解 今天给大家介绍如何使用 docker compose 搭建 fastDFS文件服务器,内容详情如下所示:
目录 1.创建Maven 2.Maven目录和porm.xml配置 3.配置Tomcat服务器 1.创建Maven
laravel 官方提供 homestead 和 valet 作为本地开发环境,homestead 是一个官方预封装的 vagrant box,也就是一个虚拟机,但是跟 docker 比,它占用体积
这个tutorial显示了 Razor Pages 在 Asp.Net Core 2 中的实现。但是,当我运行 CLI 命令时: dotnet aspnet-codegenerator razorp
我创建了一个单独的类库项目来存储数据库上下文和模型类。在同一解决方案中,我创建了一个 ASP.NET MVC 项目并引用了类库项目,并在项目的 Web.config 文件中包含了数据库上下文的连接字符
关于代码托管,公司是基于Gitlab自建的,它功能全而强大,但是也比较重,我个人偏向于开源、小巧、轻便、实用,所以就排除了Github,在Gogs和Gitea中选者。Gogs在Github有38
目录 1、高可用简介 1.1 高可用整体架构 1.2 基于 QJM 的共享存储系统的数据同步机制分析 1.3 NameNode 主
Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运行超过两年半了。Igor 将源代码以类BSD许可证的形式发布。 在高并发连接的情况
对于我们的 ASP.NET Core 项目,我们使用包管理器控制台中的 Scaffold-DbContext 搭建现有数据库。 每次我们做脚手架时,上下文类与所有实体一起生成,它包含调用 option
我正在使用 .net 核心 2.0。我已经安装了以下 nuget 包:1: Microsoft.AspNetCore.All2: Microsoft.EntityFrameworkCore.Tools
我正在使用 NetBeans 及其 RAD 开发功能开发 JEE6 JSF 应用程序。我想使用脚手架来节省更新 Controller 和模型 View 的时间。 OneToMany 关联在 View
我是一名优秀的程序员,十分优秀!