自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

来自50年后的地球????博客

java程序设计,MySQL,SSM,SSH,web前端

  • 博客(55)
  • 收藏
  • 关注

原创 day01 数据结构-01

day01 数据结构-011.什么是数据结构?​ 计算机组织与存储数据的一种逻辑结构。常见的有数组、链表、队列、栈、散列表和二叉树等等。2.双向循环链表​ ​

2020-08-03 22:35:58 120 1

原创 day02 数据结构-02

day02 数据结构-021.链表和数组的区别:数组:​ 利用索引(下标)随机访问。​ 数组要求分配一块连续的地址空间,每一个元素是顺序相临的。​ 插入与删除需要对整个数组进行调整(也就是说,需要移动各个元素)。​ 链表:​ 只能够顺序查找。  ​ 链表不要求一块连续的地址空间,也就是说,元素是分开存放的。​ 链表的插入与删除效率非常高(只需要改变指针的指向)。2.排序二叉树(查找二叉树)​ (1)树(了解)​ ​ (2)什么是排序二叉树?​ (3)二

2020-08-03 22:35:22 117

原创 11_PROJECT_DAY14_1750

78. 删除评论-持久层(a)规划需要执行的SQL语句需要执行的SQL语句大致是:delete from comment where id=?通常,在处理增、删、改之前,还存在相关的检查,特别是删、改的操作之前,都应该检查被操作的数据是否存在、是否具有权限对该数据进行操作,及可能存在的其它业务规则。关于数据是否存在,可以通过查询来得到答案:select * from comment where id=?关于操作数据的权限,可以暂将业务规则设计为“评论的发表者,或任何老师,都可以删除评论”。

2020-08-03 22:33:34 160

原创 11_PROJECT_DAY13_1752

67. 显示回答列表-持久层(a) 规划SQL语句显示某问题的回答列表,需要执行的SQL语句大致是:select * from answer where question_id=16 order by status_of_accept desc, created_time desc以上查询只是针对一张表,并且是查询所有字段,则使用实体类就可以封装以上查询到的数据!但是,本次查询应该另创建VO类用于封装查询结果,因为后续显示回答时,每个“回答”还可以存在若干个“评论”,则在“回答”的数据中,应该存在

2020-08-03 22:32:35 124

原创 11_PROJECT_DAY12_1750

56. 老师主页显示问题列表-持久层(a) 规划需要执行的SQL语句老师主页显示的问题列表应该显示出老师自己发表的问题,和学生指定该老师回答的问题。这样的列表数据可以使用此前的QuestionVO来表示每一个问题的数据,列表则使用List<QuestionVO>来表示。需要执行的SQL语句大致是:select question.*from questionleft join user_questionon question.id=user_question.question_id

2020-08-03 22:31:58 89

原创 11_PROJECT_DAY11_FILEUPLOAD

