Java学习第七篇:与运行环境交互】的更多相关文章

目录 一.与用户互动 1.main方法形参 2.使用Scanner类获取输入 3.使用BufferedReader类获取输入 二.常用类 1.System类和Runtime类 2.String, StringBuilder和StringBuffer类 3.Math类 4.Random和ThreadLocalRandom类 5.BigDecimal类 6.Calendar类 三.正则表达式 1.正则表达式使用查询表 2.使用正则表达式 3.程序实例 正文 一.与用户互动 1.main方法的形参 m…
从.Net到Java学习系列目录 场景描述:我们在项目中使用缓存通常都是先检查缓存中是否存在,如果存在直接返回缓存内容,如果不存在就直接查询数据库然后再缓存查询结果返回.这个时候如果我们查询的某一个数据在缓存中一直不存在,就会造成每一次请求都查询DB,这样缓存就失去了意义,在流量大时,可能DB就挂掉了. 穿透:频繁查询一个不存在的数据,由于缓存不命中,每次都要查询持久层.从而失去缓存的意义. 常用解决办法:①用一个bitmap和n个hash函数做布隆过滤器过滤没有缓存的键.②持久层查询不到就缓存…
Java学习之反射篇 0x00 前言 今天简单来记录一下,反射与注解的一些东西,反射这个机制对于后面的java反序列化漏洞研究和代码审计也是比较重要. 0x01 反射机制概述 Java反射是Java非常重要的动态特性,通过使用反射我们不仅可以获取到任何类的成员方法.成员变量.构造方法等信息,还可以动态创建Java类实例.调用任意的类方法.修改任意的类成员变量值等.Java反射机制是Java语言的动态性的重要体现,也是Java的各种框架底层实现的灵魂. 0x02 Java反射 Java反射操作的是…
Java学习之注解篇 0x00 前言 续上篇文章,这篇文章就来写一下注解的相关内容. 0x01 注解概述 Java注解(Annotation)又称Java标注,是JDK5.0约会的一种注释机制. 和Javadoc不同,Java标注可以通过反射获取标注内容.在编译器生成类文件时,标注可以被嵌入到字节码中. Java虚拟机可以保留注释内容,在运行时可以获取到注释内容.当然它也支持自定义Java注释. 它是JDK1.5及以后版本引入的一个特性,与类.接口.枚举是在同一个层次.它可以声明在包.类.字段.…
从.Net到Java学习系列目录 通过前面10篇文章的学习,相信我们对SpringBoot已经有了一些了解,那么如何来验证我们的学习成果呢?当然是通过做项目来证明啦!所以从这一篇开始我将会对之前自己做的.net项目用java来重写.这一篇,我们来现实登录模块. 一提到登录,我们首先想到的基本的功能点就有如下: 输入:用户名.密码.验证码. 登录成功后,跳转到后台.如果未登录直接访问后台,将会跳转到登录页面. 这里暂不考虑复杂的登录实现. 技术选型,沿用前面用到的知识点.那么这里较之于之前的文章,…
前言:一直以来想学习与实践一下敏捷开发,之前项目虽说口口声声我们项目是敏捷开发,其实很扯. 敏捷开发如果有持续集成.持续部署的支持,那样开发.测试.运维将节省不少精力. 此系列博客只为记录CI/CD的实践与学习: 一.PHP运行环境的准备(centos7.4下安装docker环境搭建 PHP7.1 + MySQL5.7环境,openresty1.13.6.1做代理服务器) 服务器环境:阿里云ECS 操作系统:centos7.4 1. 安装docker https://help.aliyun.co…
Java学习之jackson篇 0x00 前言 本篇内容比较简单,简单记录. 0x01 Json 概述 概述:JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式.它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据.简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言. 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率. 这里复制了一段百度百…
在写这篇博客之前,我想对自己进行简单概括:我从事软件开发工作已经三年多了,并且一直在从事.NET相关项目的开发.为什么突然间想学习Java呢?有以下几个原因: 1. 开发程序三年多来,已经对.NET相关体系完成了基本掌握,但是还不是炉火纯青的那种,我不想一直忙碌的奔跑,想停下来看看Java这位与.NET势均力敌的"大腕"的精妙之处,比较两者之间各自的优势与应用领域,以便为以后软件架构师(主要在扩展知识体系而非语言)做一定准备: 2. Java更加需要注重个人思维解决问题,而.NET却提…
      SystemServer进程是zygote孵化出的第一个进程,该进程是从ZygoteInit.java的main函数中调用startSystemServer()开始的.与启动普通进程的差别在于:类zygote为启动SystemServer提供专门的函数startSystemServer(),而不是标准的forAndSpecilize函数.同时,SystemServer进程启动后首先要做的事情和普通进程也有所差别.     函数startSystemServer()的关键功能如下: (…
1. SystemServer进程      SystemServer进程是zygote孵化出的第一个进程,该进程是从ZygoteInit.java的main函数中调用startSystemServer()开始的.与启动普通进程的差别在于:类zygote为启动SystemServer提供专门的函数startSystemServer(),而不是标准的forAndSpecilize函数.同时,SystemServer进程启动后首先要做的事情和普通进程也有所差别.     函数startSystemS…
从.Net到Java学习系列目录 “学习java已经十天,有时也怀念当初.net的经典,让这语言将你我相连,怀念你......”接上一篇,本篇使用到的框架redis.FastJSON. 环境准备 安装redis,下图是我本机的redis绿色版,你可以网上自行下载安装,如果不知道如何怎么操作,可以移步到我的另一篇文章:ASP.NET Redis 开发 以管理员身份打开CMD窗口: C:\Users\zouqj>e: E:\>cd E:\Redis-x64- E:\Redis-x64->re…
从.Net到Java学习第一篇——开篇 环境:mysql5.7 新建mysql数据库demo,然后执行如下sql脚本进行数据表创建和数据初始化: -- ---------------------------- -- Table structure for `tb_area` -- ---------------------------- DROP TABLE IF EXISTS `tb_area`; CREATE TABLE `tb_area` ( `area_id` ) NOT NULL AU…
一.前言 AgileEAS.NET SOA 中间件平台是一款基于基于敏捷并行开发思想和Microsoft .Net构件(组件)开发技术而构建的一个快速开发应用平台.用于帮助中小型软件企业建立一条适合市场快速变化的开发团队,以达到节省开发成本.缩短开发时间,快速适应市场变化的目的. AgileEAS.NET SOA中间件平台提供了敏捷快速开发软件工程的最佳实践,通过提供大量的基础支撑功能如IOC.ORM.SOA.分布式体系及敏捷并发开发方法所支撑的插件开发体系,以及提供了大量的实体.数据模型设计生…
从.Net到Java学习系列目录 SpringBoot Session共享 修改pom.xml添加依赖 <!--spring session--> <dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session-data-redis</artifactId> </dependency> 添加配置类RedisSess…
从.Net到Java学习系列目录 刚学java不久,我有个疑问,为何用到的各种java开源jar包许多都是阿里巴巴的开源项目,为何几乎很少见百度和腾讯?不是说好的BAT吗? Spring Boot 的配置文件及多环境配置 Spring Boot 使用一个全局的配置文件 application.properties 或 application.yml,放置在 src/main/resources 目录或者类路径的 /config 下. Spring Boot 的全局配置文件的作用是对一些默认配置的…
下面以黑马程序员Java学院的学习路线为例,进行一次史无前例的剖析,我会采取连载的形式,细致的讲解零基础的人怎么学习Java.先看下Java在基础阶段的知识点路线图. 内容多吗?不要被吓到了,知识点剖析的比较细,所以看着比较多.不要害怕学不会,经过下面的详解,你就会明白这些知识点都是干嘛的了. Java基础 入门阶段,主要是培养Java语言的编程思想.了解Java语言的语法,书写规范等,掌握Eclipse.MyEclipse等开发工具,编写Java代码的能力.学完这个阶段你应该可进行小型应用程序…
1.JDK的下载和安装 jdk(java development kit)是java提供给我们的一套java开发工具,它必运行在JVM(java虚拟机)上,java语言的跨平台性就是利用java运行在JVM的不同平台版本实现的.比如JVM有linux版,windows版和mac版,我们写好的java程序不用修改就能运行在这三个不同的操作系统上,就是依靠这些平台对应的JVM. JDK的下载 java目前的最新版本是JDK-8u60,点击此链接下载java8.0,上面和下面的区别在于下面有api的使…
7.Eclipse环境搭建 在前几章,我们熟悉了DOS环境下编译和运行Java程序,对于大规模的程序编写,开发工具是必不可少的.Java的开发工具比较常用的是Eclipse.在接下来的教程中,我们将基于Eclipse开发工具进行程序的编写,编译和运行. 本章将介绍Eclipse的安装与基本操作.1.Eclipse安装及启动和安装普通的Windows程序一样,从官网下载后安装即可,在此不做详细介绍.我安装的是Eclipse OXYGEN安装完成后,在安装目录下有个文件:eclipse.exe和ec…
从.Net到Java学习系列目录 图片上传 Spring Boot中的文件上传就是Spring MVC中的文件上传,将其集成进来了. 在模板目录创建一个新的页面 profile/uploadPage.html <!DOCTYPE html> <html xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"/> <title>Tit…
Java笔记(提高篇)整理   主要内容: 面向对象 异常 数组 常用类 集合 IO流 线程 反射 Socket编程 1.  面向对象 1.1包 用来管理Java中的类, 类似文件夹管理文件一样. 因为同一个包中不能出现同名的类, 不同包中的类名可以相同, 所以包可以解决类名命名冲突问题 Java提供了若干的类, 分别放在不同的包中, 本阶段可能使用的包: Java.lang  是Java语言的基础包,系统自动导入,其中的类可直接调用,如System,String   Java.util    …
<JAVA遇见HTML——Servlet篇> Servlet 生命周期:Servlet 加载--->实例化--->服务--->销毁. init():在Servlet的生命周期中,仅执行一次init()方法.它是在服务器装入Servlet时执行的,负责初始化Servlet对象.可以配置服务器,以在启动服务器或客户机首次访问Servlet时装入Servlet.无论有多少客户机访问Servlet,都不会重复执行init(). service():它是Servlet的核心,负责响应客…
本部分介绍一些与运行环境相关的类 Sun为Java提供了丰富的基础类库,Java SE有三千多个基础类,要多敲代码,多练. 1.main()方法解析 如果一个程序总是按规定的流程运行,无需处理用户动作,也就是没有通过用户方面接受信息,但实际上大多数情况下,都需要与用户进行交互,这里先介绍从键盘获得用户输入,在图形用户接口(GUI)章节将会介绍用户通过GUI输入数据. 1.1 运行Java程序的参数 主方法解析 public static void main(String[] args){ } 主…
一.Java集合类框架 Java集合大致可分为Set.List和Map三种体系,其中Set代表无序.不可重复的集合:List代表有序.重复的集合:而Map则代表具有映射关系的集合:从Java5以后,Java又增加了Queue体系集合,代表一种队列集合的实现. Java的集合类主要由两个接口派生而来:Collection和Map,Collection和Map是Java集合框架的根接口,这两个接口又包含一些子接口或实现类.Collection和Map接口.子接口及其实现类的继承树如下图所示.对于Se…
集合框架 有事我们会需要一个能够动态的调整大小的数组,比如说要添加新员工但是数组已经满了,并且数组的大小是在定义的时候定死的,所以我们就需要一个能够动态调整大小的数组或者用链表解决,而java中提供了这样一组数组,名为集合类.(有事还是需要链表来解决一些问题的) 重要的就是linkedlist,arraylist,vector,hashset,hashmap 从图中可以看出Java的集合类主要有以下几种: List结构的集合类 —— ArrayList类,LinkedList类,Vector类,…
JAVA简介 Java的标准 Java是一种语言,一个平台包含JavaSE.JavaEE.JavaME三个版本 JavaSE标准版(属于Java的基础部分,可以开发C/S构架的桌面应用程序) JavaME迷你版(用于嵌入式设备的开发应用程序,如老手机,掌上电脑的软件) JavaEE企业开发版本(可以开发大型的B/S构架应用程序,就是开发在浏览器中运行的程序) JSP(Java Serve Pages Java服务页)是用于开发动态网页的一种技术,是属于JavaEE的一种技术,目前,最常用的三种动…
Java 简介 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称.由James Gosling和同事们共同研发,并在1995年正式推出. Java分为三个体系: JavaSE(J2SE)(Java2 Platform Standard Edition,java平台标准版) JavaEE(J2EE)(Java 2 Platform,Enterprise Edition,java平台企业版) JavaME(J2ME)(Java 2…
才疏学浅,只懂一点点前端的皮毛东西,对于项目运行环境的配置一无所知,今天简单记录一下! 前提:装好了jdk.maven.intellij idea. 1. file菜单->Open...打开从SVN拉下来的项目文件夹: 2. 打开最右侧菜单maven projects,选择其中的工具maven settings,打开settings窗口: 3. settings窗口右侧maven home directory,选中override选项后,选中装maven的那个目录: 4. 接下来还是此窗口,位于…
1.前面Android(java)学习笔记159提到Dalvik虚拟机启动初始化过程,就下来就是启动zygote进程: zygote进程是所有APK应用进程的父进程:每当执行一个Android应用程序,Zygote就会孵化一个子线程去执行该应用程序(系统内部执行dvz指令完成的)  Å特别注意:系统提供了一个app_process进程,它会自动启动ZygoteInit.java和SystemServer.java这两个类,app_process进程本质上是使用dalvikvm启动ZygoteIn…
1. 前面Android(java)学习笔记159提到Dalvik虚拟机启动初始化过程,就下来就是启动zygote进程: zygote进程是所有APK应用进程的父进程:每当执行一个Android应用程序,Zygote就会孵化一个子线程去执行该应用程序(系统内部执行dvz指令完成的)  特别注意:系统提供了一个app_process进程,它会自动启动ZygoteInit.java和SystemServer.java这两个类,app_process进程本质上是使用dalvikvm启动ZygoteIn…
类 同一个包(同一个目录),类的创建与调用 class Man{ String name; void GetMyName() { System.out.println(name); } } public class Person { public static void main(String arges[]) { Man m=new Man(); m.name="小黄"; m.GetMyName(); } } 运行结果 不同的包(不同目录目录),类的创建与调用 package Peo…