自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(71)
  • 问答 (1)
  • 收藏
  • 关注

原创 如何启动RocketMQ(Mac系统)

如何启动RocketMQ(Mac系统)直接下载压缩安装包,解压修改bin目录下,runserver.sh和runbroker.sh的运行时内存的大小,个人pc改小一点就可以,如果是大型服务器,可以根据需要增大这时如果启动的话,会报错:Please set the JAVA_HOME variable in your environment, We need java(x64)!这说明我的JAVA_HOME配置有问题查询JAVA_HOME这里注意一下JAVA_HOME是不是jdk1

2021-10-05 13:52:30 1304

原创 Java学习 day66_spring-mvc2

今天的无语bug导入mvc的注释驱动的时候,一定要选择mvc的那个,今天不小心选了别的,导致一直出1 @RequestMapping的使用核心功能:URL路径映射1.1 ★★★URL路径映射之前已经使用过了:value属性1.1.1 映射多个请求URLString[] ???? 多个请求URL 1.1.2 使用通配符( * )1.2 ★窄化请求user/loginuser/registeruser/modifyuser/logout写起来简单了方便写过滤器(拦截器)

2021-10-03 15:32:25 227

原创 Java学习 day67_Spring-mvc3

今日的无语大bug忘记倒入mybatis和spring整合大包,如果没导包,在运行时并不会报错,但是扫描不出来mapper1 Handler方法的形参执行Handler方法是通过反射来执行method.invoke(object,args);形参主要是请求参数1.1 ★★★请求参数接收localhost:8080/user/register?username=songge&password=niupi&age=30&gender=male这个请求它的请求参数是谁?.

2021-10-03 15:26:00 232

原创 Java学习 day65_springMVC

3 SpringMVCSpring框架的基础上,MVC模式的使用解决JavaEE使用的复杂性(Servlet、映射到对应的Servlet、分发到不同的方法上、请求参数的接收、结果的响应)基于Servlet开发的dispatcherServlet会接受到全部的请求,因为servlet-mapping设置的是/doDispatch根据你的请求url做分发ModelAndView是以前管用的响应数据和视图,现在不常用了,现在相应json 3.1 看代码(尽力吧)3.1.1 init方法

2021-10-03 15:16:42 135

原创 Java学习 day64_transaction

3 整合MyBatismapper通过sqlSession来获得实例化3.1 分析3.2 整合3.2.1 引入依赖3.2.2 注册组件getObject方法返回的是一个sqlSessionFactory,所以说注册的组件是一个sqlSessionFactory再回顾一下,bean标签里的property标签中name是组件中成员变量的名字,value就是你给它赋的值3.2.3 单元测试3.2.4 事务整合完MyBatis,Mapper层实例每次执行完方法,都会提交事务

2021-10-03 15:12:38 169

原创 Java学习 day63_Spring-AOP

1 AOPAspect Oriented Programming面向切面编程增强动态代理:增强的是委托类的全部方法AOP:增强的是容器中的组件里特定(有机会选择)的方法范围:容器中的组件把一些和核心业务无关的内容提取出来,通用的事情,比如参数校验、事务、程序状态检测、日志2 核心术语通过切入点指定容器中的组件里的方法,通知指导他们做增强如果方法在切入点增强的范围内,该方法对应的组件就会被增强(变成Proxy)3 动态代理AOP底层就是使用动态代理来进行增强:JDK动态代理和CGl

2021-10-03 15:00:07 140

原创 Java学习 day62_spring-ioc

1 SpringFrameworkSpring框架 作者:rod johnsonSpring框架是啥: IOC、DI1.1 IOC控制反转Inverse of Control :IOC、IoC什么是控制反转控制:生成实例。 应用程序控制实例的生成UserService userService = new UserServiceImpl();反转:将实例生成权交给了SpringUserService userService = Spring.getXXX();生成权为什么要反

2021-10-02 23:48:13 210

原创 Java学习 day60_project(3)

Day4 订单管理订单新增的入口在前台用户系统。可以先新建表,自己先预先插入几条数据。修改订单的规格和数量,基本是不符合业务场景需求的。修改订单只实现修改订单状态即可。订单删除逻辑:可以选择物理删除(从表中实实在在删除该条记录)、或者逻辑删除(设置一个状态位,让用户觉得删除了该订单,其实只是对其不可见罢了)。订单其实可以暴露一个人很多信息。用户行为画像、人物画像。 推荐算法。订单表如何创建?本商城在设计接口的时候,其实是没有购物车表,意味着加入购物车里面的商品其实是相当于在订单表中下了一个未

