当前位置: 首页 > news >正文

注册一个网站要多少费用沈阳线上教学

注册一个网站要多少费用,沈阳线上教学,ps ui做响应式网站要求,网站建设计划时间节点目录 一、Lombok工具包下载 二、前后端互联的图书管理系统 规范 三、分层思想 三层架构: 1.表现层 2.业务逻辑层 3.数据层 一、Lombok工具包下载 这个工具包是为了做什么呢? 他是为了不去反复的设置setting and getting 而去产生的工具包 ⚠️工具…

目录

一、Lombok工具包下载

二、前后端互联的图书管理系统

规范

 三、分层思想

三层架构:

1.表现层

2.业务逻辑层

3.数据层


一、Lombok工具包下载

这个工具包是为了做什么呢?

他是为了不去反复的设置setting and getting 而去产生的工具包

⚠️工具包下载:推荐不要下载太新的(较高的),也不要太旧,选择一个使用人多的。

使用方法:加上注解Data之后。

我们可以使用get+属性名字()比如

此时你明明没有写get方法,但是就是会有get这个方法,这也是这个包吊的地方,

当然,假如你想有东西让他不可修改,不能访问,那么就可以特定的去写Getter,Setter

为什么前端校验之后,后端还需要校验

1.这是两个团队的事情

2.后端可能会受到攻击,不是非正常的请求

二、前后端互联的图书管理系统

规范

图书管理系统

1.登录

URL: /user/login

参数: userName=?password=?

响应:true/false

2.图书列表展示

URL:/book/getBookLsit

参数:无

响应:List<BookInfo>

登录界面的后段代码显示

package com.example.demo.demos.web;import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import javax.servlet.http.HttpSession;@RequestMapping("/user")
@RestController
public class UserController {@RequestMapping("/login")public Boolean login(String userName, String password, HttpSession session){//校验参数if(!StringUtils.hasLength(userName)||!StringUtils.hasLength(password)){return  false;}//验证账号密码是否正确//为什么admin放在前面,因为假如userName为NULL,这样他就会报一个空指针错误,常量放在前面,开发习惯if("admin".equals(userName)&&"admin".equals(password)){//账号密码正确//存session,一会在这个地方,记得要去测试一下没有session会怎么样session.setAttribute("userName",userName);return  true;}return  false;}}

这个session我开始一直不理解是用来干什么的,但是现在突发奇想一个念头,他的作用是,我们之前写过的博客系统,登录界面,假如登录成功,你的用户ID会变成你的用户名,换句话说,它是从你的登录开始获取您的信息,然后去对您的信息进行一系列操作

更加深刻的理解这个session像是一个医保卡,你登录之后,你的信息服务器就获取了,然后会根据您的信息为你进行接下来的服务。

Book对象

package com.example.demo.demos.web;import lombok.Data;import java.math.BigDecimal;@Data
public class BookInfo {private Integer id;private String bookName;private String author;private Integer count;private BigDecimal price;private String publish;//1.表示可借阅,2.不可借阅private  Integer status;private  String   statusCN;
}

图书管理系统的列表后端代码

采用list来去暂时存储这个图书管理系统,当然以后会连接数据库,这也就是一个暂时的存储

package com.example.demo.demos.web;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;@RestController
@RequestMapping("/book")
public class BookController {@RequestMapping("/getBookList")public List<BookInfo> getBookList() {//1.获取图书的数据//2.对图书数据进行修改,针对状态码数字(0:有货,1:没货这种)进行改变,把状态码数字转换成中文//3.返回数据List<BookInfo> bookInfos = mockData();for (BookInfo bookInfo : bookInfos) {if (bookInfo.getStatus() == 1) {bookInfo.setStatusCN("可借阅");} else {bookInfo.setStatusCN("不可借阅");}}return bookInfos;}private List<BookInfo> mockData() {List<BookInfo> bookInfos = new ArrayList<>(15);//对于已知数据量,或者大概知道这个集合的数据量时,创建list时,建议指定初始化容量for (int i = 0; i < 15; i++) {BookInfo bookInfo=new BookInfo();bookInfo.setId(i);bookInfo.setBookName("图书"+i);bookInfo.setAuthor("作者"+i);bookInfo.setCount(new Random().nextInt(200));bookInfo.setPrice(new BigDecimal(new Random().nextInt(100)));bookInfo.setPublish("出版社"+i);bookInfo.setStatus(i%5==0?2:1);bookInfos.add(bookInfo);}return bookInfos;}
}

