一步一步实现web程序信息管理系统之二----后台框架实现跳转登陆页面

SpringBoot

springboot的目的是为了简化spring应用的开发搭建以及开发过程。内部使用了特殊的处理,使得开发人员不需要进行额外繁锁的xml文件配置的编写,其内部包含很多模块的配置只需要添加maven依赖即可使用,这项功能可谓对开发人员提供了大大的好处。使用springboot只需要简单配置一下就可以完成之前复杂的配置过程。可以到https://start.spring.io/此网站上,下载一个最简单的springboot应用,然后一步一步实现自已的应用。

可以看出当前的稳定版本为2.1.0,点击Generate Project 按钮,即可下载一个可用的springboot应用。

这个是我下载下来后,双击后出来的。可以看出以工程是一个基于maven的项目。你可以将其解压到任何一个目录下,通过eclipse或其他IDE进行导入后运行,eclipse导入流程为File->import->maven->existing maven projects,查找到自己的项目目录。也可以基于此工程来建立自已的maven项目。

下面以建立自己的maven项目

建立自己的springboot项目

  • 创建工程

在建立项目时,可以创建一个多模块聚合项目,即在创建项目时选中选择为pom。

创建后的工程结构为

  • jar包依赖

    打开从springboot官网中下载下来的工程目录,打开pom.xml文件

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.0.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

将此段代码复制到 spring-boot-study工程中的pom文件中

将下面的依赖复制到spring-boot-web工程中的pom文件中

<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

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

eclipse自动完成项目工程的配置。完成后项目中所有需要依赖的jar包自动配置完成。

  • 代码编写

    将application.properties文件拷贝到spring-boot-study项目的resources目录下。文件中的内容暂时先不要管,编写以下代码

@SpringBootApplication
@RestController
public class WebApplication {

    @RequestMapping("/hello")
    public String helloWorld() {
        return "Hello World";
    }

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

}

HelloWold就已经完成后。可以在浏览器中输入localhost:8080/hello即可看到效果

springboot默认启动后的端口为8080,但可以在application.properties文件中进行修改。

server.port=9001

将端口修改为9001,重新启动项目后,在浏览器中输入入localhost:9001/hello同样可以看到相同的结果。

  • 整合login界面

    现在后台已经有转发功能,具备web浏览功能。但我们需要访问URL为“/”时跳转到登陆界面,即创建好的登陆界面。本人也是在学习过程中,在网上学习好久才发现使用html的话就使用thymeleaf模板就好了。下面就详细来说说如何使用thymeleaf开发html。

    在spring-boot-web项目中的pom文件中加上thymeleaf的依赖。

    <!-- 加入thymeleaf的支持 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>

但在Spring Boot项目中,一般src/main/resources/static目录用于存放各类静态资源文件,例如css、js和image等。src/main/resources/templates用于存放页面文件,例如html,jsp等。所以在spring-boot-web中的resources目录下创建static目录与templates目录,并将相应的资源文件放置在各自的目录下。

配置thymeleaf

#thymeleaf
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
spring.thymeleaf.mode=HTML
spring.thymeleaf.encoding=UTF-8
spring.thymeleaf.servlet.content-type=text/html
spring.thymeleaf.cache=false

html文件修改,增加xmlns:th="http://www.thymeleaf.org" 属性,资源文件的引入要修改。

<link href="../static/css/style.css" th:href="@{/css/style.css}" rel="stylesheet" />
<link href="../static/css/login.css" th:href="@{/css/login.css}" rel="stylesheet" />

然后编写 java代码

@Controller
public class IndexController {

    @RequestMapping("/")
    public String index() {
        return "login";
    }

}

重新启动程序,访问localhost:9001/就可成功跳转至login.html登陆界面上。

注:thymeleaf对html标签要求很严格,每一个标签都需要成对出现。

调试过程中遇到下面异常信息

