使用IntelliJ IDEA开发SpringMVC网站(一)开发环境

news/2024/5/19 4:52:03/文章来源:https://blog.csdn.net/suifeng629/article/details/103277801

一、相关环境

     - Intellij IDEA 2016.2 Ultimate

     - Tomcat 8.0.35

     - JDK 1.8.0_92

     - Spring 4.2.6

     - MySql 5.7

     - Maven 3.3.9

     - Bootstrap 3.3.5

       以上是我要做的这个demo所需要的东西,当然有些是可选的,版本也是可控的。比如说如果你用不惯Maven的话可以自行去官网下载jar包然后导入自己的工程中,如果想要学习下Maven可以看看《Maven视频教程》(偶然找到,这个老师做的视频都挺好,推荐以下),不用完全的去学习Maven,懂大概意思后再去找找IntelliJ IDEA如何配置maven的相关文章就足够了。

      还有Bootstrap,纯粹是个人洁癖,不需要这可以去之。

      事先声明,请确保IntelliJ IDEA、Tomcat、MySql和JDK都已经安装好。Maven和Bootstrap的话能有则有。前者为了让导包更容易,后者为了让页面更美观。此外,由于jdk以及mysql的安装网上已经有了很多教程,在此为节省篇幅不做介绍。

二、本地Maven与Tomcat的安装

注:如果使用IntelliJ IDEA集成的maven 3.0.5的话,可以忽略此步安装。

1、下载并安装本地maven    

    点击“Apache-Maven官方网站”进入官网,点击左侧Download选项:

     进入了下载页面,往下拉可发现当前版本是3.3.3,点击下面红框中的apache-maven-3.3.9-bin.zip就可下载,下载后解压缩到相应目录下:

    新增系统变量MAVEN_HOME:即MAVEN安装目录:

    在Path中加入:%MAVEN_HOME%\bin;    

   在cmd中输入mvn -v,若显示如下,则说明本地maven配置完成:

2、下载并安装本地Tomcat

进入Tomcat官网,点击左侧Download的Tomcat8.0,进入Tomcat的下载页面:

64位Windows版本下载64-bit Windows zip (pgp, md5, sha1),解压到所需目录下:

  解压后到\bin\目录下运行startup.bat,如图下所示,如果出现Server startup in xxxx ms说明Tomcat安装成功。

三、创建Maven Web项目

    前面说了这么多,差不多基本的东西都保障了(前提保证你已经安装了jdk)。现在进入正题,如何来创建一个Web项目。对于不使用Maven的开发者,可以直接建一个简单的Web项目。使用Maven的话,请按照图进行操作。

    菜单File->New Project可进入上图界面,首先选择左边栏Maven,再配置JDK(一般如果之前添加了JDK的话会自动填充,如未添加的话点击旁边的New将JDK目录导入即可)。勾选“Create from archetype“,然后选中4处蓝色位置webapp,点Next,进入如下界面:

    这里需要填写GroupId和ArtifactId还有Version,这三个属性目的是标识你的项目的唯一性,比如Tomcat的GroupId是org.apache,即它是apache组织的项目,ArtifactId是tomcat,项目名为tomcat,而我当前使用的Version是7.0.68。这些只在发布时有用,在此可以随便填写,填好后点Next,到如下界面。

    打开Maven home directory,可以发现IntelliJ IDEA已经集成了Maven 2和Maven 3两个版本,如果使用默认集成的maven的话,选择Buldled(Maven 3),直接点击Next。

   我们也可以导入本地新安装的较新的Maven版本,点击蓝色箭头右边的 ... 按钮将Maven路径导入即可,点击Next:

   填写项目名,选择项目保存路径,点击Finish:

   进入如下界面,maven会在后台生成web项目,这需要等待一定的时间,视网络环境而定,经验发现用较新版本的maven项目生成更快,使用IDEA集成的maven可能会等待很长一段实践。

    左边红框中展示了该项目的文件结构。可以发现,它在src/main下创建了一个recources文件夹,该文件夹一般用来存放一些资源文件,还有一个webapp文件夹,用来存放web配置文件以及jsp页面等,这已经组成了一个原始的web应用。选择右边红框的Enable-Auto-Import,可以在每次修改pom.xml后,自动的下载并导入jar包,这一点在后面详述。

注:如果这一步生成实在太慢的话,建议看一下以下两篇(感谢26楼 wintersun2 同学的提出):

