自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 图片Base64编码与解码

将图片文件进行base64编码以下为两种方式,一直是直接将文件格式的转为base64,另一种则是以路径作为参数:public void changeBase(MultipartFile file1,String path){ FileInputStream stream =null; StringBuffer encode1 =new StringBuffer(); StringBuffer encode2 =new StringBuffer(); File file2

2020-09-02 17:52:52 2571

原创 oracle中的date类型与java中的date类型转换必须知道的操作

把程序的数据存到数据库中:当程序中是String 类型时,SQL文应该用上to_date(hiredate,‘yyyy-mm-dd hh24:mi:ss’)这样放到数据库中就是date类型当程序中是Date类型时,必须先转为String类型,利用new SimpleDateFormate(“yyyy-MM-dd hh:mm:ss”).format(new Date())转化把数据库中数据取出时要使用to_char(hiredate,‘YYYY-MM-DD HH24:MI:SS’)变为String

2020-07-27 23:09:11 1163

原创 ajax提交两次表单问题总结

在做测试提交表单时发现如果前面提交过一次后再去提交,后台会走两次,前台也会输出两次第一种情况 以submit触发ajax原因:在触发ajax请求服务器时,ajax是同步处理的,这个期间客户端不能做任何处理,当 ajax 执行完毕才会继续执行其他代码。期间提交表单则又会请求一次服务器,如果你ajax和表单请求同一个页面就会出现执行2次的问题,比如说插入两次数据开始的前端代码: $("#export1").click(function() { var telText=/^1\d{1

2020-07-27 00:15:23 994

原创 报错MyBatisSystemException: nested exception is org.apache.ibatis.executor.ExecutorEx

具体报错java.lang.RuntimeException: org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.ExecutorException: A query was run and no Result Maps were found for the Mapped Statement 'com.ai.ecs.ecop.aaYxy.dao.UsersDao.checkPh

2020-07-26 21:20:12 306

原创 Nginx.conf配置文件中alias与root的区别

他们都可以用来指定请求资源的路径root:location /wap/ { root /wap_web/static;}假设访问的是http://localhost:8080/wap/test.html那它实际访问的资源路径是:wap_web/static/wap/test.htmlalias:location /wap/ { alias /wap_web/static/; }实际访问的资源路径是:/wap_web/static/test.htmlalias指定的路径是lo

2020-07-10 11:25:28 382

原创 bean创建错误,target下的xml文件bean爆红

具体报错日志:org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.context.support.PropertySourcesPlaceholderConfigurer#0' defined in file [E:\Tomcat\apache-tomcat-7.0.104\webapps\wap\WEB-INF\classes\META-IN

2020-07-08 14:28:08 1709 3

原创 Maven-lifecycle

1.clean用于清除之前构建生成的所有文件其中具体为清除Target目录中的所有文件,包括该目录删除了install生成的所有文件2.validate用于验证项目是否正确,并且其说有必要信息是否都可用3.compile编译项目的源代码,主要是java文件一般是编译scr/main/java或是scr/test/java里面的文件4.test用合适的测试框架来进行测试,测试compile中编译出来的代码测试的东西一般不加包和部署5.packaging获取compile中编译好的代码

2020-07-07 19:15:58 73

原创 log4j.properties配置解析gogogo

Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。第一步加入log4j-1.2.8.jar(可以选择log4j的更高版本)到lib下。如果使用maven项目,也可以选择在po

2020-07-07 17:40:48 82

原创 nginx.conf中通过proxy_pass代理转发

在nginx中配置proxy_pass代理转发时,如果在proxy_pass后面的url加/,表示绝对根路径;如果没有/,表示相对路径,把匹配的路径部分也给代理走。假设下面四种情况分别用 http://192.168.1.1/proxy/test.html 进行访问。第一种:location /proxy/ {proxy_pass http://127.0.0.1/;}代理到URL:http://127.0.0.1/test.html第二种(相对于第一种,最后少一个 / )location

2020-07-03 15:37:12 454

原创 那些你必须知道的常用注解

@Controller :定义一个控制器类@RequestMapping:请求映射@Resource:Spring会直接将UserDao类型的唯一一个bean赋值给userDao这个成员变量@Autowired:Spring会调用setUserDao方法来将UserDao类型的唯一一个bean装配到userDao这个属性使用Spring时,通过Spring注入的Bean一般都被定义成private,并且要有getter和setter方法,显得比较繁琐,增加了代码量,使用@Autowired可以减少代

2020-07-02 19:29:04 145

原创 spring中解决乱码问题万金油

经常出现乱码问题,在Spring配置文件中添加以下代码统一解决<mvc:annotation-driven> <mvc:message-converters register-defaults="true"> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <constructor-arg value="UTF-8"/

2020-06-28 14:39:50 170

原创 较完整的Spring MVC执行原理!!

如图:图为SpringMVC的一个较完整的流程图,实线表示SpringMVC框架提供的技术,不需要开发者实现,虚线表示需要开发者实现。简要分析执行流程DispatcherServlet表示前置控制器,是整个SpringMVC的控制中心。用户发出请求,DispatcherServlet接收请求并拦截请求我们假设请求的url为 : http://localhost:8080/SpringMVC/hello如上url拆分成三部分:http://localhost:8080服务器域名Spri

2020-06-22 23:11:43 114

原创 记一次面试小结

jsp的内置对象9大对象:request, 代表了客户端的请求信息response,代表的是对客户端的响应session,由服务器自动创建的与用户请求相关的对象,用于保存用户信息,及跟踪操作状态application, 可将信息保存在服务器中,直到服务器关闭,否则application对象中保存的信息会在整个应用中都有效, 与session对象相比,application对象生命周期更长,类似于系统的“全局变量”out,用于在Web浏览器内输出信息,并且管理应用服务器上的输出缓冲区page..

2020-06-16 23:05:57 108

原创 分分钟搞定静态代理与动态代理

静态代理:举个栗子:在生活中,中介的存在,帮助客户找到理想的房源,也帮助房东出租房源,这就是代理模式房东——真实角色:被代理的角色中介——代理角色:代理真实角色来操作租客——客户:使用代理角色来进行操作租房这件事——抽象角色:一般使用接口或抽象类来实现在这个过程中,租客只需调用中介来完成租房这个方法即可,至于怎么租它不需要管中介只需实现租房这个接口或抽象类,来重写它(其中包括实现租房外的一些方法,比如收取中介费),注意的是租房是通过调用房东这个真实对象来完成租房这件事房东只需实现租房这个接

2020-06-14 19:03:57 212

原创 Mybatis程序搭建思路以及底层实现,通俗易懂!

思路:1. 搭建环境搭建数据库新建项目-新建一个普通maven项目-删除src目录-导入maven依赖(mysql驱动 mybatis junit)2. 创建一个模块编写mybatis的核心配置类(官网上有)编写mybatis工具类(官网上有)3. 编写代码实体类Dao接口接口实现类 (通过XML或注解定义,需满足SqlSession的调用)4. 测试注意点:在核心配置文件中要注册好Mapper由于maven中约定大于配置,会遇到无法被导出或生效的问题,需

2020-06-09 11:21:32 181

原创 Enumeration遍历源码

Enumeration(枚举)接口的作用和Iterator类似,只提供了遍历Vector和HashTable类型集合元素的功能,不支持元素的移除操作。Java8中Enumeration接口的源码:public interface Enumeration<E> {/** * Tests if this enumeration contains more elements. * * @return <code>true</code> if

2020-06-07 11:05:47 231

原创 关于Map你必须知道的事

Map:属于双列Key-Value键值对的集合,Key不允许重复,可是否为null值由实现类决定,Value随意它的实现类有:HashMap,LinkedHashMap,TreeMap,HashTable,ConcurrentHashMapHashMap(高频面试点)实现了Map接口,继承了AbstractMap类,在JDK1.7中数据结构为位桶数组+链表结构,而JDK1.8中采用的是位桶数组+链表+红黑树的结构默认初始化长度为16,扩容加载因子为0.75,一旦长度大于0.75*16时,会调

2020-06-06 17:03:51 2500

原创 常见的ArrayList、LinkedList、Vector之间的区别

ArrayList:实现了List接口,继承了AbstractList类,由一个Object[ ] 实例实现,即底层为数组结构默认初始化长度为10,扩容规则为原容量的0.5倍加1,即扩容一次为16特点是:查询速度快,但进行增删操作时,LinkedList会快些,线程不同步(不安全)LinkedList:实现了List接口,继承了AbstractSequentialList类,由一个Node节点链表实现,即底层为链表结构由于数据结构为链表结构,所以无预扩容机制特点是:增删快,但查询操作相比

2020-06-06 16:29:12 182

原创 你真的知道“==”、equals()、hashCode的区别吗?

首先三者都可以用来比较,主要是比较的内容不同==:如果是基本类型相比,就是比较他们的值是否相同,因为基本数据类型他们的值是直接存在栈中的如果是引用数据类型比较,就是比较他们的内存地址是否相同,因为对象是存在堆中,而栈中存储的是它的引用内存地址equals():只用于对象之间的比较默认情况下,用的是Object类下的equals()方法,它是用来比较对象的地址值如果在equals()方法被重写的情况下,就要按照重写的方法体去执行比较,比如说String类下的equals就被重写为比较两个对

2020-06-06 13:42:57 168

原创 java基础面试你该知道的点

1.讲讲Object类,其中你经常用的方法,他们的作用是什么?Object类在java.lang包中是所有类的默认父类,所有的数组类型,不管是对象数组还是基本类型数组都是继承自 Object 类。equals():检测一个对象是否等价于另外一个对象,即值是否想等,-【关于equals()和==区别可以去看另一篇博客详解】hashCode():按照一定的算法由对象得到的一个数值,散列码没有规律,主要用来在集合中实现快速查找等操作,也可以用于对象的比较。-【如果两个对象相同,那么它们的 has

2020-06-06 11:56:49 126

原创 几分钟搞定正则表达式

我这里以aabcAABC1123为例匹配字符(What)(截图我使用了全局搜索) 默认是只能找到1个. 匹配所有字符[abcd] a或b或c或d[a-zA-Z]26个小写字母和26个大写[^abcd] 除了a或b或c或d[0-9] 数字0到9\d 所有数字\f: 匹配一个换页符。等价于 \x0c 和 \cL。\n: 匹配一个换行符。等价于 \x0a 和 \cJ。\s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\

2020-06-02 22:48:21 182

原创 关于抽象类和接口的区别你必须知道的事,稳!

大致总结了5个点:1 (不能为普通方法提供方法体)接口里只能包含抽象方法,静态方法和默认方法(加default),不能为普通方法提供方法实现,抽象类则完全可以包含普通方法,接口中的普通方法默认为抽象方法。2 .(public static final 赋值)抽象类中的成员变量可以是各种类型的,而接口中的成员变量只能是 public static final 类型的,并且必须赋值,否则通不过编译。3 (是否有构造器)接口不能包含构造器,抽象类可以包含构造器,抽象类里的构造器并不是用于创建对象,而是让其子

2020-06-02 20:23:56 80

原创 超级详细的HashMap源码分析,还怕面试?

Map继承体系图:底层存储结构:put数据原理分析:map.put(k,v);获取k字符串的Hash值经过hash值扰动函数,使此hash值更散列构造出Node对象通过路由算法,找出Node应存放在数组的位置(路由寻址公式:(table.length-1)&node.hash)哈希碰撞:可能几个Hash值都能通过路由算法得到同一个值,这过程为哈希碰撞什么是链化:原本查找效率为O(1) 由于过于链化 时间复杂度变为O(N)为什么提出红黑树:防止链化过长,它是一个自平衡二叉

2020-05-31 17:19:19 102

原创 必经之路

今年受疫情影响,学校不开学了,我很开心,因为这样就可以不用上那无聊的课程,而可以有大量自由的时间去学习编程和安排自己的实习。从整个寒假开始我每天都拿出至少4个小时来学习新的知识,从JavaSE到前端语言到数据库到JavaWeb再到SSM框架,尤其是得知不开学后的那些日子,我疯了一样去学习,从早上8点多醒来,除去吃饭时间,一直学到晚上1点睡觉,睡觉前还要打开b站进行后台播放,听着课程睡觉,觉得自己很努力了,一定可以得到回报从开始我满怀信心,绝得自己可以快人一步,大三就能找到实习工作,来丰富自己的就业经验。

2020-05-29 23:14:24 140 1

原创 很nice的JavaSE思维导图

花了很长时间对着视频写出来的,也发现了很多自己之前不足的地方,思路很清晰,分享给大家学习,有补充或不足也可以提出

2020-05-27 23:28:21 151

转载 10种排序算法及代码实现

十大经典排序算法0、算法概述0.1 算法分类十种常见排序算法可以分为两大类:比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此也称为非线性时间比较类排序。非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此也称为线性时间非比较类排序。0.2 算法复杂度0.3 相关概念稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面。不稳定:如果a原本在b的前面,而a=b,排序之后 a 可能会出现在 b

2020-05-27 16:24:16 2004

原创 switch语句中的case穿透问题

测试代码: int x = 2;    int y = 3;    switch(x){      default:      y++;      case 3:      y++;      case 4:      y++;      break;      case 5:      y++;     }    System.out.println("y = " + y);执行顺序:匹配对象为x,首先进入switch语句后,不会直接进入default语句,它是在没有匹配c

2020-05-27 15:12:10 1719 1

原创 Servlet类无法实例化问题

LoginServlet类:import com.yxy.pojo.User;import com.yxy.service.User.UserService;import com.yxy.service.User.UserServiceImpl;import com.yxy.util.Constants;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servle

2020-05-26 13:50:41 2041 3

原创 注册过滤器Filter后出现一个或多个筛选器启动失败问题

在做一个web项目时编写了拦截器想解决中文乱码问题:public class CharacterEncoding implements Filter { public void init(FilterConfig filterConfig) throws ServletException { } public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws IOEx

2020-05-25 18:50:23 5711 16

原创 为什么获取数据库连接时需要加载类

JDBC在getConnection之前为什么要调用Class.forName?获取一个数据库连接的通用模板如下:String driver = "oracle.jdbc.OracleDriver";  String url = "jdbc:mysql://localhost:3306?useUnicode=true&characterEncoding=utf-8";  String user = "scott";  String password = "ticmy";  Class.f

2020-05-25 14:27:39 186

转载 关于int与integer的区别

int和Integer的区别1、Integer是int的包装类,int则是java的一种基本数据类型2、Integer变量必须实例化后才能使用,而int变量不需要3、Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值4、Integer的默认值是null,int的默认值是0延伸:关于Integer和int的比较1、由于Integer变量实际上是对一个Integer对象的引用,所以两个通过new生成的Integer变量永远是不相

2020-05-25 12:46:13 1038

原创 Ajax那些事

AjaxAjax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式、快速动态网页应用的网页开发技术,无需重新加载整个网页的情况下,能够更新部分网页的技术。通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。优点:传统的网页(即不用ajax技术的网页),想要更新内容或者提交一个表单,都需要重新加载整个网页。使用ajax技术的网页,通过

2020-05-21 16:07:48 105

原创 基于Servlet的超市订单管理系统

虽然蛮落后,但这种底层原理还是要明白的,我会在主页资源里分享源码,有需要自拿超市订单管理系统大体框架:数据库大致内容:项目搭建搭建一个Maven配置Tomcat测试项目是否能够跑起来导入项目中遇到的jar包:jsp,Servlet,mysql驱动,jstl,stand……创建项目包结构编写实体类ORM映射:表-类映射编写基础公共类数据库配置文件编写数据库的公共类编写字符编码过滤器编写数据库的公共类编写字符编码过滤器

2020-05-21 00:45:22 818

原创 JavaWeb那些事

JavaWebJava Web1.基本概念web开发:web,网页的意思 ,例如www.baidu…com静态webhtml , css ,还有些模板引擎提供给所有人看的数据始终不发生变化!动态web例如淘宝,几乎是所有的网站提供给所有人看的数据始终会发生变化,每个人在不同的时间,不同的地点看到的信息各不相同常用的技术栈:Servlet/JSP ,ASP ,PHP在java中,动态web资源开发的技术统称为javaWeb1.2 web应用

2020-05-19 17:46:07 225 2

原创 在运行Tomcat时出现java.lang.IllegalStateException: Error starting child的问题

今天在运行Tomcat时Servlet出现异常,在Tomact Catalina Log上发现问题:javajava.lang.IllegalStateException: Error starting child在网上查阅了很多方法都没有解决问题,排除了jar包冲突和Tomcat配置原因后,还反复检查了web.xml文件,最后发现是一个很低级的错误,在输入<url-pattern>/test</url-pattern>时,test前少加了一个/,而类似的问题还可能出现在用注解配

2020-05-14 12:48:19 2331

原创 求IDEA中建立Maven时plugins下载失败问题解决方案

在创建Maven项目后出现了问题,在网上搜寻了很多解决方法都没有解决大致情况如下IDEA版本:2020.1Maven版本:3.6.3我的settings配置:我的本地Maven配置文件和仓库地址:maven-repo是自己创建的,用来当本地仓库输入plugins失败:求大神解决 搞了一下午没搞成...

2020-05-10 17:50:50 3406 5

原创 谈谈MySQL那些事

MySQL是一个关系型数据库管理系统前世:瑞典MySQL AB公司今生:属于Oracle旗下产品MySQL是最好的RDBMS(Relational Database Management System,关系数据库管理系统)应用软件之一开源的数据库软件体积小,速度快,总体拥有成本低,招人成本比较低,所有人必须会~中小型网站,或者大型网站,集群!5.7 稳定 (上课用)8.0 最新安...

2020-05-08 11:44:28 241

转载 MySQL中关于BTree索引的数据结构与算法原理

以下文章专供学习参考用,并非原创(感觉写的特别nice,推荐耐心看完 )文章主要内容分为三个部分。  第一部分主要从数据结构及算法理论层面讨论MySQL数据库索引的数理基础。  第二部分结合MySQL数据库中MyISAM和InnoDB数据存储引擎中索引的架构实现讨论聚集索引、非聚集索引及覆盖索引等话题。  第三部分根据上面的理论基础,讨论MySQL中高性能使用索引的策略。  数据结构及算...

2020-05-05 11:59:56 193

原创 MySQL安装时遇到的问题

1.解决SQLyog连接mysql8.0时报错:错误号码2058首先排除环境变量的问题:右击此电脑进入系统设置,点击高级系统设置,选择高级,再选择环境变量,选择系统变量,找到PATH。进行Path的编辑环境变量,添加mysql的环境变量 : E:\MySQL\mysql-8.0.20\bin(这是我的存放位置)以管理员身份进入命令行窗口输入命令: mysql -u root -p...

2020-04-28 23:01:48 102

原创 JavaScript那些事

重点内容:1.数据类型2.函数- 定义函数- 变量的作用域由于我们所有的全局变量会绑定到我们的window上,如果不同的js文件,使用了相同的全局变量则会冲突————解决方法:把自己的代码全部放入自己定义的唯一空间名字中,降低全局命名冲突的问题- 方法3.内部对象- Date- JSON- Ajax(放在后面学)4.面向对象编程JS的面向对象对比Java有区别:类:模...

2020-04-27 22:34:32 144

空空如也

空空如也

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

TA关注的人

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