Idea创建一个JSP web项目

本文详细介绍了如何在IntelliJ IDEA中从零开始搭建一个SpringBoot JSP Web项目,包括创建项目、配置目录结构、设置application.properties、添加Maven依赖、编写Controller以及解决数据源配置问题。

前言

一直在使用eclipse,对idea嗤之以鼻。前些日子换成了idea以后觉得太香了,但是idea和eclipse又有很多不通的地方。比如笔者把Web项目迁移过来就折腾了好多时日,这里就写出来总结一下。Idea版本2020.13。

创建项目

首先新建项目,File->New->Project
在这里插入图片描述
选择Spring Initializr和你的JDK下一步
在这里插入图片描述

选择war包和Java版本,这里一定要选择war,不然打不出来包的。
在这里插入图片描述
接着选开发组件,我这里选择Developer Tools,Spring Web,以及SQL里面的几个常用组件。其实如果就是个测试的话Spring Web就够了,而且还可以避免一个启动时数据源的问题,但是一般做web项目,谁不用数据库呢。下一步。
在这里插入图片描述
然后直接Finish
在这里插入图片描述
初始化好了以后就是这样子。
在这里插入图片描述

构建页面目录

Idea并没有给大家创建好各种目录,所以要手动创建。要整一个webapp目录,用来放jsp文件。注意这个目录要在main目录下。
在这里插入图片描述
最终笔者建立的目录如下,pages这个二级目录可有可无,只要配置的对了名字无所谓的。比如笔者叫pages,你也可以叫做jspfolder等等,或者直接放jsp文件也可以。但是webapp这个名字要敲对了。
在这里插入图片描述
然后里面还包含一个jsp页面:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
 this is a jsp测试页面
</body>
</html>

配置application.properties

#应用名称可有可无
spring.application.name=demo

#访问端口号,默认是8080
server.port=8000

#编码格式
server.tomcat.uri-encoding=utf-8

#配置前缀,默认的位置是src/main/webapp 这里可以更换,比如/pages/ 那么目录就变成了src/main/webapp/pages
spring.mvc.view.prefix=/pages/
#后缀
spring.mvc.view.suffix=.jsp;

#项目启动名 这个配置了以后 http://127.0.0.1:8000/name/index
#如果不配置http://127.0.0.1:8000/index
#server.servlet.context-path=/name

#配置数据库信息,如果不配置会报错,一会儿报什么错误再说,就算你没有数据库直接这样写也行。
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=name
spring.datasource.password=123456
spring.datasource.url=jdbc:mysql://10.111.11.111:3306/name?&characterEncoding=utf-8&useSSL=true

配置porm文件

即便生成了Web项目,要开发jsp项目也需要额外的包,给自动生成的porm添加jsp支持包。注意:如果没有这三个包,你每次进入页面都会变成下载这个页面而不是在浏览器解析出来内容。

        <!-- 1.servlet依赖 -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <scope>provided</scope>
        </dependency>
        <!-- 2.jstl -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>jstl</artifactId>
        </dependency>
        <!-- 3.jsp支持 -->
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-jasper</artifactId>
            <scope>provided</scope>
        </dependency>

构建Controller验证

为了验证好不好用,我们构建一个DefaultController测试一下:

package com.example.demo.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("/index")
public class DefaultController {
    @RequestMapping("")
    public String index() {
        return "index";
    }
}

路径如下:
在这里插入图片描述

启动SpringBoot

既然配置都已经做好了,那就找到main方法,执行。

@SpringBootApplication
public class DemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

看到如下说明启动完成了:

2020-08-04 09:48:26.597  INFO 99196 --- [  restartedMain] o.s.b.d.a.OptionalLiveReloadServer       : LiveReload server is running on port 35729
2020-08-04 09:48:26.669  INFO 99196 --- [  restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8000 (http) with context path ''
2020-08-04 09:48:26.680  INFO 99196 --- [  restartedMain] com.example.demo.DemoApplication         : Started DemoApplication in 4.801 seconds (JVM running for 6.383)
2020-08-04 09:48:30.860  INFO 99196 --- [nio-8000-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring DispatcherServlet 'dispatcherServlet'
2020-08-04 09:48:30.861  INFO 99196 --- [nio-8000-exec-1] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
2020-08-04 09:48:30.868  INFO 99196 --- [nio-8000-exec-1] o.s.web.servlet.DispatcherServlet        : Completed initialization in 7 ms

打开浏览器输入http://localhost:8000/index这里就显示出来了。

在这里插入图片描述
到此一个Idea下的SpringBoot-JSP Web项目的Demo就搭建完了。

数据源DataSource报错

如果没有数据库配置,你就会报下面的错误。

2020-08-04 09:57:02.109 ERROR 38684 --- [  restartedMain] o.s.b.d.LoggingFailureAnalysisReporter   : 
***************************
APPLICATION FAILED TO START
***************************
Description:
Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.
Reason: Failed to determine a suitable driver class

这是因为添加了数据库组件,autoconfig启动时要自动读取数据源配置,如果项目没有配置数据源,那就读取不到,肯定会报错。如果只用Web组件,这个问题一般就不会有。
如果暂时不想添加数据源配置,可以在启动类中添加排除数据源检测的配置(exclude = {DataSourceAutoConfiguration.class})如下:再启动就没问题了。

@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}
<think>嗯,用户想知道怎么在IntelliJ IDEA创建Java Web项目。我之前看过相关的引用资料,记得有两个引用提到具体的步骤。引用[1]里说到了不使用构建工具的老项目迁移到IDEA的情况,而引用[2]则详细介绍了创建步骤,包括选择Web Application。 首先,我需要确认用户的需求是不是需要从头开始创建一个新的Java Web项目,而不是迁移旧的。根据问题描述,用户可能希望从头创建,所以应该参考引用[2]的步骤。需要检查步骤是否正确,比如是否选择正确的项目类型,配置Tomcat服务器,创建必要的目录结构比如WEB-INF和web.xml。 然后,用户可能不太清楚具体每一步怎么操作,比如如何添加框架支持,或者如何配置部署。可能需要详细说明每个步骤,确保用户不会迷路。另外,是否需要使用Maven或者Gradle?根据引用里的信息,用户提到不使用构建工具,所以应该指导手动配置。 还要注意IDEA的版本不同可能界面有差异,但步骤大体相似。需要提醒用户如果找不到某些选项,可以尝试搜索或者检查插件是否安装。比如,Web Application可能需要特定的插件支持。 最后,生成相关问题的时候,要考虑用户可能遇到的后续问题,比如配置服务器、添加依赖库、或者处理常见的错误。这样能帮助用户更全面地理解和解决问题。</think>### 如何在 IntelliJ IDEA创建 Java Web 项目 以下是使用 IntelliJ IDEA 创建 Java Web 项目的详细步骤: --- #### **步骤 1:新建项目** 1. 打开 IntelliJ IDEA,点击 **File → New → Project** 2. 选择左侧的 **Java Enterprise**(或旧版本中的 **Java** → **Web Application**) 3. 确保勾选 **Web Application** 模板,并设置项目名称与路径[^2] --- #### **步骤 2:配置项目结构** 1. 创建完成后,项目会自动生成以下目录: ``` src/ web/ ├── WEB-INF/ │ └── web.xml (自动生成) └── index.jsp ``` 2. 若需手动添加目录,右键单击 `web` 目录,选择 **New → Directory** 创建 `WEB-INF` 和 `classes` 等文件夹 --- #### **步骤 3:配置 Tomcat 服务器** 1. 点击菜单栏 **Run → Edit Configurations** 2. 点击 **+** 号,选择 **Tomcat Server → Local** 3. 在 **Deployment** 标签页中,点击 **+** 添加项目生成的 WAR 包 4. 设置访问路径(如 `/demo`) --- #### **步骤 4:编写并运行代码** 1. 在 `index.jsp` 中编写前端代码(如 HTML/JSP) 2. 在 `src` 目录下创建 Servlet 类(需继承 `HttpServlet`) 3. 点击工具栏的 **运行按钮** 启动 Tomcat,浏览器会自动打开项目页面 --- #### **关键配置说明** - **web.xml**:用于配置 Servlet 映射、过滤器等[^1] - **依赖管理**:若需添加库(如 JDBC 驱动),将 JAR 包放入 `WEB-INF/lib` 目录 - **构建输出**:确保编译输出路径指向 `WEB-INF/classes` ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值