2021-10-02 22:00:25 202

原创 Java学习 day59_project1(2)

Day2 动态sql管理员新增功能:点击+,如果输入的信息不符合要求,显示正则验证未通过?点击保存修改,触发一个事件(函数):首先对参数进行校验,看是否符合要求,不符合规则的条件下,直接就返回,不会去使用axios发送HTTP请求。无论前端还是服务端都应该对数据进行校验?为什么呢?前端的页面是非常容易跳过的。我只需要记住前端接下来发送的请求的地址以及请求的方式,其实完全可以自己去工具去发送这样的一个请求,那么如果你的代码中只是前端做了校验,那么就可以直接跳过校验。postman、还可以写代码。

2021-10-02 21:53:17 265

原创 Java学习 day58_project1(1)

项目一Day1 项目介绍概述电商系统。后台管理系统(主要面向的是工作者而设计的一个系统,主要是用来维护前台用户系统里面的相关数据信息)Online Mart后台管理管理员模块(登录当前后台管理系统的账号):当前后台管理系统中的所有管理员账号。对其进行增删改车等操作。点击+按钮,可以进入一个框,输入对应的信息之后,可以新增一个账号信息。点击修改按钮,首先进行一个信息的回显(将管理员的信息再次显示出来,主要是用来提升用户体验的),再次点击保存修改,可以将信息进行修改。删除按钮,可以删除当前管理

2021-10-02 16:37:11 375

原创 Java学习 day57_MVC

MVCJSONJSON是一个数据格式。说白了就是js里面的对象(数据的结构)表示一个学生信息 student name、age、province{name:“jingtian”, age:26,province:“henan”} —js里面的对象json数据如何写?如何理解?记住以下几个结论就可以了如果看到{}表示的是一个对象如果看到的是[]表示的是一个数组或者集合xml之前是作为一个数据交互的格式。手机客户端和服务器之间进行数据交换,采用什么样的数据格式来交互彼此的数据呢?x

2021-10-02 15:13:48 244

原创 Java学习 day56_Web组件

Web组件Listener监听器。在EE规范早期,其实只有servlet一个组件,后面又引入了listener、filter等另外两个组件。JavaEE中有三大组件:Servlet(开发动态web资源)、Listener(监听器)、Filter(过滤器)web中的监听器:被监听者:比如ServletContext对象监听者:编写的监听器监听事件:ServletContext对象的创建和销毁触发事件:调用监听器里面对应的方法使用(掌握)1.编写一个类实现ServletContextL

2021-10-01 23:43:15 190

原创 Java学习 day55_cookie

会话技术我们编写一段代码,做一个实验,引出会话技术。package com.cskaoyan.cookie;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.Http

2021-10-01 23:05:39 356

原创 Java学习 day54_fileupload

文件上传微信头像更换头像 本地选择一个头像--------头像更换(就是将本地的图片上传到服务器上面去)微信的头像:如果是好友更换头像,你可以及时的发现如果是群里面非好友更换了头像,那么没法及时发现的(群里面的非好友头像,如果你没有点击他的信息查看,那么显示的一直是更入群时那个头像)微信在处理群内成员信息时,对于好友----及时去更新的;对于非好友-信息不是及时更新的国庆—头像加国旗无法更换头像的情况,即便更换成功,依然只是自己可以看到,别人看不到,文件的来源应该是不一样的概述文件上传,

2021-09-28 13:55:03 203

原创 Java学习 day53_response

ServletResponse概述代表了将来的响应报文。服务器为了今后设置响应报文方便,预先先给我们提供了一个response对象,在执行service方法的时候,可以往response中塞入一些数据,里面有很多的成员变量,不同的成员变量接下来在响应报文中对应的部分也不同。最终connector读取response里面的数据,然后生成响应报文。(购物时的小推车,方便购物结算)HttpServletResponse接口。父子接口的关系。常见方法(掌握)既然response代表了响应报文,那么就应该有

2021-09-27 23:38:47 283

原创 如何打开一个非本地的maven项目

1 打开一个非本地maven项目后,pom.xml文件是不被识别的,直接在module或者pom上右键选择识别为maven项目2修改maven的配置(选择本地的maven仓库)3修改jdk的版本

2021-09-26 14:23:02 249

原创 Java学习 day52_request