基于SpringMVC的文件上传在SpringBoot项目中,上传的文件默认不允许超过1M(也可能是其它值,根据SpringBoot的版本不同可能有差异),如果超出,将导致FileSizeLimitExceededException!如果需要自定义该限制值,需要在配置类中添加:@Beanpublic MultipartConfigElement multipartConfigElement() { MultipartConfigFactory factory = new MultipartCo

2020-07-27 22:19:26 62

原创 11_PROJECT_DAY11

48. 在父项目中管理子模块项目使用的依赖在一个项目中,如果某些依赖只是部分子模块项目需要使用的,应该将这些依赖配置在<dependencyManagement>节点中,凡配置在这个节点中的依赖,任何子模块项目中都不会直接拥有,如果某个子模块项目需要使用这些依赖,依然需要使用<dependency>节点来添加!与在子模块项目中直接添加<denpendency>(父级的<dependencyManagement>没有配置某个依赖而子模块项目中直接添加)的区别在

2020-07-27 22:18:38 83

原创 11_PROJECT_DAY10

45. 我的问答列表-前端页面在index.html页面,先找到整个列表区域的父级,为其添加id,以便于创建Vue对象:<!-- 约第185行 --><div class="container-fluid" id="questionsApp">找到每个问题的显示区域,为这个区域的根级添加v-for以循环显示:<!-- 约第193行 --><div v-for="question in questions" class="media bg-white m

2020-07-27 22:17:54 223

原创 11_PROJECT_DAY09

36. 热点问题-持久层先创建封装数据的VO类:@Datapublic class QuestionListItemVO { private Integer id; private String title; private Integer status; private Integer hits;}在持久层接口QuestionMapper中添加抽象方法:@Repositorypublic interface QuestionMapper extends

2020-07-27 22:16:15 82

原创 11_PROJECT_DAY08_1745

30. 提问页面-显示问题标签的下拉列表关于js代码:Vue.component('v-select', VueSelect.VueSelect);let createQuestionApp = new Vue({ el: '#createQuestionApp', data: { tags: [ {label: 'MyBatis Plus', value: 1}, {label: 'Spring Security', v

2020-07-27 22:15:38 69

原创 11_PROJECT_DAY07

24. 前后端分离前端:客户端,例如网页及相关组件都是属于前端开发领域;后端:服务器端;在传统的开发模式下,当服务器端处理了某种请求后,就会执行转发或重定向操作,使得客户端的浏览器访问另一个页面,整个开发过程,或需要开发的组件都是由服务器端开发人员完成的(即使使用到了前端的网页技术,甚至有专门的人员开发网页,最终也需要整合到服务器端的项目中,从项目的角度来看,并没有分离)。如需希望实现前后端分离,首先,就要使得服务器端不会过度甚至根本就不依赖网页,当处理了客户端的请求后,直接将相关数据响应到客户端去

2020-07-21 13:16:17 50

原创 11_PROJECT_DAY06_

20. 使用控制器转发注册页面将用户注册的register.html文件移动到templates文件夹下。在SystemController中添加:@GetMapping("/register.html")public String register() { return "register";}在SecurityConfig中,将注册相关的"/register.html"和"/portal/user/student/register"这2个URL添加到白名单中。21. 处理用户的权

2020-07-21 13:11:55 72

原创 11_PROJECT_DAY05_1740

13. 用户登录-准备工作在开发注册功能时,在SecurityConfig类中配置以如下代码:@Overrideprotected void configure(HttpSecurity http) throws Exception { http.csrf().disable();}以上代码的作用是关闭跨域攻击,如果没有以上代码,则执行异步请求时就会出错!一旦添加了以上代码,却没有添加更多详细配置之前,Spring Security的登录拦截将不生效!为了便于开发登录功能,先暂时将以上

2020-07-18 19:33:11 69

原创 11_PROJECT_DAY04

8. 在SpringMVC框架中统一处理异常在SpringMVC框架中提供了统一处理异常的机制(当然,在SpringBoot框架中也可以直接使用),使得每种异常只需要被处理1次即可,即使某种异常在多种请求中都会出现,也不需要反复处理!其核心是开发人员调用了可能抛出异常的方法时,在控制器中,直接将异常再次抛出,则SpringMVC在调用控制器的方法时,就会捕获到对应的异常对象,并且,如果开发人员定义了统一处理异常的方法,则SpringMVC框架就会自动调用该方法来处理异常!关于统一处理异常的方法:默

2020-07-18 00:38:16 129

原创 11_PROJECT_DAY03

4. 项目前期准备–了解项目的数据处理流程在项目中,每次处理用户提交的请求时,用户的请求数据的走向应该是:用户界面 --> 控制器层 --> 业务层 --> 持久层,以上各层的分工如下:用户界面:负责显示数据、提供用户操作入口,并提交请求,获取服务器响应的结果;控制器层:负责接收请求,并发出响应结果;业务层:负责业务流程和业务逻辑,以保障数据的安全性(数据必须按照业务所设定的规则而产生或发生变化)和完整性;持久层:负责数据访问,即增删改查。在开发项目时,开发顺序应该是:持久

2020-07-15 22:33:30 67

原创 11_PROJECT_DAY02

1. 项目前期准备–MyBaitsPlusMyBatisPlus是基于MyBatis的基础之上的,它可以自动生成常规的数据访问,使得开发人员在使用时不需要自行编写那些每张表都会有常规数据访问功能,例如插入数据、根据id删除数据等。先创建数据库straw:CREATE DATABASE straw;并使用该数据库:USE straw;然后创建用户数据表,便于接下来访问数据:CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT

2020-07-14 21:19:55 123

原创 11_PROJECT_DAY02_1109

1. 项目前期准备–MyBaitsPlusMyBatisPlus是基于MyBatis的基础之上的,它可以自动生成常规的数据访问,使得开发人员在使用时不需要自行编写那些每张表都会有常规数据访问功能,例如插入数据、根据id删除数据等。先创建数据库straw:CREATE DATABASE straw;并使用该数据库:USE straw;然后创建用户数据表,便于接下来访问数据:CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT

2020-07-14 13:57:18 100

原创 09_MYBATIS_DAY01

1. MyBatis框架的作用MyBatis框架的主要作用是简化持久层开发。当使用MyBatis处理数据的增删改查时,只需要定义访问数据的抽象方法,并配置该抽象方法对应的SQL语句即可!持久层:解决项目中数据持久化处理的组件。数据持久化:将数据永久的保存下来,即将数据存储在硬盘等可以永久保存数据的存储介质中,如果要将数据保存在这些存储介质中,数据需要以文件的形式存在,通常,可以将数据存到文本文档、XML文档、数据库,通常,在没有明确的说明的情况下,讨论数据持久化指的就是使用数据库存取数据。内存(RA

2020-07-12 15:55:13 111

原创 09_MYBATIS_DAY02

1. 使用XML文件配置SQL语句首先下载http://doc.canglaoshi.org/config/Mapper.xml.zip,解压得到SomeMapper.xml。在项目的src/main/resources下创建mappers文件夹,并将SomeMapper.xml复制到该文件夹,并重命名为UserMapper.xml。此步骤中创建的文件夹的名称是自定义的,与后续的配置有关。此步骤中XML文件的名称是自定义的,与其它任何配置都无关。以上添加的UserMapper.xml就是用于配

2020-07-12 15:52:47 173

原创 09_MYBATIS_DAY03

1. 通过查询时自定义别名的方式解决名称不一致而导致的无法封装数据的问题假设,向用户组数据表(t_group)表中插入一些测试数据:INSERT INTO t_group (name) VALUES ('超级管理员'), ('VIP用户'), ('普通用户');INSERT INTO t_group (name) VALUES ('禁用用户');接下来,就应该在用户数据表(t_user)中添加新的字段,用于记录每个用户归属于哪个组:ALTER TABLE t_user ADD COLUMN gr

2020-07-12 15:51:14 151

原创 10_SPRINGBOOT_1756

1. SpringBoot框架的作用SpringBoot框架可以直接理解为是一个更好用的SpringMVC框架!SpringBoot框架遵循“约定大于配置”的思想,它默认完成了绝大部分通用的配置(不管创建哪个项目,配置的方式甚至配置值都不变的那些内容),并且,默认就集成了绝大部分常用的依赖。2. 创建SpringBoot项目创建SpringBoot项目的方式有:在任何开发工具中,将SpringBoot设置为当前项目的父级项目即可;打开https://start.spring.io网站,在网站上

2020-07-12 15:48:28 264

转载 Linux系统命令

List itemLinux常用命令大全(非常全!!!)最近都在和Linux打交道,感觉还不错。我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大。我将我了解到的命令列举一下,仅供大家参考:系统信息arch 显示机器的处理器架构uname -m 显示机器的处理器架构uname -r 显示正在使用的内核版本dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)hdparm -i /de.

2020-07-10 08:49:04 113

原创 09_MYBATIS_DAY02_PLUS

1. VARCHAR与CHAR的区别共性在数据库中,varchar和char都是用于存储字符串类型的数据的,并且,在创建数据表时,使用这2种类型时都必须显式的指定长度!区别varchar是变长的,即:存储的字符串的长度可变,例如设计为varchar(8),实际存入Frank时,占用的字符数就只是5,并不是设置值的8!在处理varchar类型的数据时,数据库默认会使用额外的1个字节记录实际存入的字符数量,以存入Frank为例,就会使用额外的1个字节将5这个值记录下来!由于1个字节只有8个二进制位,可以

2020-07-08 20:49:21 109

原创 09_MYBATIS_DAY

1. 使用XML文件配置SQL语句首先下载http://doc.canglaoshi.org/config/Mapper.xml.zip,解压得到SomeMapper.xml。在项目的src/main/resources下创建mappers文件夹,并将SomeMapper.xml复制到该文件夹,并重命名为UserMapper.xml。此步骤中创建的文件夹的名称是自定义的,与后续的配置有关。此步骤中XML文件的名称是自定义的,与其它任何配置都无关。以上添加的UserMapper.xml就是用于配

2020-07-08 20:18:36 134

原创 web09

###Bootstrap此框架是目前比较流行的前端框架,基于html/css/javascript/jQuery,由Twitter公司研发,框架作用:提高前端页面的开发效率工作原理:Bootstrap框架提供了n种常见的样式效果(提前写好了市面中常见的样式代码),在前端页面开发时,如果需要使用这些常见样式时只需要给元素添加特定的class属性即可,这个class属性填写什么由Bootstrap框架决定, 具体class值参考Bootstrap开发文档学习Bootstrap框架主要学习的就是如何从文档

2020-07-08 16:39:42 165

原创 web08

###页面失去焦点事件当页面从浏览状态进入到其它页面的时候属于失去焦点事件onblur = function(){}###页面获取焦点事件每次从浏览其它页面回到此页面的时候会触发获取焦点事件onfocus = function(){}###hover事件是将鼠标移入和移出事件合并到了一起###事件模拟可以通过代码模拟事件触发元素对象.trigger(“事件名称”)###动画相关元素对象.hide(时间,方法) 隐藏元素对象.show(时间,方法) 显示元素对象.fadeOut(

2020-07-08 16:39:00 133

原创 web07

###选择器续内容选择器$(“div:has(span)”) 匹配包含span子元素的div <div> <span></span> </div>$(“div:empty”) 匹配空的div$(“div:parent”) 匹配非空的div$(“div:contains(‘xxx’)”) 匹配包含xxx文本的div <div>xxx</div>可见选择器$(“div:vis

2020-07-08 16:37:28 92

原创 web06

###JavaScript对象分类内置对象:number/string/boolean等浏览器相关对象BOM: Browser Object Model 浏览器对象模型页面相关对象DOM: Document Object Model 文档对象模型###BOM浏览器相关内容window: 该对象的属性和方法称为全局属性和方法,访问时可以省略掉window.window中常见的方法:window.isNaN(); 判断变量是否是数值window.parseInt(); 把字符串或

2020-07-08 16:35:28 119

原创 web05

###z-index样式通过此样式控制元素显示层级,层级越高元素显示越靠前需要结合position属性使用,一般position:relative; 因为使用其它值元素会脱离文档流会对之前效果产生影响.###overflow溢出设置hidden: 超出范围隐藏visible(默认):超出范围显示scroll: 超出范围滚动显示###JavaScript给页面添加动态效果JavaScript是一门编程语言,和Java没有关系,为了蹭热度.语言特点:属于脚本语言,不需要编译直接解析执

2020-07-08 16:33:13 218

原创 web04

####固定定位当元素需要固定在窗口的某个位置的时候使用固定定位格式: position:fixed;显示特点:元素脱离文档流如何控制元素的显示位置?通过left/right/top/bottom 让元素相对于窗口做位置偏移####浮动定位-格式: float:left/right;显示特点: 元素脱离文档流,元素从当前所在行向左或向右浮动,当撞到上级元素边缘或其它浮动元素停止.当需要将纵向排列的元素改成横向排列时使用浮动定位如果元素的所有子元素全部浮动则自动识别的高度为0,给元素

2020-07-08 16:31:30 93

原创 web03

###课程回顾CSS 层叠样式表 负责美化页面引入方式:内联样式:在标签的style属性里面写样式代码,不能复用内部样式:在head标签里面添加style标签,在标签体里面写样式代码, 只可以在当前页面复用外部样式:在单独的css样式文件中写样式代码,在html页面中通过link标签引入选择器标签名选择器 div{}id选择器 #id{}class选择器 .class{}分组选择器 div,#id,.class{}属性选择器 标签名[属性名=‘

2020-07-08 16:30:16 127

原创 web02

###表单form作用:用于获取用户输入的信息,并且将信息提交到服务器学习表单就是学习表单中有哪些控件文本框 <input type="text" name="username" value="xxx" maxLength="5" readonly="readonly" placeholder="xxxx" >密码框 <input type="password" name="pwd" value="xxx" maxLength="5" readonly="

2020-07-08 16:29:08 137

原创 web01

###web前端HTML(学习如何搭建页面结构和内容) 举例:盖房子(毛坯房)CSS (学习如何美化页面) 举例: 装修JavaScript(学习如何给页面添加动态效果)jQuery框架(简化原生JavaScript)Bootstrap框架(综合的前端框架,简化前端开发)###HTMLHyper Text Markup Language: 超文本标记语言超文本: 不仅仅是纯文本还包括:字体效果(大小,颜色,风格等)和多媒体信息(图片、音频、视频)标记语言: 由一对尖括号

2020-07-08 16:27:31 116

原创 mysql01

###数据库学习数据库主要学习的就是如何对数据进行增删改查操作.增加(插入数据) 删除数据 修改数据 查询数据为什么使用数据库软件?之前在讲webserver时通过IO技术已经操作过数据,其实这部分代码相当于自己写了一个数据库软件,只不过功能较少执行效率较低,将来工作中不管开发什么网站都需要对数据进行增删改查操作,这种使用频率较高而且开发过程复杂的内容在互联网行业中肯定会有一个通用的解决方案.DBMS:DataBaseManagementSystem数据库管理系统(数据库

2020-07-08 16:24:14 45

原创 mysql04

读取配置文件将需要改动的数据从代码中移到*.properties配置文件中,好处: 以后便于修改如何读取配置文件里面的数据://创建读取*.properties配置文件的对象 Properties p = new Properties(); //获取文件的输入流 通过反射的方式得到文件的输入流 //这种写法会自动去src/main/resources目录下查找文件 InputStream ips = DBUtils.class.getClassLoader()

2020-07-08 16:22:23 61

原创 mysql03

###课程回顾数据库相关SQL查询所有 show databases;创建 create database db1 character set utf8/gbk;查询详情 show create database db1;删除数据库 drop database db1;使用数据库 use db1;表相关SQL创建表 create table t1(name varchar(10),age int)charset=utf8;查询所有 show tables;查询详情 show

2020-07-08 16:21:15 79

原创 mysql02

###数据库学习数据库主要学习的就是如何对数据进行增删改查操作.增加(插入数据) 删除数据 修改数据 查询数据为什么使用数据库软件?之前在讲webserver时通过IO技术已经操作过数据,其实这部分代码相当于自己写了一个数据库软件,只不过功能较少执行效率较低,将来工作中不管开发什么网站都需要对数据进行增删改查操作,这种使用频率较高而且开发过程复杂的内容在互联网行业中肯定会有一个通用的解决方案.DBMS:DataBaseManagementSystem数据库管理系统(数据库

2020-07-08 16:20:34 89

原创 servlet01

###Servlet####什么是服务器服务器就是一台高性能电脑电脑上安装了提供服务的软件就称为 xxx服务器举例:邮件服务器: 就是在电脑上安装了提供邮件收发服务的软件ftp服务器: 就是在电脑上安装了提供文件上传下载服务的软件数据库服务器: 在电脑上安装了提供数据增删改查服务的软件(MySQL/Oracle…)web服务器: 就是在电脑上安装了web服务软件(Webserver)###Web服务软件做了那些事儿负责建立底层的网络连接负责将客户端请求的文件返回给客户端w

2020-07-08 16:01:29 176

原创 servlet02

实现注册登录功能创建用户表use newdb3;drop table user;create table user(id int primary key auto_increment,username varchar(20),password varchar(20))charset=utf8;工程中如果使用数据库需要做以下几件事在pom.xml中添加 mysql和数据库连接池的jar包信息把jdbc.properties配置文件从之前工程中复制过来把之前工程中的DBUtils工具类

2020-07-08 15:59:43 127

原创 servlet03

英雄表的增删改查准备表use newdb3;create table hero(id int primary key auto_increment,name varchar(10),age int,type varchar(10),money int)charset=utf8;创建工程:创建maven工程 jar改war改错 右键最长的关联Tomcatpom.xml中的jar包信息 有三个 包括Thymeleaf的配置文件jdbc.propertiesDBUtils工具类

2020-07-08 15:58:31 130

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除