Skip to content

Commit 0620983

Browse files
committed
【SpringMVC】SpringMVC基础-SpringMVC项目快速搭建
1 parent b41b689 commit 0620983

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+1279
-61
lines changed

springMVC/.idea/codeStyleSettings.xml

Lines changed: 13 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

springMVC/.idea/compiler.xml

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

springMVC/.idea/misc.xml

Lines changed: 3 additions & 16 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

springMVC/.idea/workspace.xml

Lines changed: 964 additions & 43 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

springMVC/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
55
<modelVersion>4.0.0</modelVersion>
66

7-
<groupId>com.wisely</groupId>
7+
<groupId>cn.chenhaoxiang</groupId>
88
<artifactId>highlight_springmvc4</artifactId>
99
<version>1.0-SNAPSHOT</version>
1010
<packaging>war</packaging>

springMVC/springMVC.iml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,17 @@
44
<facet type="web" name="Web">
55
<configuration>
66
<webroots>
7-
<root url="file://$MODULE_DIR$/src/main/webapp" relative="/" />
7+
<root url="file://$MODULE_DIR$/src/main/resources/views" relative="/" />
88
</webroots>
99
<sourceRoots>
1010
<root url="file://$MODULE_DIR$/src/main/java" />
1111
<root url="file://$MODULE_DIR$/src/main/resources" />
1212
</sourceRoots>
1313
</configuration>
1414
</facet>
15+
<facet type="Spring" name="Spring">
16+
<configuration />
17+
</facet>
1518
</component>
1619
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7" inherit-compiler-output="false">
1720
<output url="file://$MODULE_DIR$/target/classes" />
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package cn.hncu.springmvc;
2+
3+
import org.springframework.stereotype.Controller;
4+
import org.springframework.web.bind.annotation.RequestMapping;
5+
6+
/**
7+
* Created with IntelliJ IDEA.
8+
* User: 陈浩翔.
9+
* Date: 2016/12/19.
10+
* Time: 下午 3:55.
11+
* Explain:简单控制器
12+
*/
13+
@Controller //利用@Controller注解声明是一个控制器
14+
public class HelloController {
15+
@RequestMapping("/index")//利用@RequestMapping配置URL和方法之间的映射
16+
public String hello(){
17+
return "index";//通过上面ViewResolver的Bean配置,返回值为index,说明我们的页面放置的路径是:/WEB-INF/classes/views/index.jsp
18+
}
19+
}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package cn.hncu.springmvc;
2+
3+
import org.springframework.context.annotation.Bean;
4+
import org.springframework.context.annotation.ComponentScan;
5+
import org.springframework.context.annotation.Configuration;
6+
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
7+
import org.springframework.web.servlet.view.InternalResourceViewResolver;
8+
import org.springframework.web.servlet.view.JstlView;
9+
10+
/**
11+
* Created with IntelliJ IDEA.
12+
* User: 陈浩翔.
13+
* Date: 2016/12/19.
14+
* Time: 下午 3:39.
15+
* Explain:配置类
16+
*/
17+
@Configuration
18+
@EnableWebMvc
19+
@ComponentScan("cn.hncu.springmvc")
20+
public class MyMvcConfig {
21+
@Bean
22+
public InternalResourceViewResolver viewResolver(){
23+
InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
24+
viewResolver.setPrefix("/WEB-INF/classes/views/");//映射路径-运行时代码会将我们的页面自动编译到/WEB-INF/classes/views/下
25+
viewResolver.setSuffix(".jsp");//实际页面后缀
26+
viewResolver.setViewClass(JstlView.class);
27+
return viewResolver;
28+
}
29+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package cn.hncu.springmvc;
2+
3+
import org.springframework.web.WebApplicationInitializer;
4+
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
5+
import org.springframework.web.servlet.DispatcherServlet;
6+
7+
import javax.servlet.ServletContext;
8+
import javax.servlet.ServletException;
9+
import javax.servlet.ServletRegistration;
10+
11+
/**
12+
* Created with IntelliJ IDEA.
13+
* User: 陈浩翔.
14+
* Date: 2016/12/19.
15+
* Time: 下午 3:44.
16+
* Explain:Web配置
17+
*/
18+
public class WebInitializer implements WebApplicationInitializer {
19+
//WebApplicationInitializer是spring提供用来配置Servlet3.0+配置的接口,从而实现了替代web.xml的位置。
20+
//实现此接口将会自动被SpringServletContainerInitializer(用来启动Servlet3.0容器)获取到
21+
22+
@Override
23+
public void onStartup(ServletContext servletContext) throws ServletException {
24+
AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext();
25+
context.register(MyMvcConfig.class);
26+
context.setServletContext(servletContext);//新建WebApplicationContext,注册配置类,并将其和当前servletContext关联
27+
28+
ServletRegistration.Dynamic servlet = servletContext.addServlet("dispatcher",new DispatcherServlet(context));
29+
//注册Spring MVC的DispatcherServlet
30+
servlet.addMapping("/");
31+
servlet.setLoadOnStartup(1);
32+
}
33+
}
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!-- 可以这样描述配置文件的基本结构:以<configuration>开头,
3+
后面有零个或多个<appender>元素,有零个或多个<logger>元素,有最多一个<root>元素 -->
4+
<configuration debug="false" scan="true" scanPeriod="1 seconds">
5+
<!-- debug : 默认为false ,设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。
6+
scan : 配置文件如果发生改变,将会重新加载,默认值为true;
7+
scanPeriod : 检测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位时毫秒,
8+
当scan为true时,这个属性生效,默认时间间隔为1min。 -->
9+
10+
<contexListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
11+
<resetJUL>true</resetJUL>
12+
</contexListener>
13+
14+
<jmxConfigurator/>
15+
16+
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
17+
<!-- <appender> 是 <configuration> 的子节点,是负责写日志的组件。
18+
appender 有两个必要属性 name ,class 。name指定appender 的名称, class 指定appender的全限定名
19+
class 包括 :ch.qos.logback.core.ConsoleAppender / ch.qos.logback.core.FileAppender/ ch.qos.logback.core.RollingFileAppender -->
20+
<encoder>
21+
<!--ch.qos.logback.core.ConsoleAppender 把日志添加到控制台,有如下节点: <encoder> : 对日志进行格式化。
22+
<target> : 字符串System.out 或者 System.err, 默认 System.out;
23+
ch.qos.logback.core.FileAppender 把日志添加到文件
24+
ch.qos.logback.core.RollingFileAppender[常用] 滚动纪录文件,先将日志记录到指定文件,当符合某种条件时,将日志记录到其他文件-->
25+
<pattern>logbak: %d{HH:mm:ss.SSS} %logger{36} - %msg%n</pattern>
26+
</encoder>
27+
</appender>
28+
29+
<logger name="org.springframework.web" level="DEBUG"></logger>
30+
<!--logger 是 <configuration> 的子节点 来设置某一个包或者具体的某一个类的日志打印级别,以及指定<appender>
31+
loger 仅有一个name属性,两个可选属性 level/addtivity
32+
name : 用来指定受此loger约束的某一个包或者具体的某一个类
33+
level:用来设置打印级别,大小写无关-->
34+
35+
<!-- 元素配置根 logger。该元素有一个 level 属性。没有 name 属性,因为已经被命名 为“root”-->
36+
<!-- 默认根节点是INFO级别的日志 -->
37+
<!-- root:logger的根节点,就这一个,默认名称就是root
38+
level:日志级别
39+
appender-ref:确定使用哪个appender
40+
-->
41+
<root level="info">
42+
<appender-ref ref="console"></appender-ref>
43+
</root>
44+
45+
</configuration>
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<%--
2+
Created by IntelliJ IDEA.
3+
User: 陈浩翔
4+
Date: 2016/12/18
5+
Time: 下午 12:45
6+
To change this template use File | Settings | File Templates.
7+
--%>
8+
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
9+
<html>
10+
<head>
11+
<title>MVC Title</title>
12+
</head>
13+
<body>
14+
<pre>Welcome to Spring MVC</pre>
15+
<br/>
16+
欢迎!
17+
</body>
18+
</html>
Binary file not shown.
Binary file not shown.
Binary file not shown.

springMVC/target/classes/logback.xml

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!-- 可以这样描述配置文件的基本结构:以<configuration>开头,
3+
后面有零个或多个<appender>元素,有零个或多个<logger>元素,有最多一个<root>元素 -->
4+
<configuration debug="false" scan="true" scanPeriod="1 seconds">
5+
<!-- debug : 默认为false ,设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。
6+
scan : 配置文件如果发生改变,将会重新加载,默认值为true;
7+
scanPeriod : 检测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位时毫秒,
8+
当scan为true时,这个属性生效,默认时间间隔为1min。 -->
9+
10+
<contexListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
11+
<resetJUL>true</resetJUL>
12+
</contexListener>
13+
14+
<jmxConfigurator/>
15+
16+
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
17+
<!-- <appender> 是 <configuration> 的子节点,是负责写日志的组件。
18+
appender 有两个必要属性 name ,class 。name指定appender 的名称, class 指定appender的全限定名
19+
class 包括 :ch.qos.logback.core.ConsoleAppender / ch.qos.logback.core.FileAppender/ ch.qos.logback.core.RollingFileAppender -->
20+
<encoder>
21+
<!--ch.qos.logback.core.ConsoleAppender 把日志添加到控制台,有如下节点: <encoder> : 对日志进行格式化。
22+
<target> : 字符串System.out 或者 System.err, 默认 System.out;
23+
ch.qos.logback.core.FileAppender 把日志添加到文件
24+
ch.qos.logback.core.RollingFileAppender[常用] 滚动纪录文件,先将日志记录到指定文件,当符合某种条件时,将日志记录到其他文件-->
25+
<pattern>logbak: %d{HH:mm:ss.SSS} %logger{36} - %msg%n</pattern>
26+
</encoder>
27+
</appender>
28+
29+
<logger name="org.springframework.web" level="DEBUG"></logger>
30+
<!--logger 是 <configuration> 的子节点 来设置某一个包或者具体的某一个类的日志打印级别,以及指定<appender>
31+
loger 仅有一个name属性,两个可选属性 level/addtivity
32+
name : 用来指定受此loger约束的某一个包或者具体的某一个类
33+
level:用来设置打印级别,大小写无关-->
34+
35+
<!-- 元素配置根 logger。该元素有一个 level 属性。没有 name 属性,因为已经被命名 为“root”-->
36+
<!-- 默认根节点是INFO级别的日志 -->
37+
<!-- root:logger的根节点,就这一个,默认名称就是root
38+
level:日志级别
39+
appender-ref:确定使用哪个appender
40+
-->
41+
<root level="info">
42+
<appender-ref ref="console"></appender-ref>
43+
</root>
44+
45+
</configuration>
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<%--
2+
Created by IntelliJ IDEA.
3+
User: 陈浩翔
4+
Date: 2016/12/18
5+
Time: 下午 12:45
6+
To change this template use File | Settings | File Templates.
7+
--%>
8+
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
9+
<html>
10+
<head>
11+
<title>MVC Title</title>
12+
</head>
13+
<body>
14+
<pre>Welcome to Spring MVC</pre>
15+
<br/>
16+
欢迎!
17+
</body>
18+
</html>
Binary file not shown.
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
Manifest-Version: 1.0
2+
Built-By: 陈浩翔
3+
Created-By: IntelliJ IDEA
4+
Build-Jdk: 1.7.0_04
5+
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!-- 可以这样描述配置文件的基本结构:以<configuration>开头,
3+
后面有零个或多个<appender>元素,有零个或多个<logger>元素,有最多一个<root>元素 -->
4+
<configuration debug="false" scan="true" scanPeriod="1 seconds">
5+
<!-- debug : 默认为false ,设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。
6+
scan : 配置文件如果发生改变,将会重新加载,默认值为true;
7+
scanPeriod : 检测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位时毫秒,
8+
当scan为true时,这个属性生效,默认时间间隔为1min。 -->
9+
10+
<contexListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
11+
<resetJUL>true</resetJUL>
12+
</contexListener>
13+
14+
<jmxConfigurator/>
15+
16+
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
17+
<!-- <appender> 是 <configuration> 的子节点,是负责写日志的组件。
18+
appender 有两个必要属性 name ,class 。name指定appender 的名称, class 指定appender的全限定名
19+
class 包括 :ch.qos.logback.core.ConsoleAppender / ch.qos.logback.core.FileAppender/ ch.qos.logback.core.RollingFileAppender -->
20+
<encoder>
21+
<!--ch.qos.logback.core.ConsoleAppender 把日志添加到控制台,有如下节点: <encoder> : 对日志进行格式化。
22+
<target> : 字符串System.out 或者 System.err, 默认 System.out;
23+
ch.qos.logback.core.FileAppender 把日志添加到文件
24+
ch.qos.logback.core.RollingFileAppender[常用] 滚动纪录文件,先将日志记录到指定文件,当符合某种条件时,将日志记录到其他文件-->
25+
<pattern>logbak: %d{HH:mm:ss.SSS} %logger{36} - %msg%n</pattern>
26+
</encoder>
27+
</appender>
28+
29+
<logger name="org.springframework.web" level="DEBUG"></logger>
30+
<!--logger 是 <configuration> 的子节点 来设置某一个包或者具体的某一个类的日志打印级别,以及指定<appender>
31+
loger 仅有一个name属性,两个可选属性 level/addtivity
32+
name : 用来指定受此loger约束的某一个包或者具体的某一个类
33+
level:用来设置打印级别,大小写无关-->
34+
35+
<!-- 元素配置根 logger。该元素有一个 level 属性。没有 name 属性,因为已经被命名 为“root”-->
36+
<!-- 默认根节点是INFO级别的日志 -->
37+
<!-- root:logger的根节点,就这一个,默认名称就是root
38+
level:日志级别
39+
appender-ref:确定使用哪个appender
40+
-->
41+
<root level="info">
42+
<appender-ref ref="console"></appender-ref>
43+
</root>
44+
45+
</configuration>
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<%--
2+
Created by IntelliJ IDEA.
3+
User: 陈浩翔
4+
Date: 2016/12/18
5+
Time: 下午 12:45
6+
To change this template use File | Settings | File Templates.
7+
--%>
8+
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
9+
<html>
10+
<head>
11+
<title>MVC Title</title>
12+
</head>
13+
<body>
14+
<pre>Welcome to Spring MVC</pre>
15+
<br/>
16+
欢迎!
17+
</body>
18+
</html>
Binary file not shown.
Binary file not shown.
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<%--
2+
Created by IntelliJ IDEA.
3+
User: 陈浩翔
4+
Date: 2016/12/18
5+
Time: 下午 12:45
6+
To change this template use File | Settings | File Templates.
7+
--%>
8+
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
9+
<html>
10+
<head>
11+
<title>MVC Title</title>
12+
</head>
13+
<body>
14+
<pre>Welcome to Spring MVC</pre>
15+
<br/>
16+
欢迎!
17+
</body>
18+
</html>

0 commit comments

Comments
 (0)