所谓ddl是第一生产力,在仅剩的五天时间里,我打算记录一下每日所学和所实现的内容。最终的目标是搭建一个自己的网站。提前祝自己成功!
选择开发平台是EclipseEE。
选择使用springboot框架,springboot中文开发文档 。
目录
配置环境
- gradle与maven只用下载一个使用即可,我选择了maven(因为老师上课也是用的这个,虽然一点没学懂)
- 下载apache-maven,配置环境变量,Tomcat与Maven环境搭建 - 有一个大佬梦 - 博客园 (cnblogs.com)
- 在eclipse中安装springboot插件,《Eclipse搭建Springboot开发环境及创建Springboot项目》_eclipse springboot-CSDN博客
- 保护眼睛更改字体大小,Eclipse更改字体大小设置_eclipse字体大小-CSDN博客
开始学习
运行springboot
eclipse启动一个Springboot项目_eclipse启动springboot项目-CSDN博客
切记不是run as server,我之前配置了tomcat,这样子还会运行在tomcat上。
实际上springboot内集成了tomcat,直接运行springboot就可以了。
用springboot打开html
- 配置pom
- 配置application.properties
- 写html文件(路径:当前根路径下templates)
- 写controller
- 浏览器访问http://localhost:8080/
将css引入
先复习一下css的知识:参考CSS的四种基本选择器和四种高级选择器-CSDN博客 , CSS——常用属性_css的常用属性-CSDN博客
- 一般习惯将css样式表写在单独的css的文件当中,当然这也是方便维护代码。
- 基础选择器: 类上样式,id上行为。(class属性交给css使用,id属性交给js使用)
- 标签选择器 - 直接定义html已有的标签,使用的时候会重新定义这个标签样式
- 类选择器 - 自定义名称,用.开头,使用的时候需要在标签里写class = (这时候不用写点符号),可以使用多次,一个标签可以用多个类选择器(用空格分开)
- id选择器 - 自定义名称,用#开头,使用的时候需要在标签里写id = (不用写井号),而且只能使用一次
- 高级选择器
- 后代选择器
- 格式:E F,表示所有属于E元素的后代的F元素有这个样式,可以有多个后代:E F G ->E的后代F的后代G都满足这个样式,我理解是可以从后往前看,如果G前面有F有E,那么这个G就使用这个样式。
- 不仅可以使用标签名称,还可以使用类名、id名称。(我感觉用标签明显更方便。)
- 交集选择器
- 格式:E.F,选择的元素必须捅死满足两个条件既有E又有F
- 注意:一般都是以标签名开头(E是标签,F可以随意)
- 并集选择器
- 格式:E,F,G,H,只要有E或F或G或H就可以使用当前样式
- 三种基础选择器都可以同时使用,我理解并集选择器可以减少代码量,同样的样式有不一样的选择器
- 伪类选择器
- 对于<a>标签,对应几种不用的状态:注意顺序
- link:点击超链接之前
- visited:点击超链接之后
- focus:某个标签获得焦点(输入框获得焦点,就是那个闪来闪去的竖线)
- hover:游标在某个标签之上时
- active:游标点击某个标签的瞬间(或持续的时间)
- 动态伪类可以用于所有标签,可用状态有focus,hover,active
- 对于<a>标签,对应几种不用的状态:注意顺序
- 子代选择器
- 格式:E>F,F必须紧邻E才可以使用这个样式
- 序选择器 + 兄弟选择器 (感觉用不到所以就不写了)
- 后代选择器
- 常用的CSS属性
- 文字属性font
- font-style:字体风格,取值:normal, italic斜体
- font-weight:字体粗细,取值:bold,lighter,etc.
- font-size:字体大小,px
- font-family:文字字体,电脑已经安装的字体,需要用引号括起来
- 连写:font: style weight size family
- 文体属性text
- text-decoration:装饰,underline下划线,line-through删除线,overline上划线,none无
- text-align:水平对齐的方式,left, right, center
- text-indent: 缩进, em
- 颜色属性color(一般是对文字使用,不用加font)
- 背景属性background
- background-color:颜色
- background-image: url()
- background-repeat:背景图片平铺,repeat水平垂直都平铺,no-repeat都不平铺,repeat-x只在水平方向平铺,repeat-y只在垂直方向平铺
- background-position:可控制背景图片位置
- 边框属性border
- border-width: 边框宽度,px
- border-style:样式, solid实线,double双实现,dashed虚线,dotted圆点
- border-color:颜色
- 顺序:4个-上右下左,3个上(左右)下,2个-(上下)(左右),1个-(上下左右)top right bottom left
- 连写:border: width style color
- 内边距padding
- 定义的是距离,所以参数只有距离,单位px
- 顺序同border
- 有背景颜色
- 本质控制parent-children关系之间的间隙
- 外边距margin
- 参数只有距离
- 顺序同border
- 无背景颜色
- 水平方向,margin叠加;垂直方向,margin合并(谁大听谁的)
- 本质控制cousin关系之间的间隙
- 开发中,如果需要控制嵌套关系盒子直接的距离,首先考虑使用padding
- 文字属性font
实际操作,springboot的使用html页面及css、js路径的配置_springboot配置html路径-CSDN博客
- 文件结构
- 配置Application
- 写css文件
- 在html文件中引用css文件,注意写法
- 浏览器访问http://localhost:8080/
问题记录
什么是Controller?
A:Controller是实现客户端请求这一类功能的统称。应该被叫做Controller层,与此同时还有Service层和DAO层。之间的逻辑关系是数据库->DAO->Service->Controller。【Java知识点记录】DAO层、Service层和Controller层的区别_controller层,service层,dao层-CSDN博客
Controller层的注解有
- @RestController
- = @Controller + @ResponseBody(源码当中就是这样写的)
- 可以直接返回Json格式数据(主要得益于ResponseBody)
- @ResponseBody
- 将返回的数据结构转换为Json格式
- Json格式是什么?-
我觉得可以理解为一种js定义好的结构体(struct)json的几种标准格式_json格式-CSDN博客 其中解释json格式只是一种标准,- 格式:{ “key” : value}(感觉有点儿像hashtable)
- @RequestMapping
- @Controller
什么是jar?
A:可执行的jar文件是包含编译类以及代码运行所需的所有jar依赖项的压缩包,我个人理解和cpp当中的类很像,可以通过include来导入使用。使得代码整体更加灵活简洁,维护性也更强。
springboot中注解的作用?
A:注解主要是给程序看的。告诉程序当前这个类完成什么样的工作.java注解-最通俗易懂的讲解 - 知乎 (zhihu.com)原来注解就是java里面的内容!上学期java老师根本没讲这个,让我很摸不着头脑。
常用的注解:@Controller,@Service,@RequestMapping
什么是JSP?
A:什么是jsp?-CSDN博客 其中讲到jsp就是一种servlet,因此不得不提出来另一个问题:什么是servlet?Servlet是什么_svjxlor-CSDN博客 综合来讲,servlet是一个规则(我理解接口就是规则),在servlet里必须实现的三个部分(init,service,destroy),servlet的功能是实现业务。一般来说一个操作的实现需要三个步骤:接收请求、处理请求、响应请求,servlet主要负责的是处理相应,而接收与回复全部交给tomcat实现。tomcat不仅仅是服务器,也是一个servlet容器,因此在接收到客户端请求的时候可以判断用到哪个servlet。这样看来,servlet其实也可以看作是函数?不过是写在文件里的?
顺便写下JSP相关内容:
九大内置对象
- request:请求对象
- response:响应对象
- pageContext:JSP上下文对象
- session:会话对象
- application:ServletContext对象
- config:ServletConfig对象
- out:JSP输出流对象
- page:指向当前JSP的对象
- exception:异常对象
四大域对象:
- pageContext: PageContext类,作用范围-当前JSP页面(请求jsp到结束jsp)
- request:HttpServletRequest类,作用范围-一次请求内(一次刷新之内)
- session:HttpSession类,作用范围-一次会话内(打开到关闭浏览器)
- application:ServletContext类,作用范围-服务器运行当中(打开到关闭服务器)
jsp和html的区别?
A:虽然网上都在说不是一个概念!(jsp是一个服务端的概念,输出到客户端是html。)所以我感觉在开发过程中用jsp文件就可以了,毕竟在jsp里面也会用到html。因为要写的是动态网页,所以静态的html似乎没有什么作用了,除了前后端分离。查了一下html也可以用来设计动态网页。那么就是是否涉及服务器的区别了。简而言之,jsp可以在html文件中插入java代码,html不可以。