ServletRequest概述Defines an object to provide client request information to a servlet. The servlet container creates a ServletRequest object and passes it as an argument to the servlet’s service method.ServletRequest对象其实是tomcat创建的一个关于用户请求信息的封装,其实也就是请求报文的

2021-08-22 21:06:31 291

原创 Java学习 day51_servlet

Servlet概述Servlet = Server + applet。运行在服务器上面的一个小程序。功能用来开发动态web资源,比如刷新浏览器,时刻显示最新的时间,比如每个用户登录,都会显示出对应的用户名。如何去开发呢?如果大家在今后的工作中如果遇到一个新的问题,如何去学习?最好的方式就是看官方文档。http://tomcat.apache.org/tomcat-8.5-doc/servletapi/A servlet is a small Java program that runs w

2021-08-19 09:10:18 327

原创 Java学习 day50_tomcat

常见的静态web服务器服务器的原理:其实就是将客户输入的网络路径进行解析,服务器需要在本地硬盘上面的指定路径去寻找该文件,最后响应出去。其实就是IO流,只不过此时不再是文件IO流JavaEE规范:是一个很大的范畴。指的是在企业开发过程中,为了方便企业级应用开发的方便,sun公司制定的一个标准。举例说明,假如希望获取当前请求报文的请求资源路径选用A公司的服务器产品,A服务器将请求报文解析成了ARquest对象,设计了一套代码,从ARquest.getReqeustURI来获取请求资源路径今后可能公司

2021-08-15 17:09:49 398

原创 Java学习 day49_Http

EE概念Enterprise Edition 企业版。主要面对企业的用户。进行企业级开发的时候,需求是比较负责的,开发出比较复杂的业务逻辑功能模块,如果单纯使用SE阶段的API来开发的话,的确可以完成,但是会非常繁琐。EE阶段将很多繁琐的步骤封装到一个方法中,进而去简化开发工作。socket—SE阶段之前需要去写几十行代码去获取客户机提交过来的数据,利用EE阶段的API,只需要调用一个方法就可以完成该功能。Standard Edition 标准版、个人版客户端:大家日常生活中所处的角色都是客户端的

2021-08-14 00:32:43 1603

原创 Java学习 day48_redis

Redis1. 简介Redis是一个高性能的NoSQL数据库;Redis是一个缓存中间件,更多的是提供一个缓存的功能关键词:支持网络、NoSQL、高性能、key-value2. 安装下载下载地址解压解压路径不要中文或者是空格配置环境变量3. 启动Redis是一个C/S软件架构模型,我们想要启动Redis,我们得分为两步不推荐大家在windows上面双击启动启动服务端进入Redis的解压目录执行指令:redis-server.exe redis.windows

2021-08-12 23:13:14 214

原创 Java学习 day47_Mybatis

9. 多表查询9.1 一对一分次查询mapper// 一对一的分次查询User selectUserById(@Param("id") Integer id);mapper.xml <!-- 一对一的分次查询 1. 查询user信息 select * from user where id = ? 2. 查询user_detail的信息 select * from user_detail where user_id = ?

2021-08-12 22:59:07 181

原创 Java学习 day46_mybatis

Mybatis1. 介绍Mybatis是一个ORM框架。ORM:Object RelationShip Mapping 对象关系映射其实Mybatis就是把数据库中的记录映射为Java对象,把Java对象映射为数据库中的记录 的这么一个框架。Mybatis的中文官网Mybatis英文官网2. Mybatis入门案例导包<!-- myabtis--><dependency> <groupId>org.mybatis</groupId&

2021-08-09 22:30:06 266

原创 Java学习 day45_maven

Maven1. 介绍Maven是一个项目管理工具。Maven这个项目管理工具可以帮助我们做什么呢?项目构建项目构建其实就是指可以帮助我们编译、测试、打包等等依赖管理依赖管理其实就是可以帮助我们管理项目的依赖,也就是管理导包2. 安装与配置从服务器下载或者到 http://maven.apache.org/download.cgi 下载maven的是一个Java的开源项目,如何选择Maven的版本呢?JDK JDK8IDEA 2018.3Maven 3.5.32.1

2021-08-09 09:02:03 225

原创 如何在Mac中配置全局环境变量

