- 博客(51)
- 收藏
- 关注
原创 Java语法基础知识梳理
Java语法基础Java:强类型(强制约束)语言语法:开发语言中的法律约束 在写代码时必须遵守的约束// 单行注释 快捷键 ctrl+//** 多行注释 /*+回车*//*** 文档化注释 /**+回车*/System.out.println("1+2"); //所见即所得 1+2System.out.println(1+2); //计算内容 3System.out.println() //输出并换行System.out.p
2020-12-01 14:57:26
167
原创 java的基本认知
初识javajava 之父——James Gosling詹姆斯·高斯林java的前身叫做OAK语言(嵌入式编程)java出名是因为互联网的发展java出身就不能控制硬件(曾经是弱点,现在是特点)网络中的病毒出现JDK中有一个虚拟机的存在(JVM)——像箱子一样的东西,与外界隔离(让java不会感染病毒)java自身并不存在病的传染性JDK1.5 (tiger)(java的里程碑)时间:2004.9.301.5开始,官方做了二个大的变化把J2SE修改为JavaSE把版本号,从
2020-11-13 08:34:27
388
原创 java的一些发展历史和特点
初识javajava 之父——James Gosling詹姆斯·高斯林java的前身叫做OAK语言(嵌入式编程)java出名是因为互联网的发展java出身就不能控制硬件(曾经是弱点,现在是特点)网络中的病毒出现JDK中有一个虚拟机的存在(JVM)——像箱子一样的东西,与外界隔离(让java不会感染病毒)java自身并不存在病的传染性JDK1.5 (tiger)(java的里程碑)时间:2004.9.30JDK1.8(spider)(1.8之后收费)时间2014.3.18jav
2020-10-22 13:05:05
335
原创 线索二叉树的后序遍历的代码实现
线索二叉树的后序遍历因为我们需要在后序遍历时得到结点的父节点,所以需要一个新的指针指向父节点private HeroNode parent;/** * 节点HeroNode */class HeroNode{ private int no; private String name; /** * left:默认为空 * right:默认为空 */ private HeroNode left; private HeroNode r
2020-10-10 16:42:13
927
1
原创 SpringMVC项目的文件上传与下载
SpringMVC项目的文件上传与下载1、新建一个Maven项目,并导入依赖 <dependencies> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.3&l
2020-07-02 20:50:35
99
原创 ssm整合框架的完整结构及代码
ssm整合框架环境IDEA、mysql5.7、Tomcat9.0。1.建立一个数据库并写好表CREATE DATABASE ssmbuild;USE ssmbuild;然后建立books表字段有:bookID(书ID)、bookName(书名)、bookCounts(书的数量)、detail(描述)。2.建立一个普通的Maven项目首先导入项目所需要的依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="htt
2020-06-30 14:37:05
1228
1
原创 IDEA中Tomcat部署Web应用时出现异常
Tomcat部署Web应用时出现异常08-Jul-2017 21:45:26.064 严重 [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.core.StandardContext.startInternal One or more listeners failed to start. Full details will be found in the appropriate container log file08-Jul-2017 21:4
2020-06-29 22:17:37
402
原创 请求地址之RestFul 风格
RestFul 风格概念Restful就是一个资源定位及资源操作的风格。不是标准也不是协议,只是一种风格。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。功能资源:互联网所以的事物都可以被抽象为资源资源操作:使用POST,DELETE,GET,等不同方法对资源进行操作。分别对应添加、删除、查询。优点简洁安全高效统一**传统的操作资源:**通过不同的参数来实现不同的效果!方法单一post和gethttp://127.0.0.1/item/queryItem
2020-06-17 21:21:44
321
原创 SpringMVC使用注解开发的流程和对应的代码
使用注解开发第一步:创建Maven项目,基于web开发,并在pom.xml中导入依赖:<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <
2020-06-16 23:29:26
147
原创 学习SpringMVC的第一次项目HelloSpringMVC的代码实现
HelloSpringMVC1.创建Maven项目并导入相关依赖。 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.1.9.RELEASE</version> <
2020-06-16 17:02:35
104
原创 SpringMVC学习基础之了解MVC和回顾Servlet
1、SpringMVC1.1、什么是MCV?MVC:模型(Model)、视图 (View)、控制器(Controller)的简写。是一种软件设计规范。MVC主要作用是降低了视图与业务逻辑之间的耦合Model(模型):数据模型,提供要展示的数据包含数据(Dao)层和服务行为(Service)层View(视图):负责进行模型的展示,一般就是我们见到的用户界面,客户想看到的东西(JSP,HTML)Controller(控制器):接收用户请求,委托给模型进行处理,处理完成后返回的模型数据返回给视图,
2020-06-16 15:04:06
121
原创 SpringAOP的底层之静态代理与动态代理
代理模式为什么要学习代理模式?因为这就是SpringAOP的底层!【面试必问SpringAOP和SpringMVC】代理模式的分类:静态代理动态代理10.1、静态代理角色分析:抽象角色:一般会使用接口或者抽象类来解决真实角色:被代理的角色代理角色:代理真实角色,代理真实角色后,我们一般会做一些附属操作客户:访问代理对象的人!代码步骤:1.接口public interface Rent { public void rent();}2.真实角色//房东pub
2020-06-13 22:01:31
191
原创 Spring使用注解开发
8、使用注解开发在Spring4之后,要使用注解开发,必须要保证aop的包导入了使用注解需要导入context约束,增加注解的支持!-<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:cont
2020-06-13 17:05:03
87
原创 bean的自动装配
7、bean的自动装配自动装配是Spring满足bean依赖一种方式!Spring会在上下文中自动寻找,并自动给bean装配属性!在Spring中有三种装配的方式在xml中显示的配置在java中显示配置隐式的自动装配bean【重要】7.1、测试环境搭建:一个人有两个宠物7.2、ByName自动装配 <!-- byName:会自动在容器上下文中查找,和自己对象set方法后面的值对应的bean id! --> <bean id="pe
2020-06-13 16:33:40
110
原创 DI依赖注入的方法
6、DI依赖注入6.1、构造器注入 <bean id="user" class="com.maple.pojo.User"> <!--第一种下标赋值--> <constructor-arg index="0" value="maple"/> </bean>6.2、set方式注入【重点】依赖注入:Set注入依赖:bean对象的创建依赖于容器!注入:bean对象中的所有属性,由容器注入!【环境
2020-06-13 15:20:24
130
原创 IOC创建对象的方式
IOC创建对象的方式使用无参构造创建对象,默认!如果要使用有参构造创建对象下标赋值 <bean id="user" class="com.maple.pojo.User"> <!--第一种下标赋值--> <constructor-arg index="0" value="maple"/> </bean>通过类型 <bean id="user" class="com.ma
2020-06-12 22:39:44
102
原创 HelloSpring
HelloSpringspring的Maven依赖 <!-- https://mvnrepository.com/artifact/org.springframework/spring-web --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</ar
2020-06-12 22:11:29
122
原创 Spring的IOC理论推导
2、IOC理论推导1.UserDao 接口public interface UserDao { void getUser();}2.UserDaoImplpublic class UserDaoImpl implements UserDao { public void getUser() { System.out.println("默认获取用户数据"); }}public class UserMysqlImpl implements UserDao{
2020-06-11 22:31:41
173
原创 Mybatis缓存(Cache)
13、缓存(Cache)13.1、简介1、什么是缓存【Cache】?将在内存中的临时数据。将用户经常查询的数据放在缓存(内存)中,用户去查询数据就不用从数据库里面查了,从而提高了查询效率2.为什么使用缓存?减少和数据库的交互次数,减少系统开销,提高系统效率3.什么样的数据库能使用缓存?经常查询并且不经常改变的数据。13.2、Mybatis缓存Mybatis包含一个非常强大的查询缓存特性,它可以非常方便的定制和配置缓存。缓存可以极大的提高查询效率Mybatis系统中默认定义
2020-06-02 19:51:25
209
原创 Mybatis动态SQL
12、动态SQL动态SQL就是根据不同的条件生成不同的SQL//如果你之前用过 JSTL 或任何基于类 XML 语言的文本处理器,你对动态 SQL 元素可能会感觉似曾相识。在 MyBatis 之前的版本中,需要花时间了解大量的元素。借助功能强大的基于 OGNL 的表达式,MyBatis 3 替换了之前的大部分元素,大大精简了元素种类,现在要学习的元素种类比原来的一半还要少。ifchoose (when, otherwise)trim (where, set)foreach12.1、if测
2020-06-02 18:20:52
63
原创 Mysql中一对多和多对一的理解
10、多对一处理10.1、按照查询嵌套处理实体类Studentpublic class Student{ private Integer id; private String name; private Teacher teacher; public Integer getId() { return id; } public void setId(Integer id) { this.id = i
2020-06-01 19:29:56
746
原创 Mybatis用Limit和java代码层面的分页(代码)
7、分页减少数据的处理量7.1使用Limit分页用法select * from user limit startIndex,pageSize;使用Mybatis实现分页,核心SQL接口 //分页 List<User> getUserByLimit(Map<String,Integer> map);2.Mapper.xml <select id="getUserByLimit" parameterType="map" result
2020-05-28 22:13:58
489
原创 java日志在Mybatis的简单使用
6、日志6.1、日志工厂如果一个数据库操作,出现了异常,我们需要排错。日志就是最好的助手logImpl指定 MyBatis 所用日志的具体实现,未指定时将自动查找。SLF4J | LOG4J | LOG4J2 | JDK_LOGGING | COMMONS_LOGGING | STDOUT_LOGGING | NO_LOGGING未设置SLF4JLOG4J 【掌握】LOG4J2JDK_LOGGINGCOMMONS_LOGGINGSTDOUT_LOGGIN
2020-05-28 17:24:35
260
原创 Mybatis配置文件解析
4、配置解析4.1核心配置文件mybatis-config.xmlMyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置和属性信息configuration(配置)properties(属性)settings(设置)typeAliases(类型别名)typeHandlers(类型处理器)objectFactory(对象工厂)plugins(插件)environments(环境配置)environment(环境变量)transactionManager(事务管理器
2020-05-26 21:05:45
73
原创 Mybatis的基本增删改查(代码)
3、CRUD增删改查3.1、namespacenamespace中的包名要和Mapper接口的包名一致3.2、select选择、查询语句;id就是对应的namespace中的方法名;resultType:sql语句执行的返回值!parameterType:参数类型!1、编写接口 //获取全部用户 List<User> getUserList(); //根据id查询用户 User getUserById(int id);2、编写对应的Mapper中
2020-05-26 15:52:45
199
原创 第一个Mybatis程序配置(代码)
2、第一个Mybatis程序思路:搭建环境–>导入Mybatis–>编写代码–>测试!2.1、搭建环境搭建数据库新建项目:创建一个普通的Maven项目删除src目录导入maven依赖 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId>
2020-05-26 13:59:46
112
原创 Mybatis学习环境和简介
Mybatis环境:JDK1.8Mysql 5.7maven 3.6.1IDEA回顾:JDBCMysqlJava基础Maven的知识Junit框架:配置文件的。最好的方式:看官网文档;1、简介1.1什么是MybatisMyBatis 是一款优秀的持久层框架它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java
2020-05-25 21:45:51
67
原创 JDBC连接步骤
JDBC引入依赖 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.47</version> </dependency>1.JDBC固定步骤加载驱动连接数据
2020-05-18 20:55:42
75
原创 过滤器(Filer)与监听器(Listenter)
1、FilerFilter:过滤器,用来过滤网站的数据;处理中文乱码登录验证…Filter开发步骤:1.导包2.编写过滤器 1.导包不要错 导入javax.servlet包public class CharacterEncodingFilter implements Filter{ @Override //初始化 public void init(FilterConfig filterConfig) throws ServletException {
2020-05-18 19:51:17
323
原创 MVC三层架构分析
MVC三层架构什么是MVC:Model view controller 模型、视图、控制器1.1、早些年用户直接访问控制层,控制层就可以直接操作数据库;1.2、MVC三层架构Model业务处理:业务逻辑(Service)数据持久层:DaoView展示数据提供链接发起Servlet请求Controller(Servlet)接收用户的请求:(req:请求参数、Session信息…)交给业务层处理代码控制视图的跳转登录—>接收用户登录请求—>处理
2020-05-18 18:44:19
248
原创 JSP标签、JSTL标签、EL表达式
JSP1.1 、什么是JSPJava Server Pages:java服务器端页面,也和Servlet一样,用于动态Web技术!最大的特点:写JSP就像在写HTML区别:HTML只给用户提供静态的数据JSP页面中可以嵌入JAVA代码,为用户提供动态数据;1.2、JSP原理思路:JSP怎么执行的浏览器向服务器发送请求,不管访问什么资源,其实都是在访问Swevlet!JSP最终会被转 换成一个Java类JSP本质就是一个Servlet //初始化 void jspIni
2020-05-15 18:58:21
139
原创 Cookie、Session的运用(代码)
1. Cookie、Session1.1、会话会话:用户打开了一个浏览器,点击了很多超链接,访问多个web资源,关闭浏览器,这个过程可以称之为会话**有状态会话:**一个网站,怎么证明你来过?服务端给客户端一个信件,客户端下次访问服务端带上信件就可以了;cookie服务器登记你来过了,下次你来的时候就可以匹配;session1.2保存会话的两种技术cookie客户端技术(响应,请求)session服务器技术,利用这个技术,可以保存用户的会话信息?我们可以把信息或者数据放在Ses
2020-05-14 18:01:39
330
原创 获取前端传递的参数和请求转发
HttpServletRequest(请求)1、获取前端传递的参数和请求转发req.getParameter();req.getParameterValues();public class LoginServlet extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOExcept
2020-05-14 16:16:48
668
原创 javaweb生成一个随机验证码(代码)
生成一个随机验证码:以图片的方式在浏览器上打印出来public class ImageServlet extends HttpServlet{ @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //如何让浏览器5秒刷新一次; resp.setHeader("refres
2020-05-13 22:19:11
506
原创 用Response下载文件代码实现
Response下载文件要获取下载文件的路径下载的文件名是什么?设置想办法让浏览器能够支持下载的东西获取下载文件的输入流创建缓冲区获取OutputStream对象将FileOutputStream流写到buffer缓冲区使用OutputStream将缓冲区的数据输出到客户端 @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletExceptio
2020-05-13 20:29:34
109
原创 ServletContext共享数据测试(代码)
ServletContextweb容器在启动的时候,它会为每一个web程序都创建一个对应的ServletContext对象,它代表了当前的web应用;1、共享数据:这个servlet保存的数据可以被另一个servlet使用;第一个类添加数据:public class HelloServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse
2020-05-13 19:19:59
222
原创 编写第一个javaweb的程序HelloServlet
Servlet1.1、Servlet简介Servlet就是sun公司开发动态web的一门技术Sun在这些API中提供一个接口叫做:Servlet,然后你想开发一个Servlet程序,只需要完成两个小步骤:编写一个类,实现Servlet接口把开发好的java类部署到web服务器中。吧实现了Servlet接口的java程序叫做,Servlet1.2、HelloServletSerlvet接口有两个默认的实现类:HTTPServlet,GenericServlet1.构建一个Maven
2020-05-12 22:07:05
490
原创 Maven的下载与配置 和在IDEA中创建Maven的项目
5、Maven为什么要学习Maven在javaweb开发中,需要使用大量的jar包;如何能够自己导入和配置jar包由此,Maven诞生了!5.1、Maven项目架构管理工具Maven的核心思想:约定大于配置有约束,不要去违反Maven会规定好你该如何去编写我们的java代码,必须按照这个规范来;5.2、下载安装Maven官网:https://maven.apache.org/找到版本,下载完成后,解压即可;5.3、 配置环境变量在系统环境变量中配置:M2_HO
2020-05-12 20:09:49
155
原创 HTTP协议的基本知识
4、HTTP4.1、什么是HTTP?http(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP之上。文本:html,字符串,…超文本:图片,音乐,视频,定位,地图…https:安全的4.2、两个时代http1.0http/1.0:客户端与web服务器连接后,只能获取一个web资源,断开连接http2.0http/1.1客户端与web服务器连接后,可以获取多个web资源。4.3、 Http请求客户端—发请求(Request)—服务器百度:Req
2020-05-12 19:42:51
167
原创 web服务器讲解与Tomcat配置
2、web服务器2.1、技术讲解ASP:微软:国内最早流行的就是ASP在HTML中嵌入了VB的脚本,SAP+COM;在ASP开发中,基本一个页面都有几千行的业务代码,页面极其乱维护成本高PHP:PHP开发速度快,功能很强大,跨平台,代码很简单(70%,WP)无法承载大访问量的情况(局限性)JSP/Servlet:B/S:浏览器和服务器C/S:服务器和客户端sun公司主推的B/S架构基于java语言的可以承载三高(高并发,高可用,高性能)问题带来的影响;语法像ASP
2020-05-12 17:23:17
368
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人