2023-01-08 一、Maven 1.使用“Maven”的原因 ①获取第三方jar包 可以统一在一个地方下载资源jar包(位置在“阿里云的镜像服务器”) ②添加第三方jar包 jar包统一存储Maven本地仓库,使用坐标方式将jar包从仓库引入到项目中 ③解决jar包之间的依赖关系 ④处理jar包之间的冲突 ⑤将项目拆分成多个工程模块 ⑥实现项目的分布式部署 2.Maven的含义 Maven是一款自动化构建工具,专注服务于java平台的项目构建和依赖管理。 项目构建的步骤分为7个步骤: 清理(删除以前的编译结果,为重新编译做好准备) 编译(将java源程序编译为字节码文件) 测试(针对项目...

  KxqBkJkdcmJp   2023年11月01日   46   0   0 Java

2023-01-08 一、Maven的基本配置 (1)maven配置文件位置 maven根目录/conf/settings.xml ①设置本地仓库 默认的本地仓库是在“C:\Users\Lenovo\.m2\repository”中,第一次安装maven后,一般找不到“.m”文件夹的。可以:以管理员身份运行cmd并输入以下命令: mvnhelp:system 打开“maven根目录/conf/settings.xml”,在第55行设置本地仓库的位置 <localRepository>D:\develop\Maven\apache-maven-3.6.3\LocalReposi...

  KxqBkJkdcmJp   2023年11月01日   37   0   0 Java

2023-01-08 一、在IDEA中创建Maven工程之HelloWord (1)新建一个Maven工程    最后点击“finish”,完成项目创建 (2)在创建的项目下,选中“maven_demo”,右击新建“Module”,选中“Maven”,点击“next”,之后设置模块名  之后点击“finish”,OK。 (3)在“maven_helloworld”下的“src”下的“main”下的“java”文件夹下创建“com.hh.Hello”类  在创建之前,首先将java文件夹设置为“SourcesRoot”  将“maven_h...

  KxqBkJkdcmJp   2023年11月01日   45   0   0 Java

2023-01-08 一、Maven的核心概念 1、仓库 (1)仓库的分类 ①本地仓库:为当前计算机提供maven服务 ②远程仓库:为其他计算机提供maven服务 a.私服:架设在当前局域网环境下,为当前局域网范围内的所有Maven工程服务 b.中央仓库:架设在Internet上,为全世界所有Maven工程服务 c.中央仓库的镜像:架设在各大洲,为中央仓库分担流量。减轻中央仓库的压力,同时更快的响应用户请求 (2)仓库中包含的文件 ①maven的插件 ②第三方框架或工具的jar包 ③自己研发的项目或模块 二、maven的坐标 (1)坐标由g-a-v组成 ①<groupId>:公司或...

  KxqBkJkdcmJp   2023年11月01日   55   0   0 Java

2023-01-09  一、在IDEA中创建Maven版的web工程 (1)步骤: ①创建一个maven模块,命名为“maven_web_end”,之后需要创建web工程的目录。在“maven_web_end.src.main”下创建“webapp”文件夹(命名必须为webapp,否则识别不了);在“webapp”文件夹下创建“WEB_INF”文件夹;在“WEB-INF”文件夹下创建“web.xml” ②在“web.xml”中添加代码 <?xmlversion="1.0"encoding="UTF-8"?> <web-appxmlns="http://xmlns....

  KxqBkJkdcmJp   2023年11月01日   98   0   0 Java

2023-01-09 一、Mybatis核心配置文件概述及根标签 1、核心配置文件的概述(即“mybatis-config.xml”) MyBatis的配置文件包含了会深深影响MyBatis行为的设置和属性信息。 2、标签 (1)configuration(配置) (2)properties(属性) 作用:定义或引入外部属性文件 在“day02_mybatis.src.main.resources”文件夹下创建“数据库的连接文件”,命名为“db.properties” ①db.properties里面的内容 里面存放的数据格式为key=value db.driver=com.mysql.cj...

  KxqBkJkdcmJp   2023年11月01日   49   0   0 Java

2023-01-09 一、Mybatis映射文件 1、映射文件根标签 mapping标签: 该标签中的namespace要求与接口的全类名一致 2、映射文件子标签 (1)cache(该命名空间的缓冲配置) (2)cache-ref(引用其他命名空间的缓存配置) (3)resultMap(描述如何从数据库结果集中加载对象,是最复杂也是最强大的元素) 注意:resultType解决不了的问题,交给resultMap(一般是多表查询)。 (4)sql(可被其他语句引用的可重用语句块) (5)insert(映射插入语句) (6)update(映射更新语句) (7)delete(映射删除语句) (8)s...

  KxqBkJkdcmJp   2023年11月01日   41   0   0 Java

2023-01-10 一、Mybatis中获取主键自增数据 要获取自增数据时,需要在映射文件中的“<insert>”中添加两个属性,例如获取自增的id ①EmployeeMapper.xml中的<mapper>标签内部 <insertid="insertEmployee"useGeneratedKeys="true"keyProperty="id"> INSERTINTO tbl_employee(last_name,email,salary) VALUES ({lastName},{email},{salary}) </insert> ②之...

  KxqBkJkdcmJp   2023年11月01日   55   0   0 Java

2023-01-10  一、MyBatis自动映射与自定义映射 1、自动映射: 在映射文件中使用的是“resultType”。指的是自动将数据库中表的字段与类中的属性进行关联映射。 2、自定义映射: (1)在映射文件中使用的是“resultMap”。一般是自动映射解决不了的问题,就使用自定义映射。 有“多表连接查询,需要返回多张表的结果集”、以及“单表查询时,不支持驼峰式自动映射(这时一般使用别名)” 例如:在映射文件中的实例代码,之后在<select>中设置为“resultMap” <resultMapid="empAndDeptResultMap"type="...

  KxqBkJkdcmJp   2023年11月01日   121   0   0 Java

2023-01-12 一、Mybatis动态SQL 即将SQL动态化 同时Mybatis的动态SQL支持OFNL表达式,OGNL(ObjectGraphNavigationLanguage)对象图导航语言。 1、先搭建环境 (1)创建一个“maven”模块,命名为“day04_mybatis” (2)在“day04_mybatis”中的“pom.xml”中的<project>标签内部添加依赖,即添加jar包 <dependencies> <!-https://mvnrepository.com/artifact/mysql/mysql-connector-jav...

  KxqBkJkdcmJp   2023年11月01日   49   0   0 Java

2023-01-12 一、Mybatis中缓存机制 1、一级缓存 (1)概述:一级缓存(即本地缓存或SqlSession级别缓存) (2)特点: ①一级缓存默认开启 ②不能关闭 ③可以清空 (3)缓存原理 ①当第一次获取数据时,需要先从数据库中加载数据,将数据缓冲到Mybatis一级缓存中(缓存底层实现原理是Map,key:hashCode+查询的SqlId+编写的sql查询语句+参数) ②以后再次获取数据时,先从一级缓存中获取,如未获取到数据,再从数据库中获取数据 (4)一级缓存五种失效情况 ①不同的SqlSession对应不同的一级缓存(例如:将第一次查询的sqlSession关闭了,之后...

  KxqBkJkdcmJp   2023年11月01日   57   0   0 Java

2023-01-12 一、逆向工程 1、逆向工程 数据库中表影响程序中代码(表影响java对象)。 MyBatisGenerator:简称MGB,是一个专门为MyBatis框架使用定制的代码生成器,可以快速的根据表生成对应的映射文件,接口,以及bean类。 2、正向工程 应用程序中代码影响数据库表中数据(java对象影响表) 二、MGB简介 (1)MyBatisGenerator:即MBG (2)MBG是一个专门为MyBatis框架使用者定制的代码生成器 (3)MBG可以快速的根据表生成对应的映射文件、接口、以及bean类 (4)只可以生成单表CRUD,但是表连接、存储过程等这些复杂sql的定...

  KxqBkJkdcmJp   2023年11月01日   52   0   0 Java

2023-01-13 一、Mybatis分页插件 1、使用分页插件的原因 (1)提高用户体验度 (2)降低服务器端压力 2、设计Page类 设计原则:当前页面/总页数。Eg:25/40 (1)pageNum:当前页面 (2)pages:总页数(总页数=总数据数量/每页显示数据数量) (3)total:总数据数量 (4)pageSize:每页显示数据数量 (5)List<T>:当前页显示数据集合 3、PageHelper (1)概述:PageHelper是Mybatis中非常方便的第三方分页插件。 (2)官方文档: https://github.com/pagehelper/Myb...

  KxqBkJkdcmJp   2023年11月01日   42   0   0 Java

2023-01-13 一、Spring 1、Spring简介 (1)Spring是一个为简化企业级开发而生的开源框架。 (2)Spring是一个IOC(DI)和AOP容器框架。 IOC:InversionofContriol(控制反转,即将对象的控制权交给Spring) AOP:Aspect-OrientedProgramming,面向切面编程 DI:DependencyInjection(依赖注入) (3)官方文档: http://www.spring.io 2、搭建Spring框架步骤 (1)导入jar包 jar包可以在maven中查找 <!-https://mvnreposi...

  KxqBkJkdcmJp   2023年11月01日   56   0   0 Java

2023-01-14 一、Spring底层IOC实现 1、IOC:将对象的控制器反转给Spring 2、BeanFactory与ApplicationContext (1)BeanFactory:IOC容器的基本实现,是Spring内部的使用接口,是面向Spring本身的,不是提供给开发人员使用的。 (2)ApplicaitonContext:BeanFactory的子接口,提供了更多高级特性。面向Spring的使用者,几乎所有场合都使用ApplicaitonContext而不是BeanFactory。 二、Spring依赖注入数值问题 1、字面量数值 (1)数据类型:基本数据类型及包装类、S...

  KxqBkJkdcmJp   2023年11月01日   37   0   0 Java

2023-01-17 一、Spring管理druid步骤  (1)导入jar包 <!-https://mvnrepository.com/artifact/com.alibaba/druid--> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.0</version> </dependency> <!-https://mvnrepositor...

  KxqBkJkdcmJp   2023年11月01日   58   0   0 Java

2023-01-17 一、Spring中的注解  1、使用注解的原因 (1)使用注解将对象装配到IOC容器中 (2)使用注解管理对象之间依赖关系(自动装配) 2、Spring中装配对象的注解 (1)@Component 标识一个受SpringIOC容器管理的普通组件 (2)@Repository 标识一个受SpringIOC容器管理的持久化层组件 (3)@Service 标识一个受SpringIOC容器的业务逻辑层组件 (4)@Controller 标识一个受SpringIOC容器管理的表述层控制器组件 (5)注解设置的位置 类的上方标识 (6)原则 约束>配置(注解>X...

  KxqBkJkdcmJp   2023年11月01日   47   0   0 Java

2023-01-18 一、Spring中组件扫描 1、默认使用的情况 <context:component-scanbase-package="com.hh"></context:component-scan> 2、包含扫描 注:使用包含扫描之前,必须设置use-default-filters="false"(关闭当前包及其子包的扫描) type类型: ①annotation:设置被扫描注解的全类名 ②assignable:设置被扫描实现类的全类名 <context:component-scanbase-package="com.hh"use-default...

  KxqBkJkdcmJp   2023年11月01日   66   0   0 Java

2023-01-18 一、AOP前奏-代理模式 1、手动实现动态代理环境搭建 (1)基于接口实现动态代理:JDK动态代理 (2)基于继承实现动态代理:Cglib、javassist动态代理 2、实现动态代理的步骤 (1)一个类:Proxy ①概述:Proxy代理类的基类(类似于Object) ②作用:newProxyInstance():创建代理对象 (2)一个接口:InvocationHandler ①概述:实现“动态织入效果”的关键接口 ②作用:invoke(),执行invoke()实现动态织入效果 3、手动实现动态代理关键步骤 注意:代理对象与实现类(目标对象)是“兄弟”关系,不能相互转...

  KxqBkJkdcmJp   2023年11月01日   39   0   0 Java

2023-01-18 一、Spring中的AOP 1、AspectJ (1)简介 Java社区里最完整最流行的AOP框架 在Spring2.0以上版本中,可以使用AspectJ注解或基于XML配置的AOP (2)使用AspectJ步骤 ①在spring核心包的基础上添加支持jar包 <!-https://mvnrepository.com/artifact/org.springframework/spring-aop--> <dependency> <groupId>org.springframework</groupId> <artif...

  KxqBkJkdcmJp   2023年11月01日   88   0   0 Java
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~