目录
前言
在众多互联网产品中,随处可见Web项目的身影。Spring Boot提供了spring-boot-starter-web来为Web项目开发予以支持,为用户提供了嵌入的Tomcat及Spring MVC的依赖,使用非常方便,假定我们需要完成一个用户的登录页面,使用spring boot 来现实这个项目。
spring的缺点:
学习曲线:尽管Spring Boot简化了配置和开发过程,但仍然需要掌握Spring框架的基础知识。对于初学者来说,仍需要一定的学习曲线和理解Spring框架的概念和原则。
复杂性:尽管Spring Boot简化了很多配置,但对于复杂的应用场景,仍然需要深入了解底层的Spring框架和原理。在某些情况下,需要手动进行配置或调整。
内置容器限制:Spring Boot内嵌的Web服务器默认适合开发和测试环境使用,对于高并发或特殊需求的生产环境可能不够灵活。在这种情况下,可能需要考虑使用自定义的容器进行部署。
一、项目结构
spring boot使用的前需要添加各项依赖与数据库的导入
如添加依赖:在 Maven 项目的 pom.xml 文件中添加相应的 WebJars 依赖。例如,如果要使用 jQuery,可以添加相关依赖。
<dependency>
<groupId>org.webjars</groupId>
<artifactId>jquery</artifactId>
<version>3.6.0</version>
</dependency>
1.
静态资源是指在Web应用程序中不需要经过动态处理的文件,通常包括样式表(CSS文件)、脚本文件(JavaScript文件)、图片、字体文件、视频文件等。这些文件的内容在访问过程中保持不变,不需要根据用户请求或应用程序逻辑进行动态生成或修改。
静态资源的特点是稳定性高、内容固定、加载速度快。由于不需要经过服务器端的处理,直接从服务器获取并返回给客户端,因此对于静态资源的访问速度较快,能够提升网页加载和用户体验。
在Spring Boot中,静态资源可以通过配置指定的路径存放,并通过URL路径来访问。这样做的好处是将静态资源与应用程序进行分离,方便管理和部署。静态资源可以通过缓存机制和版本管理来优化网页的性能和更新管理。
-
classpath:/META-INF/resources/
-
classpath:/resources/
-
classpath:/static/
-
classpath:/public/
2.数据库的引入以及缓存的启动
二、使用步骤
1.引入数据库:
Nacicat连接mysql报错1251:
-
更新编码规则
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
2.重置密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
FLUSH PRIVILEGES;
2.引入redis
首先需要添加依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
添加依赖结束后我们需要在文件夹中启动redis的服务
ps:终端不能被关闭,否者会导致redis无法链接到我们的idea项目。
三、
各项依赖与数据库链接完成后需要在idea中添加各类控制项去实现页面
1.编写配置文件,设置页面数据缓存
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
spring.thymeleaf.cache=false
spring.thymeleaf.mode=HTML5
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
2.创建控制类
@Controller
public class LoginController {
@GetMapping("/toLoginPage")
public String toLoginPage(Model model){
model.addAttribute("currentYear", Calendar.getInstance().get(Calendar.YEAR));
return "login";
}
}
3.创建模板页面并引入静态资源文件
<!doctype html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>用户登录界面</title>
<link th:href="@{/css/bootstrap.min.css}" rel="stylesheet">
<link th:href="@{/css/signin.css}" rel="stylesheet">
</head>
<body class="text-center">
<!--用户登录form表单-->
<from class="form-signin">
<img class="mb-4" th:src="@{/img/login.jpg}" alt="孙悟空" width="72" height="72">
<h1 class="h3 mb-3 font-weight-normal" th:text="#{login.tip}">请登录</h1>
<input type="text" class="form-control" th:placeholder="#{login.username}" required="" autofocus="">
<input type="password" class="form-control" th:placeholder="#{login.password}" required="">
<div class="checkbox mb-3">
<label>
<input type="checkbox" value="remember-me">[[#{login.rememberme}]]
</label>
</div>
<button class="btn btn-lg btn-primary btn-block" type="submit">登录</button>
<p class="mt-5 mb-3 text-muted">©<span th:text="${currentYear}">2018</span>
-<span th:text="${currentYear}+1">2019</span></p>
</from>
</body>
</html>
启动项目进行效果测试,在浏览器上访问http://localhost:8080/toLoginPage
方便后期的更新和维护
四、spring的mvn特点
Spring的Maven仓库具有多种类型、灵活的配置方式、高效的索引机制以及私服的支持等特点,这些特点共同为Spring项目的开发和管理提供了便利和高效
但在实际项目中容易有着粗心导致的错误
如:代码文件名无意义,文件不进行分类,错误的代码格式等问题会降低我们的效率
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍完整的项目开发流程了,Spring框架通过提供强大而灵活的特性,帮助开发者构建高效、可扩展且易于维护的Java应用程序。它在Java开发社区中具有广泛的影响力,并被许多企业和开发团队广泛采用。在项目的实际编写过程我们还是需要格外注意项目的结构是否合理,从而提高我们的效率。