
Java程序开发
文章平均质量分 75
分享Java程序开发的案例与异常问题解决方案
镰刀韭菜
视野,意志,品格;目标,坚持,实践
展开
-
【Java】5分钟读懂Java虚拟机架构
本文阐述了JVM的构成和组件。每个Java开发人员都知道字节码经由JRE(Java运行时环境)执行。但他们或许不知道JRE其实是由Java虚拟机(JVM)实现,JVM分析字节码,解释并执行它。作为开发人员,了解JVM的架构是非常重要的,因为它使我们能够编写出更高效的代码。本文中将快速介绍Java中的JVM架构和JVM的各个组件。原创 2023-12-16 08:00:00 · 1195 阅读 · 0 评论 -
Java学习笔记(第10天)
表格是最常用的数据统计组件之一,是由多行和多列组成的二维表形式,在Swing中的JTable类实现表格。javax.swing.JTable类创建的对象是一个表格,可以使用以下两种方式创建表格。(1)使用列名数组的数据数组创建表格,使用JTable类的构造方法可以根据指定的列名数组和数据数组创建表格,JTable(Object[][] rowData,Object[] columnNames)。(...原创 2018-03-01 17:47:02 · 1387 阅读 · 0 评论 -
Java学习笔记(第7天)
Java中的集合对象就像是一个容器,它用来存放Java类的对象。java.util包中提供了一些集合类,这些集合类又被称为容器。集合类与数组的区别是:数组的长度是固定的,集合的长度是可变的;数组用来存放基本类型,集合用来存放对象的引用。常用的集合有List集合、Set集合和Map集合。List与Set继承了Collection接口。List集合包括List接口以及List接口的所有实现类。List...原创 2018-02-26 16:14:12 · 451 阅读 · 0 评论 -
Java Web学习笔记——JSP标准标签库
JSTL(JSP Standard Tag Library,JSP标准标签库)是一个开放源代码的标签组件,下载的JSTL是以jar包的形式存在的,直接将此jar包保存在WEB-INF\lib目录中,之后可以直接通过WINRAR工具打开此jar包,并且将其中META-INF文件夹中的几个主要标签配置文件(c.tld、fmt.tld、fn.tld、sql.tld、x.tld)保存在WE...原创 2018-05-16 12:16:31 · 422 阅读 · 0 评论 -
【Java EE】Java设计模式
Java 设计模式目标:学习反射技术,掌握反射的基本概念学习动态代理和责任链模式,以及拦截器的概念掌握观察者模式掌握工厂和抽象工厂模式掌握Builder(构建)模式反射技术Java反射技术应用广泛,它能够配置:类的全限定名、方法和参数,完成对象的初始化,甚至是反射某些方法。Java的反射内容繁多,包括对象构建、反射方法、详解、参数、接口等。在Java中,反射是通过包java....原创 2020-02-13 00:36:50 · 279 阅读 · 0 评论 -
Java学习笔记(第1天)
Java对大小写字母很敏感;Java源代码文件的名称必须和定义的类或接口名称一致,然后添加“.java”后缀;Java源程序需要编译成字节码才能够被识别,这需要使用JDK的“javac.exe”命令,输入命令时,后缀“.exe”可以省略;输入“java HelloJava”命令运行Java程序时,运行的是经过编译的“java.class”文件,但是不需要输入“.class”后缀名;透视图与视图:透...原创 2018-02-22 09:23:31 · 438 阅读 · 1 评论 -
java学习笔记(第4天)
继承可以理解为现实世界中的“是一种(is-a)”关系。实现继承是通过extends关键字在声明类的时候指定其父类:[修饰符] class 类名 extends 父类名继承某个父类而生产新的子类不但拥有父类的变量与方法,还可以为子类添加新的成员变量和成员方法,以增强父类的功能,也就是所谓的扩展,甚至还可以在子类中为父类的某个方法定义多个重载方法,增加该类的灵活性。子类可以重写父类的某个方法或者说是覆...原创 2018-02-23 21:12:49 · 371 阅读 · 0 评论 -
Java学习笔记(第6天)
Java语言使用多线程实现一个程序中多个任务同时运行。线程运行与进程中,进程是操作系统运行的各种应用程序。一个进程中可以包含一个或多个线程,一个线程就是程序中执行部分的分支。使用多线程就可以开辟另一个执行分支去完成这些耗时的操作,而当作分支,即当前主线程可以继续执行其他业务代码。线程具有生命周期,它包含3个状态,分别为出生状态、就绪状态和运行状态。出生状态就是用户在创建线程时处于的状态,在用户使用...原创 2018-02-25 17:57:19 · 488 阅读 · 0 评论 -
Java Web学习笔记(4)
<jsp:setProperty>标签标示为JavaBean中的属性设置内容,其中一共有两个属性。 name:对应着<jsp:useBean>中声明的id属性,表示使用指定的JavaBean property:表示要操作的属性,“*”表示自动匹配取得属性:<jsp:getProperty>,自动调用JavaBean中的getter()方法。<j...原创 2018-05-13 16:41:23 · 269 阅读 · 0 评论 -
Java Web学习笔记(2)
JSP内置对象JSP中的9个内置对象:pageContext:javax.servlet.jsp.PageContext:JSP的页面容器request:javax.servlet.http.HttpServletRequest:得到用户的请求信息response:javax.servlet.http:HttpServletResponse:服务器向客户端的回应信息session:javax.se...原创 2018-05-09 20:03:40 · 276 阅读 · 0 评论 -
Java学习笔记(第3天)
面向对象最关键的两个词汇是类与对象,实质上可以将类看作是对象的抽象,它定义了对象所具有的属性和方法。类是用来定义一组对象共同具有的状态和行为的模板,而对象是现实世界中个体或事物的抽象表示,并封装了它们的属性和行为。类声明了这些共同的特性,对象(也就是类的实例)在使用之前,必须定义该对象的类,知道了对象的类型才能够访问它的属性和行为。在Java语言中,对象的行为被定义成类的方法,对象的属性定义为类成...原创 2018-02-23 15:26:48 · 466 阅读 · 0 评论 -
Java学习笔记(第2天)
Java语言是面向对象的程序设计语言,Java程序的基本组成单元就是类,类体中又包含属性与方法两部分。每一个Java本地应用程序都必须包含一个main方法,含有main方法的类称之为主类。一个Java应用程序是由若干个类组成的,Java类必须执行导入才能够被当前类使用,在Java语言中可以通过import关键字导入相应的类。通常将类的属性称之为类的全局变量(或成员变量),将方法中的属性称之为局部变...原创 2018-02-22 19:15:44 · 345 阅读 · 0 评论 -
Java学习笔记(第5天)
窗体是一个组件容器,所有组件都必须有窗体去承载它们。JFrame是Swing技术中的窗体类,在开发应用程序时可以通过集成java.swing.JFrame类创建一个窗体,在这个窗体中添加组件,同时为组件设置事件监听器,处理一些最大化、最小化、关闭、调整大小等窗体事件。定义自己的窗体的最常用方法就是集成JFrame类并扩展为自己的窗体类,这个扩展的窗体类应该定义好窗体的界面和时间监听以及所有业务处理...原创 2018-02-24 20:58:04 · 724 阅读 · 0 评论 -
MyEclipse2014配置Git
默认情况下MyEclipse2014已经集成了Git插件,这里只需要简单配置即可首先设置SSH2Windows ->Perference保存公钥和私钥,默认情况下的路径在C盘Users\用户名\.ssh目录下:用记事本打开id_rsa.pub文件,全部选中并复制第二步,配置GitHub 的SSH和GPG keys选中New SSH keys保存。第三步,将MyEclipse2014中的项目导...原创 2018-05-12 22:18:20 · 3883 阅读 · 0 评论 -
Java Web学习笔记——Tomcat数据源和JSP标签编程
JDBC操作原理: (1)加载数据库驱动程序,数据库驱动程序通过classpath配置。 (2)通过DriverManager类取得数据库连接对象 (3)通过Connection实例化PreparedStatement对象,编写SQL命令操作数据库 (4)数据库属于资源操作,操作完成后要关闭数据库以释放资源。 数据库连接时需要建...原创 2018-05-14 22:32:05 · 359 阅读 · 0 评论 -
Java学习笔记(第9天)
网络程序设计是指编写与其他计算机进行通信的程序。Java已经将网络程序所需要的东西封装成不同的类,只要创建这些类的对象,使用相应的方法,就可以编写出高质量的网络通信程序。TCP/IP模式是一种层次结构,共分为4层,分别为应用层、传输层、互联网层和主机到网络层。各层实现特定的功能,提供特定的服务和访问接口,并具有相对的独立性。TCP协议是一种以固定连接为基础的协议,它提供两条计算机间可靠的数据传输。...原创 2018-02-28 16:40:15 · 666 阅读 · 0 评论 -
HTTP状态码说明
1. 2xx 请求成功2. 3xx 重定向3. 4xx 客户机中出现的错误 403 禁止——即使有授权也不需要访问 404 服务器未找到指定的资源,文档不存在4. 5xx 服务器中出现的错误 500 服务器内部错误——因为意外情况,服务器不能完...原创 2018-05-07 12:33:41 · 479 阅读 · 0 评论 -
Java Web学习笔记——Ajax技术
Ajax技术主要完成页面的局部刷新,通过Ajax技术可以使之前的应用程序在每次提交时不用进行页面的整体刷新,从而提升操作的性能,在Ajax中主要是依靠XMLHttpRequest对象完成操作。 Ajax是一门综合性的技术,主要应用包含了HTML、JavaScript、XML、DOM、XMLHttpRequest等页面技术。XMLHttpRequest对象: ...原创 2018-05-16 14:53:31 · 341 阅读 · 0 评论 -
Java学习笔记(第8天)
java.io包中封装了用于输入/输出的类。File类是I/O包中唯一代表磁盘文件本身的。通过File实例可以获取文件本身的一些信息,还可以实现文件的创建、删除和重命名等操作。有三种方法创建一个File对象:new File(String pathName);new File(String parent,String child);new File(File parent,String child...原创 2018-02-27 16:44:30 · 276 阅读 · 0 评论 -
【Java】Java8日期处理实践
Java8日期处理实践Java8日期API简介Java 8 推出了全新的日期时间API,在教程中我们将通过一些简单的实例来学习如何使用新API。新API基于ISO标准日历系统,java.time包下的所有类都是不可变类型而且线程安全。示例代码package util;import java.time.*;import java.time.format.DateTimeFormatt...原创 2020-02-11 20:47:44 · 286 阅读 · 0 评论 -
Java Web学习笔记——Servlet程序开发
Servlet程序开发 Servlet是使用Java语言编写的服务器端程序,生成动态的Web页。Servlet主要运行在服务器端,并由服务器调用执行,是一种按照Servlet标准开发的类。Servlet程序是Java对CGI程序的实现,采用了多线程的处理方式。可以处理客户端传来的HTTP请求,并返回一个响应。 Servlet程序处理的步骤如下: (1)客户端(如Web浏览器)...原创 2018-05-13 20:46:16 · 478 阅读 · 0 评论 -
【Java工具】Java反编译工具:JAD的下载与简单使用
Java反编译工具:JAD的下载与使用JAD的使用Jad是可以将Java中的.class文件反编译成对应的.java文件的一个工具。下载地址:https://varaneckas.com/jad/添加链接描述,然后将jad.exe放在JDK的bin目录里即可。JAD的使用一个用于反编译的测试类:package com.seckill.secondkill.Utils;import java.util.HashMap;import java.util.Map;public class Te原创 2021-09-26 21:32:51 · 7391 阅读 · 0 评论 -
【Java EE】Spring MVC开发流程详解
Spring MVC开发流程详解有了上文的初始化配置,开发Spring MVC流程并不困难。开发Spring MVC程序,需要掌握Spring MVC的组件和流程,所以开发过程中也会贯穿着Spring MVC的运行流程。在目前的开发过程中,大部分都会采用注解的开发方式。使用注解在Spring MVC中十分简单,主要是以一个注解@Controller标注,一般只需要通过扫描配置,就能够将其扫...原创 2020-04-13 17:59:43 · 664 阅读 · 0 评论 -
【Java EE】Spring MVC的初始化
SpringMVC基础入门1.SpringMVC介绍SpringMVC是一款主流的Web MVC模式开发框架。跟Struts框架类似。本文通过案例介绍SpringMVC的入门知识。2.案例介绍本案例是一个员工CRUD demo。用IDEA编写,基于maven,使用SpringMVC框架,视图采用Freemarker技术,数据库使用MySQL,用Hibernate4存储数据。...原创 2020-04-13 16:03:00 · 541 阅读 · 0 评论 -
【Java EE】深入Spring数据库事务管理
深入Spring数据库事务管理Spring数据库事务管理器的设计配置事务管理器使用Java配置方式实现Spring数据库事务编程式事务声明式事务Transactional的配置项使用XML进行配置事务管理器事务定义器声明式事务的约定流程数据库的相关知识数据库事务ACID特性丢失更新隔离级别选择隔离级别和传播行为选择隔离级别传播行为在Spring+MyBatis组合...原创 2020-04-08 01:05:27 · 467 阅读 · 0 评论 -
【Java EE】Spring和数据库编程
Spring和数据库编程Spring最重要的功能就是操作数据。在Java互联网项目中,数据大部分存储在数据库和NoSQL中,数据库的编程时互联网编程的基础,Spring为开发者提供了JDBC的模板模式,那就是JdbcTemplate,它可以简化许多代码的编程,但是在实际中并不常用。对于持久层,工作中更多的时候用的时Hibernate框架和MyBatis框架,对于Hibernate框架,Spri...原创 2020-04-05 00:50:52 · 481 阅读 · 0 评论 -
【JavaEE】面向切面编程
面向切面编程一切从Spring AOP的底层技术——动态代理开始原创 2020-03-31 23:17:05 · 676 阅读 · 0 评论 -
【Spring Boot】Spring Boot的Security安全控制
Spring Boot的Security安全控制Spring Security是一个强大且高度可定制的身份验证和访问控制框架,完全基于Spring的应用程序的标准,Spring Security为基于JAVA EE的企业应用程序提供了一个全面的安全解决方案。Spring Security是什么?Spring Security提供了一组可以在Spring应用上下文中配置的Bean,充分利用了S...原创 2020-03-23 20:57:48 · 993 阅读 · 0 评论 -
【Java EE】装备Spring Bean
装配Spring Bean依赖注入的三种方式实现IoC容器的方式分为两大类,一类是依赖查找,依赖查找是通过资源定位,把对应的资源查找回来;另一类是依赖注入,而Spring主要使用的是依赖注入。一般而言,依赖注入可以分为3种方式:构造器注入setter注入接口注入构造器注入和setter注入是主要的方式,而接口注入是从别的地方注入的方式,比如在Web工程种,配置的数据源往往是通过服务器...原创 2020-03-10 22:49:54 · 430 阅读 · 0 评论 -
【Java EE】Spring IoC的概念
Spring IoC的概念Spring框架是Java世界最为成功的框架,它最为核心的理念是IoC(控制反转)和AOP(面向切面编程)。Spring的概述在Spring中,它会认为一切Java类都是资源,而资源都是Bean,容纳这些Bean的是Spring所提供的IoC容器,所以Spring是一种基于Bean的编程。Spring IoC概述主动创建对象被动创建对象Spring IoC阐...原创 2020-03-05 01:16:43 · 401 阅读 · 0 评论 -
【Java EE】插件
插件插件接口插件的初始化插件的代理和反射设计常用的工具类——MetaObject插件的开发过程和实例确定需要拦截的签名1. 确定需要拦截的对象2. 拦截方法和参数实现拦截方法配置和运行插件实例——分页插件总结...原创 2020-02-23 11:31:01 · 342 阅读 · 0 评论 -
【Java EE】MyBatis的解析和运行原理
MyBatis的解析和运行原理构建SqlSessionFactory过程构建Configuration构建映射器的内部组成构建SqlSessionFactorySqlSession运行过程映射器(Mapper)的动态代理SqlSession下的四大对象Executor——执行器StatementHandler——数据库会话器ParameterHandler——参数处理器Res...原创 2020-02-22 22:49:36 · 382 阅读 · 0 评论 -
【Java EE】动态SQL
动态SQL概述MyBatis的动态SQL包括以下几种元素:元素作用备注if判断语句单条件分支判断choose(when, otherwise)相当于Java种的switch和case语句多条件分支判断trim(where, set)辅助元素,用于处理特定的SQL拼装问题,比如去掉多余的and、or等用户处理SQL拼装的问题foreach循...原创 2020-02-21 21:11:16 · 663 阅读 · 0 评论 -
【Java EE】映射器
映射器概述select元素——查询语句简单的select元素的应用自动映射和驼峰映射传递多个参数使用resultMap映射结果集分页参数RowBoundsinsert元素——插入语句概述简单的insert语句的应用主键回填自定义主键update元素和delete元素sql元素参数概述存储过程参数文件特殊字符串的替换和处理(#和$)resultMap元素res...原创 2020-02-21 15:41:46 · 794 阅读 · 0 评论 -
【Java EE】MyBatis配置
MyBatis配置概述properties属性property子元素使用properties文件使用程序传递方式传递参数总结settings设置typeAliases别名系统定义别名自定义别名typeHandler类型转换器系统定义的typeHandler自定义typeHandler枚举typeHandler文件操作ObjectFactory(对象工厂)插件en...原创 2020-02-19 14:16:59 · 708 阅读 · 0 评论 -
【Java EE】MyBatis核心组件
MyBatis核心组件持久层的概念和MyBatis的特点持久层可以将业务数据存储到磁盘,具备长期存储能力。一般执行持久化任务的都是数据库系统,缺点是比较慢。Java互联网应用可以通过MyBatis框架访问数据库,其优势在于:不屏蔽SQL,可以更精确地定位SQL语句,对其进行优化和改造;提供强大、灵活的映射机制,提供动态SQL的功能,允许根据不同条件组装SQL;使用Mapper的接口编程...原创 2020-02-14 02:02:04 · 330 阅读 · 0 评论 -
【Java EE】认识SSM框架和Redis
认识SSM框架和Redis目标:了解Spring IoC和Spring AOP的基础概念了解MyBatis的特点了解Spring MVC的特点了解为什么要使用NoSQL(Redis)及Redis的优点掌握SSM和Redis的基本结构框图和各种技术的作用Spring框架Spring框架是Java应用最广的框架。它的理念包括IoC(控制反转)和AOP(面向切面编程)。Spring...原创 2020-02-04 00:43:43 · 444 阅读 · 0 评论 -
【Java多线程编程实战案例】单例模式
单例模式单例模式所要实现的目标非常简单:保持一个类有且仅有一个实例。注意,实现一个类有且仅有一个实例的前提是这个类是一个Java虚拟机实例中的一个Class Loader所加载的类。考虑到Java虚拟机的Class Loader机制:同一个类可以被多个Class Loader加载,这些Class Loader各自创建这个类的类实例。因此,如果有多个Class Loader加载同一个类,那么所谓的...原创 2020-01-15 00:24:35 · 287 阅读 · 1 评论 -
【Java多线程编程实战案例】分布式系统的负载均衡模块的设计与实现
分布式系统的负载均衡模块的设计与实现应用场景某分布式系统在其业务处理过程中需要通过网络连接调用下游部件提供的服务,即发送请求给下游部件。下游部件是一个集群环境(即多台主机对外提供相同的服务)。因此,该系统调用其下游部件服务的时候需要进行负载均衡控制,即保证下游部件的各台主机上接收到的请求数分布均匀(统计意义上的均匀)。场景分析该系统在调用其下游部件时的负载均衡模块需要在不重启应用程序、服务...原创 2020-01-12 22:36:08 · 565 阅读 · 0 评论 -
【Java多线程编程实战】Java线程同步机制
Java线程同步机制简介线程安全问题的产生是由于多线程应用程序缺乏某种东西——线程同步机制。线程同步机制是一套用于协调线程间的数据访问(Data access)及活动(Activity)的机制,该机制用于保障线程安全以及实现这些线程的共同目标。广义上看,Java平台提供的线程同步机制包括锁、volatile关键字、final关键字、static关键字以及一些相关的API,如Object.wa...原创 2020-01-12 18:40:16 · 567 阅读 · 0 评论