----【Java】
魏恩君--Caroline
这个作者很懒,什么都没留下…
展开
-
JavaEE的13种核心规范
JavaEE是什么 JAVA分为三个部分,J2ME(负责移动开发)、J2SE(负责桌面应用程序)、J2EE(负责大型的分布式开发程序),而JavaEE是J2EE的一个新的名称,目的还是让大家清楚J2EE只是java企业应用。到现在为止,对java的理解,它既是一种解释型语言,又是环境(平台或框架),又是一种规范。而JavaEE是一套使用java进行企业级web应用开发的大家一致遵循的一套原创 2017-12-24 08:55:22 · 1722 阅读 · 17 评论 -
Excel快速生成sql语句
import jxl.Sheet;import jxl.Workbook;import jxl.read.biff.BiffException; import java.io.*; public class Main { public static void main(String[] args) { Main obj = new Main(); ...原创 2018-09-09 11:33:54 · 379 阅读 · 6 评论 -
数据库直接生成实体、dao和mapper
使用Mybatis Generator<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" ...原创 2018-09-14 18:16:29 · 371 阅读 · 9 评论 -
java异常处理
为什么Java运行处理出错后,会找到相应的catch块,如果找不到,则停止程序.为了提高程序的健壮性和代码的优雅. 是什么将不可预期异常的处理代码和正常的业务逻辑代码分离异常分类:checked异常:可以被修复 runtime异常 怎么做1.先捕捉小异常,再捕捉大异常2.try--catch(遇到return或throw执行finally)--...原创 2019-01-13 18:57:03 · 225 阅读 · 4 评论 -
java集合和map
集合一.Set:1.hashSet:乱序,不可重复hash算法,计算hashcode,得出存储位置2.LinkedSet:hashSet基础上加上链表3.TreeSet:有序按照元素实际值大小升序排序,每次调用使用compareTo方法做比较(红黑树算法) 二.list:有序,可重复1.ArrayList:索引,性能高2.Vector:同ArrayList,线程...原创 2019-01-31 12:45:38 · 315 阅读 · 1 评论 -
java输入和输出
1.File:新建,删除,重命名文件或目录,不访问文件内容本身2.IO输入流基类:inputStream(字节),Reader(字符):输入方法:read()输出流基类:outputStream(字节),Writer(字符)输出方法:write()输入和输出都可以想象成一个'水管',里面都是'水滴'作为存储单位3.计算机大多使用字节4.流分类 5.序列化...原创 2019-01-27 21:01:55 · 330 阅读 · 1 评论 -
Tomcat
是什么中间件,作用在java项目和jvm之间的中间容器 怎么做(启动原理)Tomcat Server处理一个http请求的过程假设来自客户的请求为:http://localhost:8080/wsota/wsota_index.jsp1) 请求被发送到本机端口8080,被在那里侦听的Coyote HTTP/1.1 Connector获得(1-1)Connector的...原创 2019-02-17 20:58:21 · 230 阅读 · 3 评论 -
NIO与AIO
一 传统IO--阻塞1.1传统IO过程:1.建立socket2.阻塞点:server.accept() inputStream.read(bytes) 只有阻塞点完成后,其他进程才能进来1.2 特点: 单线程情况下只能有一个客户端 用线程池可以有多个客户端连接,但是非常消耗性能,一个客户端一个独立线程...原创 2019-05-31 12:49:00 · 373 阅读 · 3 评论 -
JVM--你想要的都在这里
一 是什么--功能1.1 软件层面机器码的翻译--》代码到机器指令的一次转换1.2 内存管理二 JVM运行时数据区 2.1程序计数器(线程独享:一个线程一个):指向当前线程正在执行的字节码指令的地址,行号(原因:线程执行是在CPU上,CPU是抢占式的,线程有可能没有执行完就被抢夺了,所以需要一个地方去存储线程执行地址)2.2虚拟机栈(线程独享):存储...原创 2019-06-09 19:47:15 · 230 阅读 · 1 评论 -
redis基础
一 缓存1.是什么:内存级别,读取非常快(阿里使用redis--多级缓存。参考链接:https://www.jianshu.com/p/cc204dbefb74)2.种类:应用内缓存(hashMap,EH cache)--java第三方库缓存组件(memached,redis)二 redis基础1.remote dictionary server(远程字典服务器),它以字...原创 2019-06-24 10:34:44 · 329 阅读 · 3 评论 -
kafka
一 是什么分布式消息和订阅系统--不是基于JMS特性(区别于activeMQ):1.高性能,高吞吐量2.内置分区,实现集群,冗余和容错性二 从哪来linkedln活动流和运营数据处理管道三 应用场景1.行为跟踪2.日志收集:分布式系统,集群部署方式收集日志很难定位问题,使用日志统一收集平台(kafka),然后使用ES,HDFS做实时检索分析和离线统计...原创 2019-07-08 11:30:13 · 307 阅读 · 3 评论 -
mycat基础
一 从哪来--数据库性能瓶颈的原因1.数据库连接:数据库连接数有限2.表数据量2.1 mysql索引--B-Tree形式,是一种硬盘级索引,每次获取索引都要从硬盘读到内存,有一定IO损耗。数据量越多,树越大。所以,索引对于小数据量的表来说,性能不如全表扫描.对于中大表来说比较合适,但对于 超大表,索引也会失效(考虑分库分表:a分库分表,全量扫描,不需要索引. b.分...原创 2019-06-30 19:40:35 · 386 阅读 · 4 评论 -
redis字符串操作
字符串操作 SET 赋值,用法: SET key value GET 取值,用法: GET key INCR 递增数字,仅仅对数字类型的键有用,相当于Java的i++运算,用法: INCR key INCRBY 增加指定的数字,仅仅对数字类型的键有用,相当于Java的i+=3,用法:INCRBY key increment,意思是key自增increment,i...原创 2018-08-24 18:56:01 · 310 阅读 · 14 评论 -
springboot总结
什么是Spring Boot Spring Boot是一个框架,其设计目的是简化Spring应用的初始搭建配置以及开发过程。该框架使用了特定的配置方式,从而使开发人员不在需要定义样板化的配置。 Spring Boot的好处 1、配置简单; 2、编码简单; 3、部署简单; 4、监控简单; Spring Boot的特点 1、化...原创 2018-08-17 07:46:15 · 231 阅读 · 12 评论 -
JavaEE软件开发体系架构
前言 上篇文章小编提到了什么是javaEE和它的13个核心规范,本篇文章,小编带您走进JavaEE的体系结构,从两层架构,三层架构,MVC,基于JavaEE架构模式下的MVC,JavaEE的四层架构。两层架构 传统的两层架构就是基于客户端和后台构建的,没有任何中间件,业务逻辑层与表示层或数据层混在一起。这种两层架构不仅开发过程复杂,部署难,并且不可扩展不可维护,时间金原创 2017-12-24 10:23:29 · 2674 阅读 · 21 评论 -
java之多线程理论篇
一、概念理解进程:程序关于某数据集合的一次运行活动线程:进程运行的逻辑单元 并发:同一时间段同一实体的两个或多个事件的发生并行:同一时刻不同实体上的两个或多个事件发生 线程安全指在并发的情况之下,该代码经过多线程使用,线程的调度顺序不影响任何结果。这个时候使用多线程,我们只需要关注系统的内存,cpu是不是够用即可。线程不安全线程不安全就意味着线程的调度顺序会原创 2018-03-04 11:36:53 · 267 阅读 · 21 评论 -
SSH总结
定义 SSH是Struts、Spring、Hibernate的一种集成框架,是目前较为流行的一种web应用程序开源框架,主要帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的web应用程序。Struts 一种基于JavaEE平台的MVC框架,是用来控制的。在struts框架的模型部分,负责业务跳转。Struts对model、view、controller都提供了对应的原创 2018-03-12 21:39:58 · 900 阅读 · 79 评论 -
Dubbo初识
前世今生 以前的以前,网站规模很小,简单,我们只需要一个应用,将所有的功能集成在一起,以减少部署节点和成本,这时单一应用架构。 之后,网站规模扩大,单一架构不支撑这样的规模,于是将一个大的应用拆分成互不相干的几个应用,提高效率。这时垂直应用架构(MVC应用而生)。 再之后,垂直应用越来越多,应用之间交互不可避免。于是,分布式服务框架(RPC)应运而生。原创 2018-03-27 09:27:10 · 227 阅读 · 34 评论 -
java基础--迭代器
工作过程中,遇到了一个相对复杂的数据处理。一个list里套着list,还要去重显示。于是想到了java的迭代器--Iterator。 迭代器基础用法 1.使用方法 iterator()要求容器返回一个 Iterator。第一次调用Iterator 的next()方法时,它返回序列的第一个元素。 2.使用next()获得序列中的下一个元素。 3.使用hasNext()检查序列...原创 2018-05-18 17:01:02 · 215 阅读 · 12 评论 -
SpringMVC注解之controller
@Controller 在SpringMVC 中提供了一个非常简便的定义Controller 的方法,你无需继承特定的类或实现特定的接口,只需使用@Controller 标记一个类是Controller ,然后使用@RequestMapping 和@RequestParam 等一些注解用以定义URL 请求和Controller 方法之间的映射,这样的Controller 就能被外界访问到。此...原创 2018-06-04 19:50:32 · 294 阅读 · 7 评论 -
template might not exist or might not be accessible by any of the configured Template Resolvers解决方案
今天遇到了一个非常奇怪的问题,后端调接口数据能够正常返回,但是返回页面一直报错。而且本地起着很正常,服务器运行jar就出问题。各种尝试如下:1.接口地址在数据库中是否配置的和本地一样。2.接口的问题。3.操作系统的问题。4.代码问题最后确定出来原来是springboot+themeleaf框架,返回页面不能多出“/”。之前是这样:mav.setViewName("/reportDe...原创 2018-06-22 13:06:28 · 4712 阅读 · 12 评论 -
sigar获取服务器资源信息
是什么 Sigar是Hyperic-hq产品的基础包,是Hyperic HQ主要的数据收集组件。它用来从Linux, Windows, Solaris, AIX, HP-UX, FreeBSD and Mac OSX等平台收集系统和处理信息。作用Sigar可以收集的信息有以下:1.系统内存,页面交换,cpu,平均负载,运行时间,登录信息2.每个进程占用的内存,cpu...原创 2018-07-26 08:06:23 · 710 阅读 · 25 评论 -
水印平铺
本周做了一个小功能,导出pdf加水印,但是水印是要平铺效果。单纯得加水印其实很简单,只需要有一个canvas,然后加上字就OK,但是效果是只能出来一个水印。平铺水印的效果图是这样的: 思路如下:1.获取页面最大高度和宽度。2.设置水印的一些基本参数,例如高度、宽度,间距,字体颜色之类的。...原创 2018-07-20 18:22:19 · 841 阅读 · 19 评论 -
eclipse报PermGen space问题解决办法
问题缘由 eclipse每次修改代码,自动重新编译,就报PermGen space的错误。试了网上的很多办法,都没有用。我把我有效的解决办法分享给大家。是什么 PermGen space:永久区域内存不足。解决办法修改eclipse的Run Configurations。(如果是debug模式,修改Debug Configurations。)在VM argument...原创 2018-08-04 12:13:00 · 1940 阅读 · 11 评论 -
RabbitMQ初识
rabbmitMQ几大概念介绍给大家:Broker:它提供一种传输服务,它的角色就是维护一条从生产者到消费者的路线,保证数据能按照指定的方式进行传输,。Exchange:消息交换机,它指定消息按什么规则,路由到哪个队列。 Queue:消息的载体,每个消息都会被投到一个或多个队列。 Binding:绑定,它的作用就是把exchange和queue按照路由规则绑定起来. Routi...原创 2018-08-10 09:12:40 · 166 阅读 · 11 评论 -
Dubbo
一 dubbo缓存 zookeeper宕掉,会从缓存中读取。 zookeeper会定期更新缓存。二 dubbo支持的容器spring容器,logj容器, jetty容器三 dubbo多协议支持RMIHESSIAN/webService/http/thrift/dubbo四 多注册中心五 集群模式将服务多服务器部署,进行负载...原创 2019-07-21 19:53:18 · 576 阅读 · 3 评论