Java
文章平均质量分 95
Richard_i
接纳自己
展开
-
Nginx IP属地
通过HttpServletRequest得到的IP统一: 127.0.0.1因为使用了Nginx反射代理,修改Nginx的配置并重载Nginx即可more项目中使用request.getRemoteAddr();对来源IP进行了判断,相同IP地址半小时只能上传一次数据,我测试的时候本机访问次数没有这么多次,而且这个数据初次访问时间是项目正式部署上线的时间,是生产环境产生的日志,生产环境怎么会拿到本机地址呢?经过一番研究: 在nginx配置文件nginx.conf。原创 2024-05-18 00:18:06 · 1023 阅读 · 0 评论 -
SpringBoot 内存泄漏OOM,排查思路
整个内存分配的流程如上图所示。MCC扫包的默认配置是扫描所有的JAR包。在扫描包的时候,Spring Boot不会主动去释放堆外内存,导致在扫描阶段,堆外内存占用量一直持续飙升。当发生GC的时候,Spring Boot依赖于finalize机制去释放了堆外内存;但是glibc为了性能考虑,并没有真正把内存归返到操作系统,而是留下来放入内存池了,导致应用层以为发生了“内存泄漏”。所以修改MCC的配置路径为特定的JAR包,问题解决。原创 2022-10-11 13:45:48 · 1484 阅读 · 0 评论 -
TreeSet
TreeSet概念treeSet 被称为可排序集合无序不可重复,可以自动排序,没有下标底层是TreeMap数据结构,TreeMap底层是二叉树放到TreeSet集合中的元素,等于放到TreeMap集合中的key部分/** * 注意:TreeSet可以自动排序自定义类型吗? * 不可以,会出现类型转换异常 ClassCaseException * 实现自定义类排序,需实现Comparable接口并且编写排序规则 */原创 2020-11-21 14:29:49 · 241 阅读 · 0 评论 -
将eclipse中的project配置到Tomcat
和MyEclipse不一样,在Eclipse中做的Web项目默认是不支持将项目发布到Web服务器上的,会发布到工作空间的某个目录,因此无法在外部启动Tomcat来运行Web项目,只有打开Eclipse中的服务器,才能运行Web项目。所以要对Eclipse进行修改,才能将做好的项目,发布到Tomcat服务器上,发布到服务器上的Webapps文件夹下。 在Eclipse中,默认会原创 2016-04-22 14:56:06 · 1848 阅读 · 0 评论 -
Struts2连接数据库实现登陆(验证码)、注册
实现登陆、注册登陆带验证码环境eclipse (Java EE)+ Tomcat + MySQLStruts2 需要配置Struts2,首先修改web.xml,在中加入: struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter原创 2016-04-23 23:23:23 · 2505 阅读 · 0 评论 -
面向对象的三个基本特征
面向对象的三个基本特征(讲解)面向对象的三个基本特征是:封装、继承、多态。封装封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。继承面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能转载 2016-07-24 22:10:04 · 483 阅读 · 0 评论 -
如何创建并运行java线程
Java线程类也是一个object类,它的实例都继承自java.lang.Thread或其子类。 可以用如下方式用java中创建一个线程:1Tread thread = new Thread();执行该线程可以调用该线程的start()方法:1thread.start();原创 2016-09-02 11:28:12 · 499 阅读 · 0 评论 -
谈谈MVC模式
1.如何设计一个程序的结构,这是一门专门的学问,叫做"架构模式"(architectural pattern),属于编程的方法论。MVC模式就是架构模式的一种,它对我的启发特别大。我觉得它不仅适用于开发软件,也适用于其他广泛的设计和组织工作。下面是我对MVC模式的一些个人理解,不一定正确,主要用来整理思路。2.MVC是三个单词的首字母缩写,它们是Model(原创 2016-09-02 11:33:35 · 471 阅读 · 0 评论 -
Struts1 与 Struts2 的比较
Action 类: ? Struts1要求Action类继承一个抽象基类。Struts1的一个普遍问题是使用抽象类编程而不是接口。 ? Struts 2 Action类可以实现一个Action接口,也可实现其他接口,使可选和定制的服务成为可能。Struts2提供一个ActionSupport基类去实现常用的接口。Action接口不是必须的,任何有execute标识的PO原创 2016-09-02 17:08:27 · 448 阅读 · 0 评论 -
String、StringBuffer、StringBuilder的区别
String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常原创 2016-09-03 12:18:24 · 406 阅读 · 0 评论 -
(学生信息管理系统)进销存管理系统--员工管理篇
进销存管理系统是企业的循环系统,是整个企业生产经营活动的物质基础。企业的生产经营活动,从材料的采购、产品的生产加工到产品的销售等等,从一定意义上讲,都是物料的转换和流动的过程。进销存管理系统的运作和效率直接影响着企业的经济效益。效易王从整个企业物流的视角出发,实现了库存、采购和销售的物流的整合,并且和生产、财务等子系统集成。进销存管理系统帮助企业合理配置物流资源,动态控制物流动向,有效地保障生产经原创 2016-05-15 16:27:11 · 1616 阅读 · 0 评论 -
struts2验证码登陆实现
首先是生成随机验证码图片的action:package actions;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.awt.image.BufferedImage;import java.io.ByteArrayInputStream;import java.io.原创 2016-04-13 21:58:20 · 7331 阅读 · 7 评论 -
eclipse搭建WEB
1、JDK安装与配置 ● 安装: 直接运行下载的JDK安装文件jdk-7u45-windows-i586.exe,按照提示指引进行安装。其中中途有选择JRE的安装,也一并安装了。补充说明:JDK与JRE的关系 JDK是Java的开发平台,在编写Java程序时,需要JDK进行编译处理;JRE是Java程序的运行环境,包含了JVM的实现 及Java核心类库,编译后的Java程序必须使用JR原创 2015-10-30 13:56:37 · 730 阅读 · 0 评论 -
CSS实现Loading加载动画
优秀的前端工程师总是优先考虑用CSS替代图片:基本思路是创建8个圆形div,绝对定位排列成圆圈,然后,依次通过opacity属性更新透明度,就得到一个loading的效果图。和GIF相比,CSS实现的好处主要在于,对于不同背景颜色,该动画都是完美的,还可以用CSS轻松实现阴影、发光等特效,而GIF虽然支持透明色,但创建时选择的背景色和实际背景色不一致会导致有明显的毛边,而且翻译 2016-03-04 01:11:05 · 1372 阅读 · 0 评论 -
The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path表头报错解决
用eclipse做jsp文件,自动创立的文件表头出现这个报错,应该怎么处理?JSP页面顶端出现“红色”的报错信息:The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path。原来Javaweb工程类中没有添加Tomcat运行时相关类导致。下面是具体的解决方法:1、右击web工程-》原创 2016-03-29 19:37:01 · 965 阅读 · 0 评论 -
Java命名规则
标识符类型命名规则例子包(Packages)一个唯一包名的前缀总是全部小写的ASCII字母并且是一个顶级域名,通常是com,edu,gov,mil,net,org,或1981年ISO 3166标准所指定的标识国家的英文双字符代码。包名的后续部分根据不同机构各自内部的命名规范而不尽相同。这类命名规范可能以特定目录名的组成来区分部门(department),项目(proje原创 2016-01-14 04:08:11 · 626 阅读 · 0 评论 -
linux下安装配置JDK,详细步骤图文
1、复制jdk到安装目录(1)假设jdk安装文件在桌面,我们指定的安装目录是:/usr/local/java 。可是系统安装后在/usr/local下并没有java目录,这需要我们去创建一个java文件夹,如图(1) (2)切换到桌面下,执行复制,如图(2) 2、安装jdk(1)切换到root用户下,如图(3)原创 2016-03-30 00:24:17 · 6603 阅读 · 1 评论 -
在linux中安装MySQL(Ubuntu)
目录MySQL在Windows中安装MySQL在Linux Ubuntu中安装通过命令行客户端访问MySQL修改MySQL服务器的配置新建数据库并设置访问账号改变数据存储位置1. MySQL在Windows中安装在Windows系统上安装MySQl数据库是件非常简单的事情,下载压缩包,解压即可。下载地址:http://dev.mysql.com/do原创 2016-04-01 23:20:35 · 893 阅读 · 0 评论 -
数据库系统原理设计--论坛系统
论坛信息管理系统 摘要:随着科学技术的发展,基本上所有的具有一定数量数据的机构都 开始使用计算机数据库来管理。现如今网络盛行,BBS 论坛已成为人们生活 中的一种信息交流渠道,它通过在计算机上运行服务软件,允许用户使用终端 程序通过电话调制解调器拨号或者 Internet 来进行连接,执行下载数据或程 序、上传数据、阅读新闻、与其他用户交换消息等功能。 本文主要介绍利用 S原创 2016-04-09 16:08:49 · 5438 阅读 · 0 评论 -
Struts2的There is not Action mapped for namespace [/] 错误
错误原因让人啼笑皆非……重点内容**There is no Action mapped for namespace [/] and action name [test] associated with context path [/test]. - [unknown location] at com.opensymphony.xwork2.DefaultActionProxy.prepa原创 2016-04-13 17:36:47 · 783 阅读 · 0 评论 -
int和Integer的区别
1.int是基本的数据类型; 2.Integer是int的封装类; 3.int和Integer都可以表示某一个数值; 4.int和Integer不能够互用,因为他们两种不同的数据类型; 举例说明 ArrayList al=new ArrayList(); int n=40; Integer nI=new Integer(n); al.add(n);//不可以 al.a原创 2015-12-06 15:12:35 · 618 阅读 · 0 评论