使用终端配置环境变量配置环境变量本身并不难,但是编辑器好难用,每次会出来很多没用的信息,而我用完了就忘了怎么用的,所以在这里记录一下如何使用先打开bash_profilevim ~/.bash_profile我这里会出现一个选择框,选E,edit anyway然后就会输出这样一堆乱七八糟的东西进入编辑模式手动把光标移到下面来,然后输入i进入编辑模式在<<< conda init <<<下面输入要新加的环境变量保存新加的环境变量按esc退出

2021-08-07 16:35:08 2917

原创 Java学习 day44_index

索引1. 介绍索引是一种可以帮助我们高效获取数据的数据结构。类比于字典开头的索引目录。假如字典开头没有这个索引目录,那么我们去查字典需要一个字一个字的,效率很低。假如字典开头有这个索引目录,那么我们去查字典的时候,就可以先去查这个索引,然后定位到特定的页,然后去查询这个字,进而提高查询的效率。我们的MySQL里面的索引也是一样的功能。假如没有这个索引,我们去表中查询记录的时候,需要扫描整个表中的记录;假如有了索引存在,那我们去查询的时候,就可以先根据索引,定位到特定的行,进而缩小查询的范围,帮助我们提高

2021-08-06 00:00:35 230

原创 Java学习 day43_connectionPool&DBUtils

数据库连接池1. 数据库连接池是什么线程池:其实就是一个容器(池子)放了很多线程。因为我们每一次在使用线程的时候,都需要自己去创建一个线程,然后使用完了以后就把这个线程销毁了,这种做法明显是比较浪费资源的,而且效率也不高,所以我们利用这种池化的思想,把线程维护在一个线程池中,当我们需要使用线程的时候我们从线程池里面获取一个线程,然后执行任务,这个线程使用完了之后不会去销毁,而是放到线程池中。我们的数据库连接池也是一样的,在一个数据库连接池中,维护很多个数据库连接(具体来说就是Connection),当

2021-08-05 08:48:12 279

原创 Java学习 day42_JDBC&transaction

5.数据库注入问题数据库的注入问题是一个安全性的问题。我们通过一个登录案例来给大家说明数据库的注入问题:产生的根本原因是什么呢?数据库注入问题产生的根本原因是因为我们把 用户输入的字符串当成了SQL语句里面的关键字来解析,改变了SQL语句的格式本来:select * from user where username = ? and password = ?改变:select * from user where username = ? and password = ? or 1=15.

2021-08-03 09:09:45 236

原创 Java学习 day41_JDBC

JDBC1. 数据库的访问过程客户端和MySQL服务之间建立网络连接客户端向MySQL服务器发送请求(请求的内容其实就是SQL语句)MySQL服务器收到请求,执行命令MySQL把SQL语句的执行结果返回给客户端客户端收到返回的响应,解析这个响应释放资源2.JDBC 是什么JDBC:Java Database Connection,指Java数据库连接。具体来说,其实JDBC就是Java为我们去访问数据库制定的这么一套接口。那么Java为什么要为去访问数据库制定一套接口呢?因为我们

2021-07-31 18:01:04 353 1

原创 Java学习 day40_SQL

查询语句执行顺序(数字代表执行顺序)​ (5) SELECT column_name, …​ (1) FROM table_name, …​ (2) [WHERE …]​ (3) [GROUP BY …]​ (4) [HAVING …]​ (6) [ORDER BY …];​ (7) [LIMIT]4. 数据完整性实体完整性实体完整性其实就是指的每一个表都应该有一个主键,不然用户可能会输入一个重复的数据create table person( -- 声明id这一列是主键

2021-07-30 23:09:16 233

原创 Java学习 day39_SQL

数据库介绍数据库其实就是用来存储和管理数据的仓库。其实我们身边的其他从业人员大多都是使用Excel来存储和管理数据的,我们的数据库其实就是和excel是类似的,也是一个一个表来给我们管理数据。数据库的使用比excel要强大很多。分类数据库分为两种:关系型数据库关系型数据库其实就是表示这种数据库不光光可以用来存储数据,还可以存储数据与数据之间的关系。关系型数据库存储数据一般都存储在磁盘上,去读写数据的时候就要经过磁盘的IO,所以速度比较慢。产品:Oracle:Oracle是目前市面上

2021-07-29 22:44:57 334

原创 vue的安装和使用

1 Vue项目创建流程思想思考: 我们是怎么在我们自己的电脑上开发java代码的?1, 首先我们安装了jvm, 这个是我们java代码运行的环境2, 之后我们安装idea, 这是一个帮我们构建以及管理java项目的工具3, 紧接着我们在idea里new Project 创建一个javase项目4, 之后我们在idea所创建的java项目中写java代码那么对应的, 如果我们创建一个Vue项目,并且想写一些Vue代码也需要上述流程1, 我们需要安装node , node是js的运行环境(nod

2021-07-29 13:02:37 1360

原创 Java学习 day38_vue

1 VueJQuery在当下时代:前端 --> 三个基础:html,css,js三个框架: vue, react, Angular所有的页面: 都可以直接用html css js 直接实现所有的前端基础/框架 都是基于html css jsVue开发者: 尤雨溪量级: Angular > react > Vue原生开发: 贴近于底层语言的开发,如果app要更新功能,用户就必须更新app成本高稳定/运行高速前端:混合开发: 原生技术 + 前端,大部分的ap

2021-07-27 14:08:14 213

原创 Java学习 day37_JS&DOM

1 JavaScriptJs: JavaScriptHTMLCSS1.1 特点JavaScript 是一种轻量级的编程语言。JavaScript 是可插入 HTML 页面的编程代码。JavaScript是一种弱类型语言 它的解释器被称为JavaScript引擎,为浏览器的一部分: js是浏览器运行的, 主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。跨平台特性:在绝大多数浏览器的支持下。轻量级: html css js重量级: Java C++区分轻量级和重

2021-07-25 15:52:19 332 1

原创 如何使用idea模拟服务器,接收浏览器的请求

版本1但是只能实现一次访问,不可以接受刷新package front_end.day01_html.myServer;import java.io.*;import java.net.ServerSocket;import java.net.Socket;public class MyBrowseServer { public static void main(String[] args) throws IOException { System.out.println

2021-07-23 08:52:39 362

原创 Java学习 day36_CSS

1 CSS网页 --> 人Html --> 骨架Css --> 皮肤和血肉CSS 指层叠样式表 (级联样式表) 主要用于设置HTML页面中的文本内容(字体、大小、对齐方式等)、图片的外形(宽高、边框样式、边距等)以及版面的布局等等外观显示样式。 CSS以HTML为基础,提供了丰富样式功能。1.1 怎么在HTML中引入CSSCSS以HTML为基础: 说明CSS依赖于HTML而存在, CSS是用来描述HTML标签的1.1.1 第一种把CSS样式写在H

2021-07-23 08:34:16 149

原创 Java学习 day 34_HTML

1 概述1.1 学习方式:记核心脉络1.2 目的目的:1, 站在后端程序员的角度了解前端: 知道前端怎么回事, 能看懂一些前端代码,防止工作背锅2, 写一些前端页面2 HTMLsome supplement:浏览器网址前有个加锁,说明使用的是https协议如何做到让多个服务器都能平均工作?hash值取模,然后将请求分布于不同的服务器,做到尽量的平均什么是前端?出现时间很短,因为大概十年前,前后端不分离现在前端指一个网页 或者 一套网页前端三个基础: HTML CS

2021-07-20 23:20:29 272

原创 Java学习 day33_Map&Set

3 LinkedHashMap

2021-07-19 23:17:02 179 3

原创 Java学习 day32_Queue&Map

Queue1.1 特点1, Queue接口是Collection一个子接口, 描述的数据结构是队列2, Queue存储元素是有序3, Queue 允许存储重复元素4, Queue 不允许存储null元素( LinkedList除外)Queue的删除操作, 是以返回一个null值作为 标记, 标记没有元素存储了1.2 API1.2.1 注意1, 如果Queue存储元素的时候, 没有位置/空间 可以存储了, 如果使用add方法抛出异常, 如果使用offer返回布尔值 假2, 如果Qu

2021-07-17 08:59:18 331

原创 Java学习 Day31_ArrayList

1.3 SubList: 切割List视图:SubList是一个视图方法SubList: 切割方法, 它并没有真正的切割出数据, 仅仅是, 维护了源数据的一些标记, 标记那些元素是切割出来范围, 看上去好像是复制了一份数据(实际上并没有), 它里面的数据还是源数据如果你修改切割出来的数据,会反应在源数据上视图, 数据库. “虚表”: 给原本的数据划分不同表, 不同的表持有不同数据引用比如一个商品在不同分类的数据库中,要修改价格,不可能将所有数据库中它的内容都修改一份,而是尽量只做一次修改

2021-07-16 19:10:27 182

空空如也

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

TA关注的人

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