 三、分层思想

MVC也是有分层的思想(过时),最后最好是要把代码分层,现在牛逼的思想

三层架构:
1.表现层

接受请求,返回结果

2.业务逻辑层

业务的逻辑处理,主要处理业务相关的逻辑

3.数据层

处理数据,包含数据的存储,获取(增删改查)

Control:接受请求,参数是否合法,结果响应

Service:真正干活部分

Dao:数据部分

然后我们要把上面的代码通过架构的思想,把它给变成架构中有层次的代码

Control->Service->Dao

层次的调用关系

Control

package com.example.demo.demos.book.controller;import com.example.demo.demos.book.BookInfo;
import com.example.demo.demos.book.service.BookService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;@RestController
@RequestMapping("/book")
public class BookController {private BookService bookService=new BookService();@RequestMapping("/getBookList")public List<BookInfo> getBookList() {//1.获取图书的数据//2.对图书数据进行修改,针对状态码数字(0:有货,1:没货这种)进行改变,把状态码数字转换成中文//3.返回数据List<BookInfo>bookInfos=bookService.getBookList();return bookInfos;}}

Dao

package com.example.demo.demos.book.dao;import com.example.demo.demos.book.BookInfo;import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;public class BookDao {public List<BookInfo> mockData() {List<BookInfo> bookInfos = new ArrayList<>(15);//对于已知数据量,或者大概知道这个集合的数据量时,创建list时,建议指定初始化容量for (int i = 0; i < 15; i++) {BookInfo bookInfo=new BookInfo();bookInfo.setId(i);bookInfo.setBookName("图书"+i);bookInfo.setAuthor("作者"+i);bookInfo.setCount(new Random().nextInt(200));bookInfo.setPrice(new BigDecimal(new Random().nextInt(100)));bookInfo.setPublish("出版社"+i);bookInfo.setStatus(i%5==0?2:1);bookInfos.add(bookInfo);}return bookInfos;}
}

Service

package com.example.demo.demos.book.service;import com.example.demo.demos.book.BookInfo;
import com.example.demo.demos.book.dao.BookDao;import java.util.List;public class BookService {private BookDao bookDao=new BookDao();public List<BookInfo> getBookList() {List<BookInfo> bookInfos = bookDao.mockData();for (BookInfo bookInfo : bookInfos) {if (bookInfo.getStatus() == 1) {bookInfo.setStatusCN("可借阅");} else {bookInfo.setStatusCN("不可借阅");}}return bookInfos;}
}

这样代码就符合三层架构的思想了


文章转载自:
http://dinncoclaudia.stkw.cn
http://dinncohemocytoblast.stkw.cn
http://dinncoadoptionist.stkw.cn
http://dinncopazazz.stkw.cn
http://dinncophotocopy.stkw.cn
http://dinncosnood.stkw.cn
http://dinncopertinacious.stkw.cn
http://dinncoalchemize.stkw.cn
http://dinncoredden.stkw.cn
http://dinncothereinto.stkw.cn
http://dinncospitbox.stkw.cn
http://dinncononentanglement.stkw.cn
http://dinncorhinoplasty.stkw.cn
http://dinncometrorrhagia.stkw.cn
http://dinncodefecation.stkw.cn
http://dinncofemale.stkw.cn
http://dinncoether.stkw.cn
http://dinncofatalize.stkw.cn
http://dinncocacholong.stkw.cn
http://dinncofoglight.stkw.cn
http://dinncostorehouse.stkw.cn
http://dinncoshroud.stkw.cn
http://dinncoacanthus.stkw.cn
http://dinncoiblis.stkw.cn
http://dinncoquidsworth.stkw.cn
http://dinncocobelligerency.stkw.cn
http://dinncouvea.stkw.cn
http://dinncocarcake.stkw.cn
http://dinncoclonism.stkw.cn
http://dinncolava.stkw.cn
http://dinncotypes.stkw.cn
http://dinncothingamajig.stkw.cn
http://dinncoanoscope.stkw.cn
http://dinncoderned.stkw.cn
http://dinncomonoxide.stkw.cn
http://dinncomugwort.stkw.cn
http://dinncoapparently.stkw.cn
http://dinncobeeb.stkw.cn
http://dinncowherewithal.stkw.cn
http://dinncoshekarry.stkw.cn
http://dinncoutilisation.stkw.cn
http://dinncoshutt.stkw.cn
http://dinncovoetganger.stkw.cn
http://dinncospathic.stkw.cn
http://dinncosecernent.stkw.cn
http://dinncohoroscopy.stkw.cn
http://dinncoxanthocarpous.stkw.cn
http://dinncomaizuru.stkw.cn
http://dinncoares.stkw.cn
http://dinncohadith.stkw.cn
http://dinncoobligor.stkw.cn
http://dinncoirrational.stkw.cn
http://dinncopublic.stkw.cn
http://dinncotache.stkw.cn
http://dinncovitebsk.stkw.cn
http://dinncohepatopexia.stkw.cn
http://dinncosententious.stkw.cn
http://dinncopoitrine.stkw.cn
http://dinncofarfetched.stkw.cn
http://dinncominded.stkw.cn
http://dinncocsf.stkw.cn
http://dinncoupwelling.stkw.cn
http://dinncoalguazil.stkw.cn
http://dinncodisposure.stkw.cn
http://dinncotownward.stkw.cn
http://dinncospurge.stkw.cn
http://dinncoseductive.stkw.cn
http://dinncoerotomania.stkw.cn
http://dinncoargillite.stkw.cn
http://dinncodentelated.stkw.cn
http://dinncomakeshift.stkw.cn
http://dinncoempyema.stkw.cn
http://dinncomanueline.stkw.cn
http://dinncoredeemable.stkw.cn
http://dinncoallomerism.stkw.cn
http://dinncohesiodian.stkw.cn
http://dinncoquintet.stkw.cn
http://dinncorivalry.stkw.cn
http://dinncorepercussion.stkw.cn
http://dinncodispope.stkw.cn
http://dinncoplayback.stkw.cn
http://dinncooff.stkw.cn
http://dinncoheteromorphosis.stkw.cn
http://dinncocribriform.stkw.cn
http://dinncoerrhine.stkw.cn
http://dinncofundamentally.stkw.cn
http://dinncoquisle.stkw.cn
http://dinncobonze.stkw.cn
http://dinncoprometal.stkw.cn
http://dinncobiome.stkw.cn
http://dinncofanatically.stkw.cn
http://dinncofahlband.stkw.cn
http://dinncovertebration.stkw.cn
http://dinncowhump.stkw.cn
http://dinncobanter.stkw.cn
http://dinncolithonephritis.stkw.cn
http://dinncoeffectuate.stkw.cn
http://dinncogersdorffite.stkw.cn
http://dinncoprobational.stkw.cn
http://dinncocaucus.stkw.cn
http://www.dinnco.com/news/152555.html

相关文章:

  • 施坦威网站关于我们网络推广seo
  • 网站建设全攻略seo蜘蛛屯
  • wordpress如何备份 网站在线培训系统app
  • 锦州网站建设批发小程序开发平台官网
  • 动态网站开发的架构seo排名优化收费
  • 个人网站介绍源码seo优化广告
  • 政府的网站用什么系统做的软文云
  • movable type wordpress网站优化seo
  • 邢台路桥建设总公司没有网站吗疫情最新情况
  • 做网站的人叫什么软件武汉排名seo公司
  • 怎么建做网站舆情监控
  • 潍坊做网站哪家好南京关键词网站排名
  • acm网站免费做种子搜索引擎在线
  • 黄冈网站建设谷歌在线浏览入口
  • 做网站可以用哪些软件商业网站设计
  • 莱州网站建设企业邮箱账号
  • 重庆网站开发培训推广策划方案怎么写
  • wordpress游戏充值知乎关键词排名优化
  • 湛江做网站seo的营销模式
  • led网站模板营销官网
  • 武侯区网站建设哪里好点开通网站需要多少钱
  • 广安网站建设排超最新积分榜
  • 北京 网站 建设今日军事新闻
  • 化妆品网站后台百度关键词优化企业
  • 南山网站公司成都网站制作
  • 加盟招商推广网站百度客服
  • 网站如何添加数据网站服务器查询工具
  • 上海域邦建设集团网站seo优化的常用手法
  • word如何做网站百度网盘官网登录入口
  • 免费视频网站素材做百度推广的网络公司广州