学习心得
文章平均质量分 83
洛-尘
这个作者很懒,什么都没留下…
展开
-
注解和反射
注解Annotation不是程序本身,可以对程序作出解释(和注释相似)可以被其他程序(编译器等)读取可以通过反射机制编程实现对元数据的访问内置注解元注解,负责注解其他注解type类上定义自定义注解使用@interface自定义注解,自动继承java.lang.annotation.Annotation接口需要元注解标志,注解参数顺序无关public enum ElementType { /** Class, interface (including annotation原创 2021-09-06 14:17:11 · 85 阅读 · 0 评论 -
JDBC粗解
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。应用程序是不能直接使用数据库的,必须要通过相应的数据库驱动程序,通过驱动程序去和数据库打交道。其实也就是数据库厂商的JDBC接口实现,即对Connection等接口的实现类的jar文件。JDBC编写步骤加原创 2021-09-05 19:42:26 · 63 阅读 · 0 评论 -
Redis学习心得(狂神说)
一、Nosql概述为什么使用Nosql1、单机Mysql时代90年代,一个网站的访问量一般不会太大,单个数据库完全够用。随着用户增多,网站出现以下问题数据量增加到一定程度,单机数据库就放不下了数据的索引(B+ Tree),一个机器内存也存放不下访问量变大后(读写混合),一台服务器承受不住。2、Memcached(缓存) + Mysql + 垂直拆分(读写分离)网站80%的情况都是在读,每次都要去查询数据库的话就十分的麻烦!所以说我们希望减轻数据库的压力,我们可以使用缓存来保证效率!优化原创 2021-09-05 10:55:24 · 859 阅读 · 0 评论 -
Mybatis(狂神说)
什么是MyBatisMyBatis 是一款优秀的持久层框架MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的过程MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 实体类 【Plain Old Java Objects,普通的 Java对象】映射成数据库中的记录。MyBatis 本是apache的一个开源项目ibatis, 2010年这个项目由apache 迁移到了google code,并且改名为MyBatis 。2013年11原创 2021-07-28 16:30:48 · 363 阅读 · 0 评论 -
SpringBoot(十四)Dubbo和Zookeeper集成
什么是分布式系统?在《分布式系统原理与范型》一书中有如下定义:“分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统”;分布式系统是由一组通过网络进行通信、为了完成共同的任务而协调工作的计算机节点组成的系统。分布式系统的出现是为了用廉价的、普通的机器完成单个计算机无法完成的计算、存储任务。其目的是利用更多的机器,处理更多的数据。分布式系统(distributed system)是建立在网络之上的软件系统。首先需要明确的是,只有当单个节点的处理能力无法满足日益增长的计算、存储任务的原创 2021-07-27 09:22:52 · 88 阅读 · 0 评论 -
MybatisPlus
MyBatisPlus可以节省我们大量工作时间,所有的CRUD代码他都可以自动化完成!JPA、tk-mapper、MyBatisPlus偷懒的!简介是什么?MyBatis本来就是简化JDBC操作的!特性:无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作,BaseMapper强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大原创 2021-07-23 10:22:13 · 337 阅读 · 0 评论 -
SpringBoot(十三)异步、定时、邮件任务
异步任务1、创建一个service包2、创建一个类AsyncService异步处理还是非常常用的,比如我们在网站上发送邮件,后台会去发送邮件,此时前台会造成响应不动,直到邮件发送完毕,响应才会成功,所以我们一般会采用多线程的方式去处理这些任务。编写方法,假装正在处理数据,使用线程设置一些延时,模拟同步等待的情况;@Servicepublic class AsyncService { public void hello(){ try { Thread.s原创 2021-07-19 11:42:27 · 144 阅读 · 0 评论 -
SpringBoot(十一)Shiro
1、Shiro简介Apache Shiro 是 Java 的一个安全(权限)框架。Shiro 可以非常容易的开发出足够好的应用,其不仅可以用在 JavaSE 环境,也可以用在 JavaEE 环境。Shiro 可以完成:认证、授权、加密、会话管理、与Web 集成、缓存等。下载地址官网:http://shiro.apache.org/github:https://github.com/apache/shiro功能Authentication:身份认证/登录,验证用户是不是拥有相应的身份A原创 2021-07-18 16:49:44 · 132 阅读 · 0 评论 -
SpringBoot(十二)集成Swagger
Swagger简介前后端分离前端 -> 前端控制层、视图层后端 -> 后端控制层、服务层、数据访问层前后端通过API进行交互前后端相对独立且松耦合产生的问题前后端集成,前端或者后端无法做到“及时协商,尽早解决”,最终导致问题集中爆发解决方案首先定义schema [ 计划的提纲 ],并实时跟踪最新的API,降低集成风险Swagger号称世界上最流行的API框架Restful Api 文档在线自动生成器 => API 文档 与API 定义同步更新直接运行,在线测试AP原创 2021-07-18 16:24:58 · 114 阅读 · 0 评论 -
SpringBoot(十)集成SpringSecurity
SpringSecuritySpring Security是一个功能强大且高度可定制的身份验证和访问控制框架。它实际上是保护基于spring的应用程序的标准。Spring Security是一个框架,侧重于为Java应用程序提供身份验证和授权。与所有Spring项目一样,Spring安全性的真正强大之处在于它可以轻松地扩展以满足定制需求从官网的介绍中可以知道这是一个权限框架。想我们之前做项目是没有使用框架是怎么控制权限的?对于权限 一般会细分为功能权限,访问权限,和菜单权限。代码会写的非常的繁琐,冗余原创 2021-07-16 11:47:54 · 125 阅读 · 0 评论 -
SpringBoot(九)整合mybatis
1、导入 MyBatis 所需要的依赖<!-- https://mvnrepository.com/artifact/org.mybatis.spring.boot/mybatis-spring-boot-starter --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-sp原创 2021-07-15 16:51:31 · 89 阅读 · 0 评论 -
SpringBoot(八)整合Druid
Druid简介Druid 是阿里巴巴开源平台上一个数据库连接池实现,结合了 C3P0、DBCP 等 DB 池的优点,同时加入了日志监控。Druid 可以很好的监控 DB 池连接和 SQL 的执行情况,天生就是针对监控而生的 DB 连接池。Spring Boot 2.0 以上默认使用 Hikari 数据源,可以说 Hikari 与 Driud 都是当前 Java Web 上最优秀的数据源,我们来重点介绍 Spring Boot 如何集成 Druid 数据源,如何实现数据库监控。1.配置数据源<原创 2021-07-15 10:33:04 · 343 阅读 · 0 评论 -
SpringBoot(七)整合JDBC
对于数据访问层,无论是 SQL(关系型数据库) 还是 NOSQL(非关系型数据库),Spring Boot 底层都是采用 Spring Data 的方式进行统一处理。Spring Boot 底层都是采用 Spring Data 的方式进行统一处理各种数据库,Spring Data 也是 Spring 中与 Spring Boot、Spring Cloud 等齐名的知名项目。新建application.yaml配置数据库连接spring: datasource: username: root原创 2021-07-14 21:52:42 · 91 阅读 · 0 评论 -
SpringBoot(六)员工系统
首页在主程序同级目录下新建config包用来存放自己的配置类在其中新建一个自己的配置类MyMvcConfig,进行视图跳转@Configurationpublic class MvcConfig implements WebMvcConfigurer { @Override public void addViewControllers(ViewControllerRegistry registry) { registry.addViewController("/".原创 2021-07-13 17:45:42 · 167 阅读 · 0 评论 -
JavaWeb
http请求get:请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容,不安全,但高效post:请求能够携带的参数没有限制,大小没有限制,不会在浏览器的URL地址栏显示数据内容,安全,但不高效。编写一个Servlet程序编写一个普通类实现Servlet接口,这里我们直接继承HttpServlet public class HelloServlet extends HttpServlet { //由于get或者post只是请求实现原创 2021-07-12 18:05:22 · 66 阅读 · 0 评论 -
SpringBoot(五)web开发
1.静态资源处理静态资源映射规则读一下源代码:比如所有的 /webjars/** , 都需要去 classpath:/META-INF/resources/webjars/ 找对应的资源;Webjars本质就是以jar包的方式引入我们的静态资源 , 我们以前要导入一个静态资源文件,直接导入即可。使用SpringBoot需要使用Webjars,我们可以去搜索一下:网站:https://www.webjars.org第二种静态资源映射规则那我们项目中要是使用自己的静态资源该怎么导入呢?我们原创 2021-07-11 19:59:56 · 105 阅读 · 0 评论 -
SpringBoot(四)自动配置原理
自动配置原理//表示这是一个配置类,和以前编写的配置文件一样,也可以给容器中添加组件;@Configuration//启动指定类的ConfigurationProperties功能;//进入这个HttpProperties查看,将配置文件中对应的值和HttpProperties绑定起来;//并把HttpProperties加入到ioc容器中@EnableConfigurationProperties({HttpProperties.class})//Spring底层@Conditional注解原创 2021-07-11 09:48:37 · 68 阅读 · 0 评论 -
SpringBoot学习心得(三)JSR303数据校验及多环境切换
yaml配置注入SpringBoot使用一个全局的配置文件 , 配置文件名称是固定的application.properties语法结构 :key=valueapplication.yml语法结构 :key:空格 value配置文件的作用 :修改SpringBoot自动配置的默认值,因为SpringBoot在底层都给我们自动配置好了;yaml概述YAML是 “YAML Ain’t a Markup Language” (YAML不是一种标记语言)的递归缩写。在开发的这种语言时,YAML原创 2021-07-10 10:54:30 · 370 阅读 · 0 评论 -
SpringBoot学习心得(二)原理初探
原理初探:自动配置pom.xmlspring-boot-dependencies:核心依赖在父工程中我们在写或者引入一些springboot依赖的时候,不需要指定版本,因为有这些版本仓库启动器<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId原创 2021-07-09 17:22:00 · 391 阅读 · 0 评论 -
SpringBoot学习心得(一)helloworld
言归正传,什么是SpringBoot呢,就是一个javaweb的开发框架,和SpringMVC类似,对比其他javaweb框架的好处,官方说是简化开发,约定大于配置, you can “just run”,能迅速的开发web应用,几行代码开发一个http接口。...原创 2021-07-09 14:24:41 · 1062 阅读 · 0 评论 -
HTML+CSS学习心得
1、初识HTMLHyperTextMarkupLanguage(超文本标记语言)< body >、< /body>等成对的标签,分别叫做开放标签和闭合标签,单独呈现的标签(空元素),如< hr/ >;意为用/来关闭空元素。html注释:< !–注释内容–>`<!--DOCTYPE:告诉浏览器使用什么规范(默认是html)--><!DOCTYPE html><!--语言 zh中文 en英文--><html原创 2021-07-08 22:40:50 · 781 阅读 · 0 评论 -
Vue学习心得
Vue:一款渐进式JavaScript框架,所谓渐进式就是逐步实现新特性的意思,如实现模块化开发、路由、状态管理等新特性。其特点是综合了Angular (模块化)和React (虚拟DOM)的优点;mvvm●Model:模型层,在这里表示JavaScript对象●View:视图层,在这里表示DOM (HTML操作的元素)●ViewModel:连接视图和数据的中间件,Vue.js就是MVVM中的ViewModel层的实现者在MVVM架构中,是不允许数据和视图直接通信的,只能通过ViewModel来通原创 2021-07-08 12:05:41 · 4363 阅读 · 0 评论