Intellij IDEA 旗舰版创建 Spring MVC 项目踩坑…
2020-03-13 16:03:43来源:博客园 阅读 ()
Intellij IDEA 旗舰版创建 Spring MVC 项目踩坑记
学生可以申请 Intellij IDEA 旗舰版免费试用!我终于可以暂时不用折腾社区版啦啦啦啦啦!!!
IDEA 旗舰版可以直接创建 Spring MVC 项目,但创建后的项目并不是直接就可以运行,还需要进行一些配置。
一、创建项目
打开 Intellij IDEA,创建项目(Create New Project);
在左边选择 “Spring”,然后右边勾选“Spring MVC”,下面的“Web Application”应该会自动勾选,如果没有,则手动勾选上;
下面保持默认选项“Download”就可以,点击“Next”;
输入项目名称(Project name),比如这里我是“SpringMVCTest”,其他不用管,点击“Finish”;
等待 IDEA 下载完响应的包;
我们得到一个初始的项目结构:
此时我们按快捷键 Ctrl+Alt+Shift+S,打开项目结构(Project Structure),可以看到有两个 Problems,点击“Problems”,并在右边点击任意一个蓝色的“[Fix]”,在子菜单中选择“Add all misssing dependencies of 'XXX' to the artifact”,点击“OK”。
这样,在编译运行的时候,就会在“项目文件夹\out\artifacts\项目名_war_explodedlib\WEB-INF”中也建立一个 lib 文件夹,并把相关的包给复制过去。
二、配置 Tomcat
点击右上角的“Add Configuration...”
点击右上角的加号,在菜单中选择“Tomcat Server”,并在子菜单中选择“Local”;
修改“Name”,比如这里是“Tomcat 9”;
指定 Tomcat 目录(Application server);
在“After launch”中选择默认打开的浏览器;
可以看到下面有一个“Warning”,直接点击右边的“Fix”;
接着自动跳到“Deployment”,并自动添加了“XXX:war exploded”;
为了方便,我们将下面的应用上下文改成项目名就好(比如这里的“/SpringMVCTest”),Server 选项卡这边的“URL”也会自动变成“http://localhost:8080/应用上下文”的形式(比如这里会变成“http://localhost:8080/SpringMVCTest”)。点击“OK”。
此时,点击右上角的绿色三角形运行项目;
在启动 Tomcat 之后,IDEA 会自动启动浏览器打开“http://localhost:8080/SpringMVCTest”,显示的就是 web 文件夹下的 index.jsp 了。
三、配置 View Resolver 和 Controller
1、导入 jstl 包
下载地址:
https://search.maven.org/remotecontent?filepath=javax/servlet/jsp/jstl/javax.servlet.jsp.jstl-api/1.2.2/javax.servlet.jsp.jstl-api-1.2.2.jar
下载后复制到项目中的 lib 文件夹中;
再次打开 Project Structure,点击“Modules”,在中间选中项目,在右边点击加号,选择第一项“1 JARs or directories...”;
选择我们刚复制进去的 lib 文件夹中的 jar 包,点击“OK”;
然后 Problems 提示又出问题了,点击“Problems”,点击右边蓝色的“[Fix]”,在子菜单中选择“Add 'javax.servlet.jsp.jstl-api-1.2.2.jar' to the artifact”,点击“OK”。
2、新建 jsp 页面
在 web\WEB-INF 文件夹中新建一个文件夹,命名为“jsp”,并在其中新建一个 jsp 文件,命名为“test.jsp”,如图:
3、新建控制器类
在 src 文件夹中创建包,包名为“域名倒序+项目名+controller”格式,比如我的域名是“zhouxy.xyz”,这个项目名称为“SpringMVCTest”,所以我这里包名为“xyz.zhouxy.springmvctest.controller”(其实最好应该是“xyz.zhouxy.springmvc.test.controller”)。
在里面创建一个 Java 类,我这里类名为“MyController”,如图,为类加上 @Controller 注释,在类中创建一个方法,用 @RequestMapping("/test"),将 “/test” 和该方法绑定。方法返回字符串 "test"。
4、修改配置文件
打开 web.xml,将 org.springframework.web.servlet.DispatcherServlet 对应的映射改成 “/”,使之响应所有访问本 web 应用的 url(即响应“http://localhost:8080/SpringMVCTest/”,不论后面加了什么)。如图:
这里默认 servlet-name 为“dispatcher”,相应的 Servlet 的配置文件名为“dispatcher-servlet.xml”。如果你修改了,那么文件名则应该响应地修改为“XXX-servlet.xml”形式。我这里不作修改。
打开 dispatcher-servlet.xml,修改为如图所示:
注意,其中 <context:component-scan /> 元素的 base-package 属性值是我们的 controller 包的完整包名,如果你的包名和我不一样,注意修改以保持一致。
下面的 View Resolver,将在控制器类中的方法返回字符串 "test" 时,自动在其前面和后面分别加上“/WEB-INF/jsp/”和“.jsp”,使之成为“/WEB-INF/jsp/test.jsp”。
再次运行项目,浏览器像之前一样打开了“http://localhost:8080/SpringMVCTest/”,我们在其后面输入“test”,Dispatcher 会在<context:component-scan /> 元素所指定的包中查找带 @Controller 注释的类,并在其中找到带 @RequestMapping("/test") 注释的请求处理方法,然后执行。如上所述,我们的方法返回了字符串 "test",由 View Resolver “加工”成“/WEB-INF/pages/test.jsp”,返回给 Spring 的org.springframework.web.servlet.DispatcherServlet 对象,也就是 web.xml 中配置的 dispatcher,由它去跳转到“/WEB-INF/pages/test.jsp”页面。
原文链接:https://www.cnblogs.com/Luquan/p/12483975.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- idea为代码添加标签清除标签 2020-06-11
- IDEA 设置热部署 Devtools 2020-06-10
- 2020最新IDEA插件大集合,一款能帮助你写代码的工具是多么重 2020-06-09
- IDEA下Maven的pom文件导入依赖出现Auto build completed wit 2020-06-07
- 解决IDEA Maven下载依赖包速度慢问题 2020-06-05
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash