springboot初涉

idea创建项目

菜单 -> New -> Project -> Spring Initializr

项目参数 group artifact com.xx.xxx

选择web>springweb

建好的项目自带一个SpringbootApplication, 其被@SpringBootApplication 所标记,表示这个是一个Springboot 应用

 

建包 类

 

@RestController 是spring4里的新注解,是@ResponseBody和@Controller的缩写。  映射@RequestMapping("/xxx")

导入

idea导入项目时选中 pom.xml

 

部署

jar方式

打包jar

cd E:\xxx\springboot
mvn install

运行jar

java -jar target/springboot-0.0.1-SNAPSHOT.jar

就启动这个jar了通过这种方式,把此jar上传到服务器并运行,就可达到部署的效果了

-----

war方式

Application 新加@ServletComponentScan注解,并且继承SpringBootServletInitializer 。

pom.xml 修改为如下代码,主要两个改动新加打包成war的声明:

<packaging>war</packaging>

 <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
	    	<scope>provided</scope>            
 </dependency>

spring-boot-starter-tomcat 修改为 provided方式,以避免和独立 tomcat 容器的冲突. 表示provided 只在编译和测试的时候使用,打包的时候就没它了。

cd C:\Users\X7TI\Downloads\springboot

mvn clean package

这样就在 target 目录下 生成了一个 springboot-0.0.1-SNAPSHOT.war 文件 重命名为 ROOT.war然后把它放进tomcat 的webapps目录下。

注意重命名时必须是ROOT.war,如果是小写root.war,那么访问路径加 /root


 

页面

Springboot的默认视图支持是Thymeleaf

jsp方式

增加对jsp支持

<!-- servlet依赖. -->
        <dependency>
              <groupId>javax.servlet</groupId>
              <artifactId>javax.servlet-api</artifactId>
              
        </dependency>
              <dependency>
                     <groupId>javax.servlet</groupId>
                     <artifactId>jstl</artifactId>
              </dependency>
        <!-- tomcat的支持.-->
        <dependency>
               <groupId>org.apache.tomcat.embed</groupId>
               <artifactId>tomcat-embed-jasper</artifactId>
               
        </dependency>	    

在src/main/resources 目录下增加 application.properties文件,用于视图重定向jsp文件的位置

修改application.properties,可修改访问的端口号上下文路径

spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp
server.port=8888 
server.servlet.context-path=/test
#spring.mvc.servlet.path = /test
# 使用spring.mvc.servlet.path也可以

路径问题

server.servlet.context-path 和 spring.mvc.servlet.path

The main difference is that setting the dispatcher servlet path allows you to register additional servlets on other paths while with context path set, spring boot's tomcat can only serve content below that context path.

设置dispatcher servle path允许您在其他路径上注册额外的servlet,当使用上下文路径context path,spring boot的tomcat只能提供上下文路径下面的内容。

如果是springboot2.0以下,用配置​server.context-path=/demo
如果是springboot2.0以上,用配置​server.servlet.context-path=/demo

本来的@RestController 改为@Controller。这时返回"hello"就不再是字符串,而是根据application.properties 中的视图重定向,到/WEB-INF/jsp目录下去寻找hello.jsp文件


热部署

在pom.xml中新增加一个依赖和一个插件就行了。

依赖:

 <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <optional>true</optional> <!-- 这个需要为 true 热部署才有效 -->
</dependency>

插件:

<plugin>
    <groupId>org.springframework.boot</groupId>
 	<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>

idea配置好后热部署需要"Build **"或者"Rebuild"

解决方法:

idea热部署无效 spring-boot-devtools

多配置 部署

3个配置文件:核心配置文件:application.properties开发环境用的配置文件:application-dev.properties生产环境用的配置文件:application-pro.properties这样就可以通过application.properties里的 spring.profiles.active 灵活地来切换使用哪个环境

spring.profiles.active=pro

部署

java -jar target/springboot-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev

在springboot里配置文件。 除了使用.properties外,springboot还支持 yml格式。YAML是一种层级格式,更易读

spring:
    mvc:
        view:
            prefix: /WEB-INF/jsp/
            suffix: .jsp
server:
    port: 8888
    context-path: /test

----------------

异常处理

新增加一个类GlobalExceptionHandler,用于捕捉Exception异常以及其子类。捕捉到之后,把异常信息,发出异常的地址放进ModelAndView里,然后跳转到 errorPage.jsp

----------------

javabean POJO、PO、DTO、VO、BO

  • DO(Data Object):与数据库表结构一一对应,通过 DAO 层向上传输数据源对象
  • DTO(Data Transfer Object):数据传输对象,Service 和 Manager 向外传输的对象
  • BO(Business Object):业务对象,可以由 Service 层输出的封装业务逻辑的对象
  • VO(View Object):显示层对象,通常是 Web 向模板渲染引擎层传输的对象
  • PO :persistent object持久对象。

如有错误,恳请指出。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SpringBoot是一个用于简化Spring应用程序开发的框架。它通过提供默认的配置和实现,使得开发人员可以更加专注于业务逻辑的实现,而不需要手动配置和编写大量的样板代码。 在次体验SpringBoot时,首先需要修改启动类,让它继承SpringBootServletInitializer,并添加@SpringBootApplication和@EnableScheduling注解。然后,执行clean和package命令,将应用打包并启动Tomcat。最后,访问相应的请求路径,就可以看到期望的页面了。 以下是一个示例的启动类: ``` @SpringBootApplication @EnableScheduling public class App { public static void main(String[] args) { System.out.println("Hello World!"); SpringApplication.run(App.class, args); } } ``` 这个启动类中,我们使用了@SpringBootApplication注解来标识这是一个SpringBoot应用程序,并使用@EnableScheduling注解来启用定时任务的支持。然后,在main方法中,我们通过调用SpringApplication的run方法来启动应用程序。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [SpringBoot体验(完整版)](https://blog.csdn.net/yuxiao97/article/details/78759473)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [SpringBoot体验](https://blog.csdn.net/s13554341560b/article/details/78126194)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值