文章1: http://www.cnblogs.com/beiyeren/p/4566485.html
文章2:http://blog.csdn.net/cleverlzc/article/details/50864582

四、Maven自动导入jar包

    既然我们要用SpringMVC开发,那肯定少不了SpringMVC的相关jar包。如果不使用Maven的话,那就需要去官网下载相关的jar包,然后导入到项目中。现在使用maven的话,就不需要上网找jar包了。具体容我一一道来。

    Maven所做的工作其实很简单,就是自动把你需要的jar包下载到本地,然后关联到项目中来。maven的所有jar包都是保存在几个中央仓库里面的,其中一个最常用的是Maven Repository,即,你需要什么jar包,它就会从仓库中拿给你。那么如何告诉maven需要什么jar包呢?我们看看工程目录,能找到一个pom.xml文件(这个文件在刚创建好项目时就已经展现在了大家面前),maven就是靠它来定义需求的,代码如下:

<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.gaussic</groupId><artifactId>springmvcdemo</artifactId><packaging>war</packaging><version>1.0-SNAPSHOT</version><name>springmvcdemo Maven Webapp</name><url>http://maven.apache.org</url><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dependency></dependencies><build><finalName>springmvcdemo</finalName></build>
</project>

    我们可以看到这个文件包含了我们之前定义的本项目的gropId等信息,这些信息是该项目的标识,我们不要去改动它们。重点看<dependencies>标签,翻译过来是”依赖“的意思,也就是说把对每个包的需求都称为一个依赖<depedency>,定义在<dependencies>中。在每个<depedency>中,你需要提供的是所需jar包的groupId、artifactId、version这三个必要信息。比如上面我们看到引入可一个junit包,格式如下:

<dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope>
</dependency>

    这是单元测试包,提供了三个基本信息,第4个scope对其他包来说是非必需的。所有jar包的引入都要满足这个格式。那么如何查看这些jar包的3个信息呢,可能刚接触是开发者还不是很熟悉,这个时候就需要查阅仓库了。比如我们需要引入Spring核心jar包spring-core,打开Maven Repository,搜索spring-core,进入如下界面:

    点击进入红框选中的Spring Core,如下所示,可以看到各版本的使用情况:

   选择最新版本4.2.5.RELEASE,可以看到其dependency写法如下红框所示:

   我们将其复制到pom.xml中的<dependencies>中:

    这样,Maven就会开始自动下载jar包到本地仓库,然后关联到你的项目中,下载完成后,我们展开工程目录中External Libraries:

    可以发现,虽然我们只写了一个依赖,但是它导入了两个jar包,也就是说,导入某个jar包时,与它密切相关的jar包也会同时被导入进来。

    除了spring-core,我还要spring-context,复制spring-core的<dependency>,将spring-core改为spring-context,如下:

<dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>4.2.5.RELEASE</version>
</dependency>

    下载完成后,查看External Libraries,会不会发现,瞬间导入了好多jar包(当然不是瞬间,这得看你的网速了)呢:

    这就是Maven的强大之处,如果你需要使用SpringMVC开发网站的话,只需记住几个重要的包的名字,就可以轻松将所有包导入项目中。

    长话短说,现在我们要进行SpringMVC的开发,请把你的pom.xml变成下面的样子,当然不要改你的grupId等信息(从modelVersion到url都不要动):

<properties><spring.version>4.2.6.RELEASE</spring.version><hibernate.version>5.1.0.Final</hibernate.version>
</properties>

    请在<dependencies>中加入以下依赖:

        <dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework.data</groupId><artifactId>spring-data-jpa</artifactId><version>1.10.1.RELEASE</version></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-entitymanager</artifactId><version>${hibernate.version}</version></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-c3p0</artifactId><version>${hibernate.version}</version></dependency><dependency><groupId>com.mchange</groupId><artifactId>c3p0</artifactId><version>0.9.5.2</version></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId><version>1.2</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.39</version></dependency>

将<build>改成如下形式:

    <build><finalName>springmvcdemo</finalName><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.8</source><target>1.8</target></configuration></plugin></plugins></build>

    

