栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringBoot入门

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringBoot入门

一、SpringBoot是什么?

        spring的出现是为了解决企业级开发应用的复杂性,spring的通过注册bean的方式来管理类,但是随着业务的增加,使用xml配置bean的方式也显得相当繁琐,所以springboot就是为了解决spring配置繁琐的问题而诞生的。

二、Maven

        我们构建一个项目需要用到很多第三方的类库,如写一个使用Spring的Web项目就需要引入大量的jar包。一个项目Jar包的数量往往非常多,并且Jar包之间的关系错综复杂,一个Jar包往往又会引用其他Jar包,缺少任何一个Jar包都会导致项目编译失败。
       开发项目时,程序员往往需要花较多的精力在引用Jar包搭建项目环境上,而这一项工作尤为艰难,少一个Jar包、多一个Jar包往往会报一些让人摸不着头脑的异常。而Maven就是一款帮助程序员构建项目的工具,我们只需要告诉Maven需要哪些Jar 包,它会帮助我们下载所有的Jar,极大提升开发效率。

三、创建第一个MyBoot项目

1.功能需求: 实现发表文章的功能
        流程:
        <1:用户在首页点击发表文章的超链接来到发表文章页面;
        <2:在页面输入文章标题和文章内容并点击发表按钮;
        <3:服务端将该文章保存后响应发表结果页面(成功或失败);

2.新建writeArticle项目
        <1 file->project->springWeb

3.在static下新建html页面
       1.1:writeArticle.html 发表文章页面,
       1.2:article_success.html 发表成功提示页面
       1.3:article_fail.html 发表失败提示页面
页面form表单action指定的值"/writeArticle"
form表单
form表单是用于将用户在页面上输入的信息提交给服务端使用的组件。
form表单中应当包含若干的输入组件.
注意:只有包含早form标签中间的输入组件中用户输入的信息才会提交给服务端!!

form上有两个重要的属性:
action:用于指定表单提交的路径,该路径需要服务端配合处理
method:表单提交的形式,有两个可选项:
GET:地址栏形式提交,表单数据会拼接到地址栏的URL中传递
POST:表单数据会被包含在请求的消息正文中被提交,当表单数据含有用户隐私信息或附件上传时应当使用POST。




    
    发表文章


  
发表文章
标题
作者




    
    错误


    
该标题已存在,请重新发表




    
    失败!


    
文章发表失败了,请重新发表




    
    成功


    
文章发表成功!

4:新建ontroller包,新建处理文章相关的业务类:ArticleController
  并定义处理发表文章的方法:writeArticle()

此处使用@controller注解

@Controller(控制器):处理与用户相关的业务操作Spring MVC框架要求,只有被注解@Controller标注的类才会被识别,且对应的方法上有@RequestMapping的注解才会处理某个来自前端页面的请求。

@RequestMapping("/writeArticle")括号中的参数值应当与特定的请求一致(比如和某页面的form表单action一致)

@Controller
public class ArticleController{
private static File articleDir;//创建静态变量articleDir
    static{
        articleDir = new File("articles");
        if(!articleDie.exist()){
        articlesDir.mkdirs();
        }    
    }
@RequestMapping(/writeArticle)
public void writeArticle(HttpServeltRequest request,HttpServeltResponse response){
    //获取键盘输入信息
    String title = request.getParameter("title");
    String author = request.getParameter("author");
    String content = request.getParameter("content");

    //判断文章标题和内容是否不为空,否则返回失败页面,重新提交
    if(title==null||content==null||title.isEmpty()||content.isEmpty){
           response.sendRedirect("/article_fail.html");//此处处理异常
        return;
        }
    File articleFile = new File(articleDir,title+".obj");
    if(articleFile.exists()){//判断重复标题
        response.sendRedirect("/have_article.html");
        return;
    }
    Article article = new Article(title,author,content);
    FileOutputStream fos = new FileOutputStream(articleFile);
    ObjectOutputStream oos = new ObjectOutputStream(fos);

    oos.writeObject(article);//对象序列化
    response.sendRedirect("/article_success.html");
    
    }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1014360.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号