Java框架
java框架笔记
Coder_by
用技术提升美好事物发生的概率。
展开
-
Java中DAO层、Service层和Controller层的区别
DAO层:DAO层叫数据访问层,全称为data access object,属于一种比较底层,比较基础的操作,具体到对于某个表的增删改查,也就是说某个DAO一定是和数据库的某一张表一一对应的,其中封装了增删改查基本操作,建议DAO只做原子操作,增删改查。Service层:Service层叫服务层,被称为服务,粗略的理解就是对一个或多个DAO进行的再次封装,封装成一个服务,所以这里也就不会是一个原子操作了,需要事物控制。Controler层:Controler负责请求转发,接受页面过来的参数,传给S原创 2021-05-22 16:19:22 · 218 阅读 · 0 评论 -
MyBatis常见面试题总结
1、#{}和${}的区别是什么?答:${}是 Properties 文件中的变量占位符,它可以用于标签属性值和 sql 内部,属于静态文本替换,比如${driver}会被静态替换为com.mysql.jdbc.Driver。#{}是 sql 的参数占位符,Mybatis 会将 sql 中的#{}替换为?号,在 sql 执行前会使用 PreparedStatement 的参数设置方法,按序给 sql 的?号占位符设置参数值,比如 ps.setInt(0, parameterValue),#{item.转载 2020-07-08 23:40:07 · 148 阅读 · 0 评论 -
SpringMVC 工作原理详解
先来看一下什么是 MVC 模式MVC 是一种设计模式.MVC 的原理图如下:SpringMVC 简单介绍SpringMVC 框架是以请求为驱动,围绕 Servlet 设计,将请求发给控制器,然后通过模型对象,分派器来展示请求结果视图。其中核心类是 DispatcherServlet,它是一个 Servlet,顶层是实现的Servlet接口。SpringMVC 使用需要在 web.xml 中配置 DispatcherServlet 。并且需要配置 Spring 监听器ContextLoaderL转载 2020-07-08 23:33:35 · 185 阅读 · 0 评论 -
Spring事务总结
Spring 事务分析总结。1. 什么是事务?事务是逻辑上的一组操作,要么都执行,要么都不执行。大家应该都能背上面这句话了,下面我结合我们日常的真实开发来谈一谈。我们系统的每个业务方法可能包括了多个原子性的数据库操作,比如下面的 savePerson() 方法中就有两个原子性的数据库操作。这些原子性的数据库操作是有依赖的,它们要么都执行,要不就都不执行。 public void savePerson() { personDao.save(person); personDetailDao.s转载 2020-07-08 23:31:55 · 120 阅读 · 0 评论 -
Spring相关教程/资料
官网相关Spring官网、Spring系列主要项目、Spring官网指南、官方文档spring-framework-referenceSpring Framework 4.3.17.RELEASE API系统学习教程文档极客学院Spring WikiSpring W3Cschool教程 视频网易云课堂——58集精通java教程Spring框架开发面试必备知识点SpringAOP,IOC实现原理AOP实现原理、动态代理和静态代理、Spring IOC的初始化过程、IOC原理转载 2020-07-08 23:28:10 · 147 阅读 · 0 评论 -
Spring中 Bean 的作用域与生命周期
前言一 bean的作用域1. singleton——唯一 bean 实例2. prototype——每次请求都会创建一个新的 bean 实例3. request——每一次HTTP请求都会产生一个新的bean,该bean仅在当前HTTP request内有效4. session——每一次HTTP请求都会产生一个新的 bean,该bean仅在当前 HTTP session 内有效5. globalSession二 bean的生命周期initialization 和 destroy..原创 2020-07-08 23:20:44 · 2758 阅读 · 0 评论 -
IOC & AOP 详解
这篇文章会从下面从以下几个问题展开对 IoC & AOP 的解释什么是 IoC?IoC 解决了什么问题?IoC 和 DI 的区别?什么是 AOP?AOP 解决了什么问题?AOP 为什么叫做切面编程?首先声明:IoC & AOP 不是 Spring 提出来的,它们在 Spring 之前其实已经存在了,只不过当时更加偏向于理论。Spring 在技术层次将这两个思想进行了很好的实现。什么是 IoCIoC (Inversion of control )控制反转/反转控制。它是一转载 2020-07-08 23:17:22 · 4790 阅读 · 4 评论 -
Spring中用到的设计模式
控制反转(IoC)和依赖注入(DI)工厂设计模式单例设计模式代理设计模式代理模式在 AOP 中的应用Spring AOP 和 AspectJ AOP 有什么区别?模板方法观察者模式Spring 事件驱动模型中的三种角色事件角色事件监听者角色事件发布者角色Spring 的事件流程总结适配器模式spring AOP中的适配器模式spring MVC中的适配器模式装饰者模式总结参考JDK 中用到了那些设计模式?Spring 中用到了那些设计模式..转载 2020-07-08 13:05:55 · 167 阅读 · 0 评论 -
Spring常用注解(annotations)总结
文章目录文章目录0.前言1. @SpringBootApplication2. Spring Bean 相关2.1. @Autowired2.2. Component,@Repository,@Service, @Controller2.3. @RestController2.4. @Scope2.5. Configuration3. 处理常见的 HTTP 请求类型3.1. GET 请求3.2. POST 请求3.3. PUT 请求3.4. DELETE 请求3.5转载 2020-07-08 12:55:28 · 635 阅读 · 0 评论 -
Spring Boot入门
什么是 Spring BootSpring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。用我的话来理解,就是 Spring Boot 其实不是什么新的框架,它默认配置了很多框架的使用方式,就像 Maven 整合了所有的 Jar 包,Spring Boot 整合了很多框架。使用 Spring Boot 有什么好处其实就是简单、快速、方便!平时如果我们需要搭建原创 2020-07-06 12:57:38 · 98 阅读 · 0 评论 -
Spring笔记
Spring框架的七大模块Spring Core:框架的最基础部分,提供 IoC 容器,对 bean 进行管理。Spring Context:继承BeanFactory,提供上下文信息,扩展出JNDI、EJB、电子邮件、国际化等功能。Spring DAO:提供了JDBC的抽象层,还提供了声明性事务管理方法。Spring ORM:提供了JPA、JDO、Hibernate、MyBatis 等ORM映射层.Spring AOP:集成了所有AOP功能Spring Web:提供了基础的 Web 开发的上原创 2020-06-23 16:51:17 · 194 阅读 · 0 评论 -
Mybatis笔记
Mybatis简介Mybatis 最初配置信息是基于 XML ,映射语句(SQL)也是定义在 XML 中的。而到了 MyBatis 3提供了新的基于注解的配置。mybatis提供的注解有很多,大致可以分为以下几类:增删改查:@Insert、@Update、@Delete、@Select、@MapKey、@Options、@SelelctKey、@Param、@InsertProvider、@UpdateProvider、@DeleteProvider、@SelectProvider结果集映射:原创 2020-06-23 16:49:05 · 513 阅读 · 0 评论 -
FreeMarker常见用法教程
一、认识FreeMarkerFreeMarker是一款模板引擎:一种基于模板的、用来生成输出文本的通用工具。类似模板引擎还有Velocity,Common Template等。对于java web开发来说,使用FreeMarker模板,可以将java代码从页面中分离出来。开发人员只需关注业务逻辑代码,而由页面设计人员去设计显示效果,两类人员各司其职,发挥其擅长的一面。FreeMarker注释:类似HTML的注释,用<#--和-->来分隔的。任何介于这两个分隔符(包含分隔符本身)之间的原创 2020-06-19 13:13:39 · 1308 阅读 · 0 评论 -
FreeMarker使用说明
这是一份经过个人理解的FreeMarker使用说明。 原文地址:在线手册 FreeMarker是什么呢?先输入数据,再用.ftl文件搭好架子,再用工具把这俩翻译成静态html页面。初步介绍这是一段网页代码:<html><head> <title>Welcome!</title></head><body> <h1>Welcome John Doe!</h1> <..原创 2020-06-19 12:54:00 · 428 阅读 · 0 评论 -
Java 前后端分离的人力资源管理系统笔记
本文适合刚学习完 Java 语言基础的人群,跟着本文可了解和运行项目,本示例是在 Windows 操作系统下演示。基于 Java 语言的人力资源管理开源项目——微人事微人事是一个前后端分离的人力资源管理系统,项目采用 SpringBoot + Vue 架构。...原创 2020-06-15 09:22:26 · 1114 阅读 · 1 评论 -
Spring Boot 框架学习笔记
Spring Boot 整合 NoSQL1.Spring Boot 操作 Redis,三种方案全解析!2.Spring Boot 一个依赖搞定 session 共享3.Nginx 极简入门教程!4.Linux 上安装 MongoDB原创 2020-06-04 19:34:32 · 132 阅读 · 0 评论 -
vhr人力资源管理项目
一,vhr项目宏观分析目的:实现机关和事业单位的人事管理信息系统。软件使用的对象:面向机关和事业单位内人事信息管理人员和在职开发人员。【架构选型】vhr面向的群体范围并不大,并非属于互联网应用,所以市面上鼓吹的高并发,高性能对于这个项目来说并不适用。...原创 2020-06-14 22:46:29 · 3017 阅读 · 2 评论 -
Spring boot基础配置2
1.类型安全属性注入2.YAML配置YAML 配置(*.yml\*.yaml)与 properties1. YAML 配置是有序的,properties 配置是无序的2. 自定义的 YAML 目前暂时不支持使用注解直接注入到 Spring Boot 项目中在Spring Cloud里用的多3.profile配置多个配置文件如dev版本、prod版本(测试、使用版本不同)在默认配置文件加一句spring.profile.active=dev就可以切换...原创 2020-05-19 14:31:19 · 132 阅读 · 0 评论 -
Spring boot基础配置
1.1.Banner配置在线制作banner的网站:http://patorjk.com/software/taag/只需要将banner.txt文件放到resources下就OK了,在点击启动就可以看到自定义的banner。注释掉banner的方法:SpringApplicationBuilder builder=new SpringApplicationBuilder(CommunityApplication.class);//类名。classSpringAppli.原创 2020-05-19 10:39:57 · 102 阅读 · 0 评论 -
SpringMVC中的RestFul风格理解
概念:RESTful架构:是一种设计的风格,并不是标准,只是提供了一组设计原则和约束条件,也是目前比较流行的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,所以正得到越来越多网站的采用。1.他会对url进行规范: a)非REST风格的url:localhost:8080/springmvc?userName=aa&password=bb; b)RES...原创 2020-04-30 14:56:08 · 425 阅读 · 0 评论 -
RESTful 架构风格概述
在移动互联网的大潮下,随着docker等技术的兴起,『微服务』的概念也越来越被大家接受并应用于实践,日益增多的web service逐渐统一于RESTful 架构风格,如果开发者对RESTful 架构风格不甚了解,则开发出的所谓RESTful API总会貌合神离,不够规范。本文是我对RESTful 架构风格的一些理解,和大家分享一下,如果有问题,欢迎讨论。Outline1. RES...原创 2020-04-30 15:25:05 · 151 阅读 · 0 评论 -
《深入浅出MyBatis技术原理与实战》
第一章 mybatis 简介JDBC 是一种桥接模式。hibernate vs mybatishibernate 提供的是一种全表映射的模式,写 HQL 语言,hbm.xml 文件制定映射规则,有多少个实体类,对应有多少个表(不算那种连接表),就需要写多少个 hbm.xml 文件,hibernate.cfg.xml 文件是配置文件;还提供级联、缓存、映射、一对多功能。缺点:不能有...原创 2020-04-18 17:01:14 · 242 阅读 · 0 评论 -
前后端分离博客项目
文章总体分为2大部分,Java后端接口和vue前端页面.先看效果:Java后端接口开发1、前言从零开始搭建一个项目骨架,最好选择合适,熟悉的技术,并且在未来易拓展,适合微服务化体系等。所以一般以Springboot作为我们的框架基础,这是离不开的了。然后数据层,我们常用的是Mybatis,易上手,方便维护。但是单表操作比较困难,特别是添加字段或减少字段的时候,比较繁琐,所以这里我推荐使用MybatisPlus(mp.baomidou.com/),为简化开发而生,只…CRUD...原创 2020-06-17 18:00:00 · 1504 阅读 · 4 评论 -
axios
目录一、安装二、例子三、axios的API四、请求的配置(request config)五、请求返回的内容六、默认配置七、拦截器八、错误处理九、取消一、安装1、 利用npm安装npm install axios --save2、 利用bower安装bower install axios --save3、 直接利用cdn引入<script src="https://unpkg.com/axios/dist/axios.min.js"></scr原创 2020-06-17 16:41:35 · 248 阅读 · 0 评论 -
shiro 学习笔记
目录一:基础概念什么是权限管理用户身份认证授权权限模型访问控制权限管理解决方案二:shrioshiro架构subjectSecurityManagerAuthenticatorAuthorizerReamlSessionManagerSessionDAOCacheManagerCryptography三、入门程序认证执行流程常见的异常四,自定义RealmShiro提供的Realm自定义Realm实现身份认证*原创 2020-06-17 15:05:35 · 298 阅读 · 0 评论 -
MyBatis-Plus 笔记
目录一、MyBatis-Plus1、简介2、使用 SpringBoot 快速使用 MyBatis-Plus二、Mybatis-Plus 常用操作1、配置日志2、简单认识一下常用注解3、代码生成器4、自动填充数据功能5、逻辑删除6、分页插件的使用7、乐观锁的实现三、Mybatis-Plus CRUD 操作简单了解一下1、Mapper 接口方法(CRUD)简单了解一下2、Service 接口方法(CRUD)简单了解一下3、条件构造器(Wrapper,定原创 2020-06-17 14:44:13 · 4329 阅读 · 25 评论 -
RabbitMQ的启动和停止命令
可视化界面启动运行命令行窗口cmd输入命令rabbitmq-plugins enable rabbitmq_management,这样就可以添加可视化插件了。这样就添加了rabbitmq界面,只要启动rabbitmq,然后在浏览器输入 http://127.0.0.1:15672/ 就可以访问了rabbitmq启动方式有2种1、以应用方式启动rabbitmq-server-detached后台启动Rabbitmq-server直接启动,如果你关闭窗口或者需要在改窗口使用其...原创 2020-06-07 10:13:51 · 35804 阅读 · 1 评论 -
项目流程
git提交:dirgit initgit add .git commit -m "init repo"git statusdir .gitgit remote add origin git@github.com:yanbingzn/community.gitgit push -u origin mastergit管理代码的时候git add .git commit --amend --no-edit(追加上去)git push另外自学ssh..原创 2020-05-13 22:59:19 · 93 阅读 · 0 评论 -
Java SE、Java EE和Java ME三者的区别
1. Java SE(Java Platform,Standard Edition)。Java SE 以前称为 J2SE。它允许开发和部署在桌面、服务器、嵌入式环境和实时环境中使用的 Java 应用程序。Java SE 包含了支持 Java Web 服务开发的类,并为 Java Platform,Enterprise Edition(Java EE)提供基础。2. Java EE(Java P...原创 2020-04-28 09:54:54 · 205 阅读 · 0 评论 -
JavaBean入门简单使用
一、JavaBean简介JavaBean是使用Java语言开发的一个可重用的组件,在JSP的开发中可以使用JavaBean减少重复代码,使整个JSP代码的开发更简洁。JSP搭配JavaBean来使用,有以下的优点:1.可将HTML和Java代码分离,这主要是为了日后维护的方便。如果把所有的程序代码(HTML和Java)写到JSP页面中,会使整个程序代码又多又复杂,造成日后维护上的困难。...原创 2020-04-28 09:47:29 · 418 阅读 · 0 评论 -
War包和Jar包的区别
做Java开发,jar包和war包接触的挺多的,有必要对它们做一个深入的了解,总结整理如下: Jar文件(扩展名为. Jar,Java Application Archive)包含Java类的普通库、资源(resources)、辅助文件(auxiliary files)等 War文件(扩展名为.War,Web Application Archive)包含全部Web应用程序。在这...原创 2020-04-28 09:30:22 · 556 阅读 · 0 评论 -
Maven 三种archetype(原型)
新建Maven project项目时,需要选择archetype。那么,什么是archetype?archetype的意思就是模板原型的意思,原型将帮助作者为用户创建Maven项目模板,并为用户提供了手段,产生的这些项目模板参数化的版本。建立Maven项目时,网上建议的分别是1、cocoon-22-archetype-webapp2、maven-archetype-qu...转载 2020-04-28 08:53:03 · 1047 阅读 · 0 评论 -
spring基础知识
GroupID 是项目组织唯一的标识符,实际对应JAVA的包的结构,是main目录里java的目录结构。ArtifactID是项目的唯一的标识符,实际对应项目的名称,就是项目根目录的名称。-----------------1 基础知识必备----------------------------<groupId>com.yucong.commonmaven</grou...原创 2020-04-27 21:13:27 · 116 阅读 · 0 评论 -
GET和POST两种基本请求方法的区别
GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。标准答案: GET在浏览器回退时是无害的,而POST会再次提交请求。 GET产生的URL地址可以被Bookmark,而POST不可以。 GET请求会被浏览器主动cache...原创 2020-04-27 09:21:12 · 142 阅读 · 1 评论 -
IDEA快速实现接口、查找接口的实现、getSet方法快速生成等等常用快捷键
IDEA查找接口的实现类: ctrl + alt +B (这快捷键。不想说啥。相当于eclipse:ctrl +T)IDEA快速实现接口: Alt + Shift + P (这个很常用了吧,基本上一实现接口就得用)Get/Set方法快捷键:Alt + Insert自动补全返回值类型的快捷键:Ctrl + Alt+ V自动显示错误决绝方案快捷键:Alt+Enter (注意事项,如下图...原创 2020-04-27 08:52:20 · 1168 阅读 · 0 评论 -
Java DAO 模式入门
DAO 模式DAO (DataAccessobjects 数据存取对象)是指位于业务逻辑和持久化数据之间实现对持久化数据的访问。通俗来讲,就是将数据库操作都封装起来。对外提供相应的接口在面向对象设计过程中,有一些"套路”用于解决特定问题称为模式。DAO 模式提供了访问关系型数据库系统所需操作的接口,将数据访问和业务逻辑分离对上层提供面向对象的数据访问接口。从以上 DAO 模式使...原创 2020-04-27 08:46:22 · 226 阅读 · 0 评论