我们可以发现,除了导入了spring相关jar包,还有一些其他的包,这些包都是有作用的,我们后面慢慢说。如果不使用Maven请自行下载spring、hibernate、mysql、jstl等相关jar包然后导入到工程中。至此,jar包的导入就完成了,我们按 ctrl+alt+shift+s,或者File->Project Structure查看一下项目结构,看看有什么问题:

    由于之后我们要开始写代码了,先做一些配置,选择Modules,在SpringMVCDemo的src\main文件夹中新建一个文件夹,取名为java:

   选中java文件夹,点击上面的Make as:Sources,该文件夹就会变成蓝色,用以保存java代码,按OK,结束配置。

(另开一文,见使用Intellij IDEA来发SpringMVC网站(二))。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_815356.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

asp建站系统源码_自助建站怎么样?你需要注意这四个重点

随着互联网快速发展&#xff0c;网站建设受到越来越多的关注。优秀的企业网站能够为企业形象代言&#xff0c;也可以成为产品或服务宣传的重要窗口、企业收集反馈客户意见的重要渠道、搭建产品信息数据库等。常见的建站方式主要为模板建站和定制开发2种&#xff0c;模板网站主要…

千万级用户的大型网站,应如何设计其高并发架构

目录 &#xff08;1&#xff09;单块架构 &#xff08;2&#xff09;初步的高可用架构 &#xff08;3&#xff09;千万级用户量的压力预估 &#xff08;4&#xff09;服务器压力预估 &#xff08;5&#xff09;业务垂直拆分 &#xff08;6&#xff09;用分布式缓存抗下读…

修改网站首页批处理_做一个简单的企业网站需要多长时间?

做一个简单的企业网站需要多长时间&#xff1f;我想这大概是每个想要做网站的朋友除了关心网站价格之外最关心的另外一个问题了&#xff0c;今天小编就给大家介绍下网站从开始筹划到完成上线全程所需要的时间。1、域名实名认证备案和服务器虚拟机实名认证时间做网站之前首先需要…

c语言 将包含关键词的段落摘录出来_超快排:SEO优化长尾关键词并做好关键词挖掘,网站排名快速飙升!...

长尾关键词seo优化可以有效提升我们首页目标关键词的排名&#xff0c;因此长尾关键词的优化是每一个网站要去做的事情&#xff0c;长尾关键词优化的好&#xff0c;我们的网站才会有大量的流量&#xff0c;有了流量才有可能带来转化&#xff0c;单一的目标关键词带来的流量是非常…

strace java_Strace诊断CPU跑高问题(java/php网站)

早些年&#xff0c;如果你知道有个 strace 命令&#xff0c;就很牛了&#xff0c;而现在大家基本都知道 strace 了&#xff0c;如果你遇到性能问题求助别人&#xff0c;十有八九会建议你用 strace 挂上去看看&#xff0c;不过当你挂上去了&#xff0c;看着满屏翻滚的字符&#…

IIS部署ASP.NET网站后提示只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时,才能使用会话状态......

今天&#xff0c;在IIS上部署网站后&#xff0c;出现了下面错误&#xff1a; 只有在配置文件或 Page 指令中将 enableSessionState 设置为 true 时&#xff0c;才能使用会话状态。还请确保在应用程序配置的 <system.web><httpModules> 节中包括 System.Web.Session…

2009年国外100大最佳设计博客网站(转载)

近日&#xff0c;国外知名电子商务网站Invesp Consulting公布了其收录的20000多个优秀博客的最终排名。Invesp Consulting将这些博客分为文化艺术、商业、计算机互联网、历史和宗教、兴趣、生活等六大类。 下面是文化艺术分类下设计领域内的排名前100名的博客。这100个博客涵盖…

纯php网站改织梦网站数据不变,dede全站URL静态化改造[070414更正]

dede全站URL静态化改造[070414更正]更新时间&#xff1a;2007年04月17日 00:00:00 作者&#xff1a;1、将include复制到网站中的include目录。2、修改数据库将所有文档设置为“仅动态”&#xff0c;可以进入数据库管理中&#xff0c;执行下面命令&#xff1a;update dede_arc…

适合程序员学习的网站

github 这是一个全球性的面向开源社区和私有软件的托管平台&#xff0c;它提供关于程序员的综合资讯&#xff0c;软件更新资讯&#xff0c;每周软件推荐&#xff0c; 码云最新推荐&#xff0c;网页开发&#xff0c;app&#xff0c;h5营销众包。技术问答和各种各样小众领域的博客…

博览更多……微软最有价值专家(MVP)网站

