自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 收藏
  • 关注

原创 java 七大原则

1 开闭原则 :对扩展开放,对修改关闭 在程序需要进行扩展的时候,不去修改原有的代码,而是扩展原有的代码,实现热拔插的效果2 但一职责原则 :不要存在要让类变更的多个原因 ,也就是每个类应实现单一原则,如若不行,就把类拆分!3里氏替换原则 : 任何基类可以出现的地方,子类也应可以出现里氏替换原则中,子类对父类的方法尽量不要重写和重载。因为父类代表了定义好的结构,通过这个规范的接口与外界交互...

2019-12-10 17:05:16 690

原创 MySQL数据库 约束和多表查询

第一节 数据完整性存储在数据库中的所有数据值均正确的状态。如果数据库中存储有不正确的数据值,则该数据库称为已丧失数据完整性。数据库中的数据是从外界输入的,而数据的输入由于种种原因,会发生输入无效或错误信息。保证输入的数据符合规定,成为了数据库系统,尤其是多用户的关系数据库系统首要关注的问题。数据完整性因此而提出。本章将讲述数据完整性的概念及其在SQL Server 中的实现方法。数据完整性(...

2019-11-28 15:02:09 284

原创 Redis

RedisSalvatore Sanfilippo 萨尔瓦托·桑菲利波--“Redis之父”Salvatore在负责一个 page view 记录的系统,接收多个网站js发送来的页面访问记录数据,并存储之后展示给用户,最大负载每秒数千条页面记录,当时Salvatore在仅有硬件资源上无法用现有的数据库达到希望的性能。所以催生了redis的雏形 – 一段C程序1. 概述基于内存存储的,...

2019-11-21 19:20:23 160

原创 Shiro(2)

六、自定义Realm存在的问题:目前所有的 用户、角色、权限数据都在ini文件中,不利于管理。​ 实际项目开发中这些信息,应该在数据库中。所以需要为这3类信息建表6.1 建表用户表,角色表,权限表create table t_user( id int primary key auto_increment, username ...

2019-11-18 16:29:56 209

原创 Shiro(1)

一、Shiro为什么要用shiro:1.项目中的密码是否可以明文存储?2.是否任意访客,无论是否登录都可以访问任何功能?3.项目中的各种功能操作,是否是所有用户都可以随意使用?综上,当项目中的某些功能被使用时,需要进行安全校验,进而保证整个系统的运行秩序。1.1 Shiro是什么• Apache Shiro 是 Java 的一个安全(权限)框架。 Shiro 可以轻松的完成:...

2019-11-18 13:50:51 125

原创 Git版本控制的使用

为什么需要版本控制?软件的开发过程中:开发完成一个版本1后,打包,部署。然后继续开发,定制新功能,增加新代码…某一天,需要再打包一个 版本1.此时项目中已经新增了很多代码,甚至而且还有好多新代码尚在开发测试中…开发过程中,完成了一个功能A。继续写其他功能,增加新代码…某一天,突然发现新功能的实现,就是一堆垃圾,完全不能使用,项目代码需要恢复到 刚写完功能A的状态…某一天,突然...

2019-11-13 11:00:25 222

原创 跨域问题及解决

Ajax跨域域:协议+IP+端口http://localhost:8989http://localhost:8080http://www.baidu.com:801.安全问题摘自互联网:为什么AJAX访问不能跨域呢?要讲清楚这个问题,首先要谈谈Cookie1.客户向A网站的服务器发送登录请求,并携带账号密码数据2.A网站的服务器校验账号密码正确后,返回响应并给本地添加了Co...

2019-11-12 13:57:33 160

原创 restful风格

1. Rest最佳场景Rest最佳实践,Json作为通信载体2. Rest应用场景如下3个场景中,主要讨论,在请求 Put Delete 时:如何正确请求 如何正确传参情景1:发送Post请求,中途转为Put Delete浏览器本身只支持 get 和 post 请求,作为客户端,使用Rest时,如果需要发送 put 和 delete 请求,则:...

2019-11-12 11:02:15 84

原创 SpringMVC---2

1. 上传(非重点)1.1 导入jar<dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.4</version></dependency>&l...

2019-11-11 13:51:20 99

原创 SpringMVC -辅线

1. 运行流程1.1 运行主流程DispatcherServlet#doService(){ //.... doDispatch();//主体流程 //....}DispatcherServlet#doDispatch(){ //.... //获取请求中指向的 Handler,返回 HandlerExecutionChain //HandlerExec...

2019-11-11 13:50:04 88

原创 SpringMVC

1. SpringMVCjava开源框架,Spring Framework的一个独立模块。MVC框架,在项目中开辟MVC层次架构对控制器中的功能 包装 简化 扩展践行工厂模式,功能架构在工厂之上MVC : Model View Controller​ 模型 视图 控制器模型:即业务模型,负责完成业务中的数...

2019-11-09 15:53:23 95

原创 Spring-Mybatis整合

一、Spring-Mybatis整合将Model层管理在工厂中,势必要将Service和DAO的对象纳入工厂,而Service和DAO中还依赖这Mybatis的相关封装功能,所以,只有将Mybatis的相关功能组件也纳入工厂,才可以让Service和DAO照常运作。需要纳入工厂的Mybatis的相关功能组件有:DataSource 负责管理数据库连接SqlSessionFaco...

2019-11-09 15:52:42 105

原创 spring -- AOP,静态代理,动态代理

AOP(面向切面编程)Spring-AOP 是对 AOP框架之一。其他比如还有AspectJAspect-Oriented-Programming(面向切面编程),一种编程思想。切面:Aspect,由切入点和额外功能(增强)组成。作用:提供了新的编程角度,不再只是考虑类、对象,而可以考虑切面。切面和目标形成 代理,解决项目业务中额外功 能冗余的问题。概念,切面,为什么a...

2019-11-08 13:49:59 227

原创 Spring详解---ioc

IDEA中lombook—插件的使用lombok`插件使用:1> 安装 settings> Plugins 搜索 lombok 安装2>在 settings > Build,Execution > Compiler > Annotation Processors中勾选 Enable annotation processing3>项目中导入依赖...

2019-11-07 15:15:09 117

原创 MyBatis-辅线-缓存 --1级缓存,二级缓存(与前边有重复)

复习:使用版本:3.4.51.简介MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录2....

2019-11-06 13:57:29 172

原创 Mybatis03-优化延迟加载和分页

第一节:性能优化1.1 延迟加载1.1.1 什么是延迟加载? resultMap中的association和collection标签具有延迟加载的功能。延迟加载的意思是说,在关联查询时,利用延迟加载,先加载主信息。需要关联信息时再去按需加载关联信息。这样会大大提高数据库性能,因为查询单表要比关联查询多张表速度要快。1.1.2 设置延迟加载? Mybatis默认是不开启延迟加载功能...

2019-11-06 10:52:39 185

原创 MyBatis-高级--动态sql--自动生成--注解开发 方式

第二节:动态sql(重点)通过mybatis提供的各种标签方法实现动态拼接sql,到达数据库执行时本质还是一条完整的sql语句。需求:根据性别和名字查询用户查询sql:SELECT id, username, birthday, sex, address FROM user WHERE sex = 1 AND username LIKE '%张%';2.1. If标签2.1.1. M...

2019-11-05 14:06:40 1079

原创 Mybatis02-高级应用-输入输出参数

第一节:输入参数和输出参数Mapper.xml映射文件中定义了操作数据库的sql,每个sql是一个statement,映射文件是mybatis的核心。1.1 环境准备第一步:创建项目添加依赖项目名称:day04_mybatis01依赖信息如下:<dependencies> <dependency> <groupId>my...

2019-11-05 14:06:02 102

原创 MyBatis两种开发方式和MyBatis的核心配置文件

MyBatis两种开发方式使用MyBatis开发Dao,通常有两种方式,即原始Dao开发方式和Mapper接口动态代理开发方式。推荐使用第二种。MyBatis核心API说明:(1)SqlSession的使用范围SqlSession中封装了对数据库的操作,如:查询、插入、更新、删除等。SqlSession通过SqlSessionFactory创建。SqlSessionFactory是通过...

2019-11-04 10:25:38 203

原创 MyBatis简单使用

第一节:对象关系映射(ORM)对象关系映射(Object Relational Mapping,简称ORM)是通过使用描述对象和数据库之间映射的元数据,将面向对象语言程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外一种形式。这也同时暗示着额外的执行开销;然而,如果ORM作为一种中间件实现,则会有很多机会做优化,而这些在手写的持久层并不存在。 更重要的是用于控制转换的元...

2019-11-04 08:40:06 520

原创 日志框架的基本使用

1.1常见日志框架1.1常见日志框架 在项目开发过程中,我们可以通过 debug 查找问题。而在线上环境我们查找问题只能通过打印日志的方式查找问题。因此对于一个项目而言,日志记录是一个非常重要的问题。因此,如何选择一个合适的日志记录框架也非常重要。 在Java开发中,目前常用的日志框架包括Log4j 1,Log4j 2,Commons Logging,Slf4j,Logback,Jul。这些...

2019-11-03 10:14:44 229

原创 Maven私服的搭建

第三节 私服​ 正式开发时,不同的项目组开发不同的工程。dao工程开发完毕,发布到私服。service从私服下载dao。​ 公司在自己的局域网内搭建自己的远程仓库服务器,称为私服,私服服务器即是公司内部的maven远程仓库,每个员工的电脑上安装maven软件并且连接私服服务器,员工将自己开发的项目打成jar并发布到私服服务器,其它项目组从私服服务器下载所依赖的构件(jar)。3.1搭建私服...

2019-11-03 09:54:30 77

原创 maven分模块构建项目

第二节 分模块构建项目将商城项目拆分为多个模块开发:父模块(工程)daoserviceweb2.1理解继承和聚合继承 开发中多个项目有共同的jar包依赖,可以采用继承方式简化各个项目的pom文件,在父类的pom文件中依赖共同拥有的jar。继承是为了消除重复,如果将dao、service、web分开创建独立的工程则每个工程的pom.xml文件中的内容存在重复,比如:设置编译版...

2019-10-31 07:59:12 108

原创 Maven传递依赖的问题

1.1 什么是传递依赖?当项目依赖一个jar包时,与这个jar包关联的其他jar包也会关联到当前项目,这种现象就是传递依赖。比如A项目依赖B项目,B又依赖C项目, 此时A中也包含了C的依赖。案例演示步骤1:创建Maven项目project01 project01的基本信息如下 groupId:com.qf.maven artifactId:project01 versio...

2019-10-30 08:06:06 513

原创 Maven的安装和idea配置

第一节 Maven简介1.1 简介 Maven:怎么读,【妹文,麦文】 Maven 翻译为"专家"、"内行",是 Apache 下的一个纯 Java 开发的开源项目。基于项目对象模型(缩写:POM,Project Object Model)概念,Maven利用一个中央仓库能管理一个项目的构建、报告和文档等步骤。 Maven 是一个项目管理工具,可以对 Java 项目进行构建、依赖管理。。...

2019-10-29 22:16:06 848

原创 JQuery的使用

第一节 jQuery概述1.1 jQuery简介jQuery是一个快速、简洁的JavaScript库,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“Write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML...

2019-10-28 17:01:40 362

原创 JSON基本使用

JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。1.1JSON(JavaScr...

2019-10-25 22:20:08 131

原创 AJAX基本使用

介绍:Ajax 是一种用于创建快速动态网页的技术。Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。有很多使用 AJAX 的应用程序案例:新浪微博、Google 地...

2019-10-25 22:19:13 100

转载 TCP/IP三次握手,四次挥手详解

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

2019-10-17 08:10:55 176

转载 redis

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

2019-10-17 07:59:31 107

原创 javaWEB一一过滤器和监听器

Web之过滤器和监听器1.2 如何编写过滤器1、编写java类实现Filter接口2、重写doFilter方法3、设置拦截的url入门案例:package com.qf.web.filter;import javax.servlet.*;import javax.servlet.annotation.WebFilter;import java.io.IOException;...

2019-10-14 18:55:38 126

原创 javaWEB 文件的上传和下载

第一节 文件上传1.1 文件上传三要素提供form表单,method必须是postform表单的enctype必须是multipart/form-data提供 input type=“file” 类型输入1.2 实现文件上传1.2.1 项目准备​ 导入: commons-fileupload.jar​ commons-io.jar1.2.2 编写上传页面&l...

2019-10-14 18:32:42 141

原创 java一一分页显示

分页概述分页是web应用程序非常重要的一个技术。数据库中的数据可能是成千上万的,不可能把这么多的数据一次显示在浏览器上面。一般根据每行数据在页面上所占的空间每页显示若干行,比如一般20行是一个比较理想的显示状态。分页实现思路对于海量的数据查询,需要多少就取多少,显然是最佳的解决方法,假如某个表中有200万条记录,第一页取前20条,第二页取21~40条记录。select * from 表名...

2019-09-22 08:48:25 427

原创 MVC三层架构

MVC简介MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。 [1-2]模型-视图-控制器(MVC)是Xerox PARC在二十世纪八十年代为编程语言Smalltalk-80发明...

2019-09-22 08:26:55 7927

原创 JSP,EL表达式,JSTL标签

Servlet的用途:1 接受浏览器的请求,获取数据2 转发、重定向3 负责调用业务层Servlet缺点:不适合展示数据1.1 JSP是什么全称: Java Server Pages,java服务器页面。和Servlet一样,是sun公司定义的一种动态网页开发技术。特点:基于html模版,可以在html模版嵌入java代码和jsp中的标签。 tomcat可以包含的资源: ...

2019-09-20 08:36:00 152

原创 JavaWeb 状态管理 Cookie,Session,ServletContext对象

第一节 状态管理-Cookie1.1 状态管理概述1.1.1 为什么需要状态管理 HTTP协议是无状态的,不能保存每次提交的信息,即当服务器返回与请求相对应的应答之后,这次事务的所有信息就丢掉了。   如果用户发来一个新的请求,服务器无法知道它是否与上次的请求有联系。   对于那些需要多次提交数据才能完成的Web操作,比如登录来说,就成问题了。1.1.2 什么是状态管理WEB应用中...

2019-09-09 19:57:23 136

原创 request和response

第一节 页面跳转作为后台开发人员,我们大多时候都在接收处理用户请求,给予用户响应,为了方便操作,服务器软件将请求和响应封装成了request和response,我们今天就讲解两个对象的操作!Java Web服务端控制页面跳转主要有两种:重定向和转发1.1 重定向重定向就是通过各种方法将网络请求重新定个方向转到其它位置。实现原理客户浏览器发送http请求----》web服务器接受后发送3...

2019-09-09 19:13:55 311

原创 Servlet的使用

第一节 Servlet概述1.1 什么是ServletServlet 是Java Server Applet的简称,称为小服务器程序,用Java编写的服务器端程序,主要功能交互式地浏览和修改数据,生成动态Web内容。Servlet运行于支持Java的应用服务器中。从实现上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。Ser...

2019-09-07 08:33:27 125

原创 Tomcat配置及创建Web项目

第一章 Web应用的演变1.1 C/S模式和B/S模式C/S:Client/Server或客户端/服务器模式C/S的优点是能充分发挥客户端PC的处理能力缺点是对用户的电脑配置要求较高,更新升级比较麻烦常见的CS程序:QQ、微信、播放器等B/S:Browser/Server或浏览器/服务器模式优点是用户使用简单,只要有浏览器和网络即可常见的程序:淘宝网、京东网等1.2 W...

2019-09-02 21:44:10 469

原创 DAB模式,连接池和DBUtils应用

第一节 工具类封装、DAO模式和自定义连接池1.1 工具类封装案例实现:实现emp表的查询、添加、删除、修改1.1.1 封装DbUtils由于多个地方都需要使用数据库连接和释放,所以把功能封装到工具类中DbUtils四个功能:1注册驱动 2 获取连接 3 释放资源 4 执行命令 【5 执行查询】public class DbUtils { private static ...

2019-09-02 20:58:05 445

空空如也

空空如也

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

TA关注的人

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