- 博客(53)
- 资源 (1)
- 收藏
- 关注
原创 UML 了解
UML 统一建模语言,是一种用于软件系统分析和设计的语言工具,用于帮助软件开发人员进行思考和记录思路的结果 UML 本身是一套符号的规定,这些符号用于描述软件模型中的各种元素和他们之间的关系 关系: Dependency:依赖(使用) Association:关联(一对一,多对一,一对多) Generalization:泛化(依赖关系的一种,继承) Realization:实现(依赖关系的一种,接口实现) Aggregation:聚合(关联关系的一种,通过 set 方法或定义相关
2022-03-09 10:32:02
295
原创 Spring Boot Web + Mybatis 员工管理单页面实现
Spring Boot 项目实践 导入静态资源 下载地址:https://www.kuangstudy.com/download 下的 SpringBoot 静态资源 实体类 //部门 @Data @AllArgsConstructor @NoArgsConstructor public class Department { private Integer id; private String departmentName; private List<Empl
2022-01-27 13:12:31
1713
原创 Spring Boot Web 开发准备
Spring Boot Web 开发 导入静态资源 定制首页 jsp 模板引擎 装配扩展 SpringMVC 增删改查 拦截器 国际化(中英文切换) 导入静态资源 在图中的五个路径下的静态资源都可以被读取 /**,classpath:/WEB-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/ classpath:/resources/ 下面的资源读取优先级最高,然后是 classpath:/
2022-01-27 13:08:17
583
原创 关于Spring Boot的配置文件
Spring Boot 配置文件 Spring Boot 使用一个全局的配置文件,配置文件名是固定的 application.properties 语法结构:key=value application.yaml/yml 语法结构:key:空格 value 配置文件的作用:修改 Spring Boot 自动配置的默认值 YAML YAML 是 “YAML Ain’t a Markup Language”( YAML 不是一种标记语言)的递归缩写。在开发的这种语言时,YAML 的意思
2022-01-24 15:24:04
602
原创 Spring Boot自动装配原理初步学习
Spring Boot 自动装配原理 pom.xml 父工程 pom < spring-boot-starter-parent < spring-boot-dependencies 核心依赖在父工程 spring-boot-dependencies 中 启动器 Spring Boot 的启动场景 Spring Boot 会将所有的功能场景都变成一个个的启动器 需要使用什么功能,添加对应的启动器即可 <dependency> <groupId>org.s
2022-01-23 19:37:47
298
原创 Spring Boot初步了解
Spring Boot 初步了解 Spring Spring 是为了解决企业级应用开发的复杂性而创建的,简化开发 Spring 是如何简化开发的 采用了一下四种关键策略 基于 POJO 的轻量级和最小入侵性编程 通过 IOC,依赖注入(DI)和面向接口实现松耦合 基于切面(AOP)和惯例进行声明式事务 通过切面和模板减少样式代码 Spring Boot 一个 javaweb 的开发框架,约定大于配置 Spring Boot 基于 Spring 开发,Spring Boot 本身并不提供
2022-01-23 15:27:23
373
原创 Spring拦截器初步了解
拦截器 拦截器是 AOP 思想的一个具体应用 拦截器只会拦截访问控制器的方法,如果访问的是 jsp/html/css/image/js 是不会进行拦截的 实现了 HandlerInterceptor 接口的类就可以用来自定义拦截器 编写一个拦截器-登录验证demo 要求在点击进入首页的时候验证是否以登录,为登录的话自动跳转到登录页面,以登录的话则放行 配置 web.xml 和 springmvc-servlet.xml 文件 <mvc:interceptors> <mv
2022-01-21 13:26:11
371
原创 Ajax初学
Ajax Asynchronous JavaScript and XML(异步的 JavaScript 和 XML) 是一种在无需重新加载整个网页的情况下,能够更新部分页面的技术 不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的 Web 应用程序的技术 Ajax 的核心是 XMLHttpRequest 对象(XHR)。XHR 为向服务器发送请求和解析服务器响应提供了接口。能够以异步方式从服务器获取新数据 我们使用 jQuery Ajax,本质就是 XMLHttpRequest,对他进行封装
2022-01-20 18:48:51
412
原创 SSM框架整合+书籍页面管理实现
SSM 整合 设计数据库 create database `ssmbuild`; use `ssmbuild`; create table if not exists `books`( `bookID` int not null auto_increment comment '图书id', `bookName` varchar(50) not null comment '书名', `bookCount` int not null comment '数量', `detail
2022-01-20 11:07:12
545
原创 SSM框架之SpringMVC学习笔记1
SpringMVC初步学习 MVC 模型(Model(Dao,Service)),视图(View(Jsp)),控制器(Controller(Servlet)) 是一种软件设计规范 将业务逻辑,数据,显示分离的方法来组织代码 不是设计模式,而是架构模式 是基于 Java 实现 MVC 的轻量级 Web 框架 导入依赖 <dependency> <groupId>junit</groupId> <artifactId>junit</a
2022-01-18 20:05:27
385
原创 SSM框架之Spring学习笔记3
Spring 与 Mybatis 结合 Mybatis 与 Spring 导入相关 jar 包 <dependencies> <!--测试包--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.2</version>
2022-01-14 14:14:13
297
原创 SSM框架之Spring学习笔记2
Spring Bean的自动装配 自动装配是 Spring 满足 bean 依赖的一种方式 Spring 会在上下文自动寻找,并自动给 bean 装配属性 Spring 的装配方式 在 xml 中显示的配置 及手动配置 <bean id="user" class="com.yqly.pojo.User" p:name="小王" p:age="17"/> 在 Java 中显示配置 隐式的自动装配 bean autowire:通过该字段定义自动装配方式 ByName 自动装配 自
2022-01-13 11:53:27
314
原创 SSM框架之Spring学习笔记1
Spring 初步认识 使现有的技术更加容易使用 Spring 官网:https://spring.io/projects/spring-framework 官方下载地址:https://repo.spring.io/ui/native/release/org/springframework/spring Spring 的优点 一个免费的开源框架 一个轻量级的,非入侵式(导入后不会对原来代码产生影响)的框架 控制反转(IOC),面向切面编程(AOP) 支持事务的处理 在 Spring
2022-01-10 17:19:26
277
1
原创 SSM框架之Mybatis学习笔记3
Mybatis 分页 Limit 分页 基于 sql 实现 接口 //分页 List<User> getUserListByLimit(Map<String,Integer> map); 实现 <select id="getUserListByLimit" parameterType="map" resultMap="UserMap"> select * from mybatis.user limit #{startindex},#{pagesize}
2022-01-07 10:57:58
614
原创 SSM框架之Mybatis学习笔记2
Mybatis 配置解析 核心配置文件 mybatis-config.xml Mybatis 的配置文件包含了会深深影响 Mybatis 行为的设置和属性信息 核心配置文件中的标签必须按照下图的顺序书写 属性(properties) 可以通过 properties 属性来实现引用配置文件 这些属性可以在外部进行配置,并可以进行动态替换。你既可以在典型的 Java 属性文件中配置这些属性,也可以在 properties 元素的子元素中设置 外部配置文件 driver=com.mysql.
2022-01-04 11:00:46
477
原创 SSM框架之Mybatis学习笔记1
Mybatis 是一款优秀的持久层框架 持久化:将程序的数据在持久状态和瞬时状态转化的过程 持久层:完成持久化工作的代码块 支持自定义 SQL、存储过程以及高级映射 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作 MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。 获取 Mybatis 的方法 Maven Github Mybatis 的优点
2022-01-04 09:35:52
256
原创 Servlet邮件发送
邮件发送 发送邮件:SMTP 协议 接收邮件:POP3 协议 需要准备 JavaMail API 和 Java Activation Framework mail.jar 和 activation.jar 要发送邮件,需要获得协议和支持(开启 POP3 和 SMTP 服务) 简单邮件发送 import com.sun.mail.util.MailSSLSocketFactory; import javax.mail.*; import javax.mail.internet.Inte
2021-12-22 18:13:53
643
原创 Servlet邮件发送
发送邮件:SMTP 协议 接收邮件:POP3 协议 需要准备 JavaMail API 和 Java Activation Framework mail.jar 和 activation.jar 要发送邮件,需要获得协议和支持(开启 POP3 和 SMTP 服务) 简单邮件发送 import com.sun.mail.util.MailSSLSocketFactory; import javax.mail.*; import javax.mail.internet.InternetAd..
2021-12-22 18:00:38
1585
原创 Servlet文件上传
为保证服务器安全,上传文件应该放在外界无法直接访问的目录下,比如放于 WEB-INF 目录下 为了防止文件覆盖的现象发生,要为上传文件产生一个唯一的文件名 在文件名后加时间戳,UUID 对文件名进行 md5 机密,位运算 要限制上传文件的最大量 可以限制上传文件的类型,在收到上传文件名时,判断后缀名是否合法 网络传输中的东西,都需要序列化 POJO,实体类,如果想要在多个电脑上运行,就需要把对象序列化了 implements Serializable(序列化的标记接口) 没有方法的接..
2021-12-21 17:44:28
258
原创 SMBMS超市订单管理系统问题总结
问题总结 关于首页不显示 userName 的问题 在标记位置加 req.getSession().setAttribute(“userName”,user.getUserName()); 在 session 中定义 username 并获得当前账号的用户名 import com.yqly.pojo.User; import com.yqly.service.user.UserServiceImpl; import com.yqly.util.Constants; import javax.se
2021-12-19 18:01:53
1242
原创 SMBMS超市订单管理系统具体实现4
订单管理页面实现 获取订单数量 编写 Dao 接口 //获取订单数目 public int getBillCount(Connection connection, String productName,int providerId,int isPayment) throws SQLException; 实现接口 //获取订单数量 @Override public int getBillCount(Connection connection, String productName,int pro
2021-12-19 17:59:00
196
原创 SMBMS超市订单管理系统具体实现3
供应商管理页面实现 获取供应商数量 编写 Dao 接口 //获得供应商总数 public int getProviderCount(Connection connection,String proCode,String proName) throws SQLException; 实现接口 //获得供应商总数 @Override public int getProviderCount(Connection connection, String proCode, String proName) t
2021-12-17 20:07:14
210
原创 SMBMS超市订单管理系统具体实现2
用户管理页面实现 获取用户数量 编写 Dao 接口 //查询用户总数 public int getUserCount(Connection connection,String userName,int userRole) throws SQLException; 实现接口 @Override public int getUserCount(Connection connection, String userName, int userRole) throws SQLException {
2021-12-13 17:47:56
526
原创 SMBMS超市订单管理系统具体实现1
登录,注销与修改密码功能实现 登录功能实现 编写前段页面 编写 Dao 层用户登录的接口 import com.yqly.pojo.User; import java.sql.Connection; public interface UserDao { //得到要登录的用户 public User getLoginUser(Connection connection,String userCode); } 编写接口实现类 import com.yqly.pojo.User;
2021-12-13 17:28:39
626
原创 SMBMS超市订单管理系统项目准备
SMBMS超市订单管理系统项目准备 模块图示 数据库分类 用户相关 订单相关 项目搭建准备 搭建一个 Maven web 项目 配置 Tomcat 测试项目是否能正常运行 导入项目中会用到的 jar 包 <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <versio
2021-12-13 17:24:00
932
原创 JavaWeb学习2
JavaWeb JavaBean 必须有一个无参构造 属性必须私有化 必须有对应的 get/set 方法 一般用来和数据库的字段做映射 ORM(对象关系映射) 表 ——> 类 字段 ——> 属性 行记录 ——> 对象 MVC 三层架构 模型视图控制器(Model + view + Controller) Model 业务处理:业务逻辑(Service) 数据持久层:CRUD(Dao) View 展示数据 提供连接发起 Servlet 请求(a,for
2021-12-06 16:07:29
141
原创 JavaWeb学习1
JavaWeb Servlet 开发动态 web 的一门技术 API 中提供的一个接口 编写一个类,实现接口 把开发好的 Java 类部署到 web 服务器上 HelloServlet Servelt 接口的实现类:HttpServlet,GenericServlet Java 和 resources 目录下的文件在 Tomcat 执行后都会被打包到同一路径下:target/servlet-02/WEB-INF/classes,这个路径又叫做 classpath 创建一个普通的 Ma
2021-12-05 18:01:51
214
原创 JavaWeb初步了解及工具配置
JavaWeb 基本概念 web 开发:网页开发 分为静态 web 和动态 web 在 Java 中动态 web 资源开发的技术统称为 JavaWeb 静态 web html,css 提供给所有人看的数据始终不会发生变化 缺点 页面无法动态更新,所有用户看到的都是同一个页面 无法和数据库交互(数据无法持久化,用户无法交互) 动态 web 提供给所有人看的数据会发生变化 技术栈:Servlet,JSP,ASP,PHP 页面展示的效果因人而异 缺点 加入服务器的动态 W
2021-11-30 18:15:18
1066
原创 MySQL数据库学习3
MySQL 补充 同时成功或同时失败 将一组 sql 放在同一个批次中 MySQL 是默认开启事务自动提交的,可以通过以下代码关闭 SET autocommit=0 -- 关闭 SET autocommit=1 -- 开启(默认的) 事务原则(ACID) 原子性(Atomicity) 一起成功,或一起失败,不能只发生其中一个动作 一致性(Consistency) 事务操作前和操作后的状态一致 持久性(Durability) 表示事务结束后的数据不随外
2021-11-29 16:49:14
810
原创 MySQL数据库学习2
MySQL数据管理 外键 外键为某个表中的一列,它包含另一个表的主键值,定义了两个表之间的关系 第一种方法 在创建表的时候增加约束 定义外键 key 给这个外键添加约束(执行引用) references 引用 CREATE TABLE `grade`( `gradeid` INT NOT NULL AUTO_INCREMENT COMMENT '排名', `name` VARCHAR(30) NOT NULL COMMENT '名字', PRIMARY KEY(`gradeid`) ) E
2021-11-28 13:14:38
222
原创 MySQL数据库学习1
初识 MySQL 数据库是所有软件体系中最核心的存在 数据库 数据库(DB:DataBase) 概念:数据仓库,软件,安装在操作系统之上,可以存储大量数据。数据500万以上需要优化 作用:存储,管理数据 数据库分类 关系型数据库(SQL) MySQL,Oracle,Sql Server,DB2,SQLlite 通过表和表之间,行和列之间的关系进行数据的存储 非关系型数据库(NoSQL) Redis,MongoDb 通过对象自身的属性来决定存储 DBMS(数据库管理系统) 数据库的管
2021-11-25 15:47:35
551
原创 js,jQuery初步了解
JavaScript JavaScript 的导入方式 不需要显示定义 script 的 type 属性,默认就是 javascript 内部导入 一般放在 head 标签或 body 标签底部 <script> alert("hello,world!"); </script> 外部导入 html 中: 链接式: <script src="JS01/js01.js"></script> JavaScript 中: alert
2021-11-24 16:51:15
1045
原创 CSS简单了解
CSS Cascading Style Sheet(层叠样式表) 美化网页 语法: 选择器{ 声明1; 声明2; …; } 优势: 内容和表现分离 网页结构表现统一,可以实现复用 样式十分丰富 利于 SEO,容易被搜索引擎收录 CSS 的导入方式 行内样式 在标签元素中,编写一个 style 属性,编写样式即可 <h1 style="color: red">大家好</h1> 内部样式 <style>
2021-11-22 20:47:37
172
原创 HTML简单认识
HTML Hyper Text Markup Language(超文本标记语言) 超文本包括:文字,图片,音频,视频,动画等 W3C World Wide Web Consortium(万维网联盟) Web 技术领域最具权威和具影响力的国际中立性技术标准机构 标准包括 结构化标准语言(HTML,XML) 表现标准语言(CSS) 行为标准(DOM,ECMAScript) 基本结构 , 等成对出现的标签,分别叫开放标签和闭合标签 单独出现的为自闭合标签 DOCTYPE:告诉浏览器我们要
2021-11-21 16:45:55
216
原创 JUC 并发编程简单了解
JUC 并发编程 涉及到的包 java.util.concurrent java.util.concurrent.atomic java.util.concurrent.locks java.util.function 并发编程的本质:充分利用 CPU 的资源 JUC 普通的线程代码 Thread Runnable 没有返回值,效率相比 Callable 相对较低 公司一般用 Callable 并发和并行 并发:一核 CPU 下,模拟出多条线程,多个线程操作同一个资
2021-11-19 18:53:04
408
原创 数组查找与排序
数组查找与排序 数组查找 根据数组元查找出该元素第一次在数组中出现的索引 基本查找 package Mxdx; public class Search { public static void main(String[] args) { int arr[]={100,20,40,51,16,2,4}; int index=Search(arr,16); System.out.println("该元素第一次在数组中出现的索引是:"+index)
2021-11-17 12:13:44
377
原创 JVM 初步学习
JVM 探究 JVM 的位置 在操作系统之上,可以看做是一个在操作系统上运行的软件,上面跑的都是 java 程序 JVM 的体系结构 栈用完系统会自动释放,所以不会存在垃圾 类加载器 虚拟机自带的加载器 启动类(根)加载器 BootClassLoader C 语言编写的,无法直接获取 所在位置:rt.jar 扩展类加载器 ExtClassLoader 所在位置:\jre\lib\ext 应用程序(系统类)加载器 AppClassLoader 双亲
2021-11-15 14:45:43
421
原创 注解与反射+部分内存分析和类的加载
注解和反射 注解 注解入门 Annotation 不是程序本身,但可以对程序做出解释 (这一点和注释 (comment) 没区别) 可以被其他程序读取 格式:@注解名,可以在注解名后加括号来添加一些参数值 内置注解 @Override 定义在 java.lang.Override 中,此注解只适用于修辞方法,表示一个方法声明打算重写超类中的另一个方法声明 @Deprecated 定义在 java.lang.Deprecated 中,此注解可以用于修饰方法,属性,类,表示不鼓励程序员使用这样的元素,
2021-11-12 15:27:23
427
原创 多线程详解
多线程详解 多条执行路径,主线程和子线程并行交替执行 线程简介 程序,进程,线程 程序:是指令和数据的有序集合,其本身没有任何运行的含义,是一个静态的概念 进程:程序的一次执行过程,动态概念,是系统资源分配的单位 线程:是独立执行的路径,一个进程中包含若干个线程,最少一个,不然没有存在的意义,线程是 CPU 调度和执行的单位 现在很多的多线程都是模拟出来的,真正的多线程指多个 CPU,即多核 模拟出的多线程,在同一时间点,CPU 只能执行一个代码,因为切换的很快,所以有同时执行的错觉 在程序
2021-11-12 11:32:47
604
原创 网络编程学习
网络编程 计算机网络 地理位置不同 多台计算机及其外部设备通过通信线路连接起来 在网络通信协议的管理和协调下 实现资源共享和信息传递 网络编程的目的 传播交流信息 数据交换 如何实现网络编程 通过端口连接准确定位网络上的一台主机,定位到计算机上的某个资源 数据传输 网络编程主要针对 TCP/IP,C/S 架构 网络通信的要素 通信双方的地址(可以定位到具体电脑的具体应用) IP 端口号 规则:网络通信的协议 TCP/IP参考模型,网络编程的重点在于传输层的TCP
2021-11-07 18:34:15
131
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