Explore the many...MVP Web Sites 博览更多……微软最有价值专家&#xff08;MVP&#xff09;的网站[url]http://www.mvps.org[/url]向大家提供一个绝好的网站&#xff0c;其中按照微软产品线分类&#xff0c;汇聚了全球MVP的站点或Blog。可谓非常非常的全面&#xff0c;希望对…

ISA网站发布之二 发布虚拟主机

今天我们来用ISA发布多个虚拟的网站&#xff0c;我们在北京这台计算机上建立两个网站&#xff0c;一会我们通过ISA把它们发布出去。我们先确保这两个网站访问正常这两个网站都是守候80端口的&#xff0c;有人会问都在一个端口能正常吗?IIS实现虚拟网站可以通过IP、端口、主机头…

Java 专业人士必备的书籍和网站列表

级别&#xff1a; 初级 Roy Miller (royroywmiller.com), 创始人兼总裁, The Other Road, LLC 2007 年 1 月 15 日 对于 Java™ 语言开发人员来说&#xff0c;信息过量是一个真正的问题。每个新入行的程序员都要面临一个令人畏缩的挑战&#xff1a;要进入的行业是一个具有海量知…

【建站笔记】:在wordpress博客文章中插入代码段并高亮显示

一直以来在wordpress发布文章的时候不管代码的显示格式&#xff0c;都是按普通的文章本格式来发布的&#xff0c;但是这样很不美观而且影响阅读,最近找到了一个CodeColorer插件&#xff0c;用起来不错&#xff0c;还可以调整配色风格&#xff0c;下面简单记录一下CodeColorer的…

Ubuntu10.10下Mono2.10+Nginx+fastcgi 部署asp.net网站

上一篇(windows下nginxmonofastCGI部署asp.net网站)参考了诸多前辈终于在windows下部署成功,唯一点遗憾就是asp.net webform下面样式有点不对劲,mvc倒还可以. 本篇说说我近两天折腾Ubuntu的成果,对于一个没接触过Linux系统的人来说得从基础干起呀.下面先简单的介绍下Ubuntu系统…

网站HTTP升级HTTPS完全配置手册

2019独角兽企业重金招聘Python工程师标准>>> (转载请注明出处&#xff1a;葡萄城官网) 今天&#xff0c;所有使用Google Chrome稳定版的用户迎来了v68正式版首个版本的发布&#xff0c;详细版本号为v68.0.3440.75&#xff0c;上一个正式版v67.0.3396.99发布于6月13日…

Java 专业人士必备的书籍和网站列表

级别&#xff1a; 初级 Roy Miller (royroywmiller.com), 创始人兼总裁, The Other Road, LLC 2007 年 1 月 15 日 对于 Java™ 语言开发人员来说&#xff0c;信息过量是一个真正的问题。每个新入行的程序员都要面临一个令人畏缩的挑战&#xff1a;要进入的行业是一个具有海量…

nginx网站攻击防护

1.上上个月架构全部迁移上云以后&#xff0c;总的来说比较稳定&#xff0c;业务量也上来&#xff0c;可爱的坏人也来了&#xff0c;7X24小时不停恶意攻击我的网站&#xff0c;第一次收到报警是网站流入流量1分钟以内连续3次超过1000000bps,换算下1M/s秒,平时没那么大流量的啊&a…

AppServ+WordPress+Awstats快速建站

一家小公司刚成立&#xff0c;想自已做一个邮件系统和网站&#xff0c;我想把从购买服务器到搭建邮局系统&#xff0c;建站&#xff0c;这个过程记录下来&#xff0c;供以后参考&#xff0c;那就开始吧。 0&#xff0c;建站及搭建邮局系统前的准备 &#xff08;1&#xff09;申…

大型网站架构演变和知识体系

之前也有一些介绍大型网站架构演变的文章&#xff0c;例如LiveJournal的、ebay的&#xff0c;都是非常值得参考的&#xff0c;不过感觉他们讲的更多的是每次演变的结果&#xff0c;而没有很详细的讲为什么需要做这样的演变&#xff0c;再加上近来感觉有不少同学都很难明白为什么…

设计师必备的25套漂亮的网站 LOGO 设计模板

在网络时代&#xff0c;你可以充分使用你的才华与创造力获得成功。在网站设计中&#xff0c;有一个非常重要东西&#xff0c;那就是网站的标志&#xff08;LOGO&#xff09;&#xff0c;标志的设计必须有创意&#xff0c;您的网站访问者才会被吸引。今天这篇文章我一组令人眼花…