org.thymeleaf.exceptions.TemplateInputException: Error resolving template [login], template might not exist or might not be accessible by any of the configured Template Resolvers
    at org.thymeleaf.engine.TemplateManager.resolveTemplate(TemplateManager.java:869) ~[thymeleaf-3.0.11.RELEASE.jar:3.0.11.RELEASE]
    at org.thymeleaf.engine.TemplateManager.parseAndProcess(TemplateManager.java:607) ~[thymeleaf-3.0.11.RELEASE.jar:3.0.11.RELEASE]
    at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1098) [thymeleaf-3.0.11.RELEASE.jar:3.0.11.RELEASE]
    at org.thymeleaf.TemplateEngine.process(TemplateEngine.java:1072) [thymeleaf-3.0.11.RELEASE.jar:3.0.11.RELEASE]
    at org.thymeleaf.spring5.view.ThymeleafView.renderFragment(ThymeleafView.java:362) [thymeleaf-spring5-。。。。。。。。。。。

因为错将templates写成templatse导致。

至此实现从后端服务访问到登陆界面的搭建,还没有具体登陆逻辑实现。

下一篇实现登陆业务逻辑。

附上 本篇文章源代码

一步一步实现web程序信息管理系统之二----后台框架实现跳转登陆页面

原文地址:https://www.cnblogs.com/oops-374565452/p/9928619.html

时间: 2025-01-07 15:20:59

一步一步实现web程序信息管理系统之二----后台框架实现跳转登陆页面的相关文章

web书籍信息管理系统

每天记录学习,每天会有好心情.*^_^* 今天将为大家分析一个基于web的书籍信息管理系统,所以,网上书店系统正慢慢成为世界各国发展电子商务的热门.采用当前非常流行的B/S体系结构,以JAVA作为开发技术,主要依赖SSM技术框架,mysql数据库建立本系统.对整个网上系统的架构和特点加以分析和研究,还详细的分析了基于UML的网上购书电子商务系统建模的一些重要的关键技术,提出了基于UML的网上书店系统的建模过程.基于web的书籍信息管理系统项目使用框架为SSM(MYECLIPSE),选用开发工具为

CMDB硬件信息管理系统开发(二)

完成任务: 1.网卡.内存资产变更数据及日志记录: 2.get请求获取今日未采集主机列表: 1 # -*- coding: utf-8 -*- 2 # __author__ = "maple" 3 from repository import models 4 5 6 class Nic: 7 def __init__(self, server_obj, info): 8 self.server_obj = server_obj 9 self.nic_dict = info 10 se

JavaWeb-06(Dom4j技术及Schema 约束、Tomcat与Web程序结构)

JavaWeb-06 JavaWeb-Dom4j技术及Schema 约束.Tomcat与Web程序结构 DOM4J及Schema 一.Dom4j解析(掌握) DOM4J解析XML文档 a. Dom4j是一个简单.灵活的开放源代码的库.Dom4j是由早期开发JDOM的人分离出来而后独立开发的.与JDOM不同的是,dom4j使用接口和抽象基类,虽然Dom4j的API相对要复杂一些,但它提供了比JDOM更好的灵活性. b. Dom4j是一个非常优秀的Java XML API,具有性能优异.功能强大和极

JAVA基于web的师资管理系统,源码下载

大家好,我是全微毕设团队的创始人,本团队擅长JAVA(SSM,SSH,SPRINGBOOT).PYTHON.PHP.C#.安卓等多项技术.今天将为大家分析一个基于web的师资管理系统(当今世界是一个信息高度发展的世界,计算机技术的高度发展,并且广泛的运用到生活中的各个领域,给人类带来了快的进步的同时也带来了进一步的革新.特别是,近年来,高校的办学规模.教师队伍在不断扩大增加,这些因素导致我们传统的教学管理模式已不适用于高速发展的信息时代模式,高校教师的各方面素质也在不断提高,高校的管理方式也相应

SSM公文信息管理系统

每天记录学习,每天会有好心情.*^_^* 今天和一个朋友共同完成了一个基于SSM框架下的公文信息管理系统项目,我们在开发时选用的框架是SSM(MYECLIPSE)框架.我这个朋友知识有限,只会这个框架,哈哈,都是为了方便他.和往常一样选用简单又便捷的MYECLIPSE作为开发工具,基于SSM框架下的公文信息管理系统是一个 后台项目.基于SSM框架下的公文信息管理系统的介绍是这样的:公文,全称公务文书,是法定机关或其他社会组织在公务活动中,具有法律效力和规范的文体.采用当前非常流行的B/S体系结构

ssm教师信息管理系统

每天记录学习,每天会有好心情.*^_^* 今天将为大家分析一个基于ssm的教师信息管理系统,在这样的需求下,完善.成熟的师资管理系统应运而生,根据自身特点建立师资管理系统,也就成了每个高校所必备的了,从而更好的提高办学效率.采用当前非常流行的B/S体系结构,以JSP作为开发技术,主要依赖SSM技术框架,mysql数据库建立本系统.基于ssm的教师信息管理系统项目使用框架为SSM(MYECLIPSE),选用开发工具为MYECLIPSE.基于ssm的教师信息管理系统为一个 后台项目.为了完成基于ss

.NET跨平台:在Mac上跟着错误信息一步一步手写ASP.NET 5程序

今天坐高铁时尝试了一种学习ASP.NET 5的笨方法,从空文件夹开始,根据运行dnx . kestrel命令的错误信息,一步一步写代码,直至将一个最简单的ASP.NET程序运行起来. 尝试的具体步骤如下. 新建一个空文件夹HelloCnblogs: mkdir HelloCnblogs && cd $_ 在这个空HelloCnblogs文件夹中运行 dnx . kestrel 命令(基于CoreCLR的dnx),运行结果是如下的出错信息: System.InvalidOperationEx

【新手出发】从搭虚拟机开始,一步一步在CentOS上跑起来.Net Core程序

文章背景 微软6月26号发布core 1.0版本后,园子里关于这方面的文章就更加火爆了,不管是从文章数量还是大家互动的热情来看,绝对是最热门的技术NO.1.我从去年底开始接触.net core到现在也大半年了,一直停留在浏览各种帖子上,偶尔新建个项目敲几行代码练习一下.可是对于core最大的卖点——跨平台,一直没法实际体验一回,因为压根没接触过Linux,完全不会那些命令,甚至虚拟机都没玩过?,想在Linux上实战操作一下可想有多困难.虽然园子里很多文章都有教程,但大神们一开始直接就上各种命令代

一步一步创建ASP.NET MVC5程序[Repository+Autofac+Automapper+SqlSugar](十一)

前言 小伙伴们,大家好,我是Rector.最近Rector忙于换工作,没有太多时间来更新我们的ASP.NET MVC 5系列文章 [一步一步创建ASP.NET MVC5程序Repository+Autofac+Automapper+SqlSugar],直到现在才挤些时间赶紧更新一篇,小伙伴们等得太久了. 写系列文章是一件并不容易的事情,相信有过写系列文章经验朋友也应该有所体会. 本文知识要点 本期是该系列的第十一篇,上一篇<一步一步创建ASP.NET MVC5程序[Repository+Auto